author | zautrix <zautrix> | 2004-07-03 16:33:12 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-07-03 16:33:12 (UTC) |
commit | e3b89230f065c48c84b48c88edb6eb088374c487 (patch) (unidiff) | |
tree | 162ea2ef909a6f82ccfcedf45d80d6c821174912 /kmicromail/libetpan/generic/mailfolder.c | |
parent | 2dd6ac0b2d24c91d35ce674a6c26351352df2b15 (diff) | |
download | kdepimpi-e3b89230f065c48c84b48c88edb6eb088374c487.zip kdepimpi-e3b89230f065c48c84b48c88edb6eb088374c487.tar.gz kdepimpi-e3b89230f065c48c84b48c88edb6eb088374c487.tar.bz2 |
Initial revision
Diffstat (limited to 'kmicromail/libetpan/generic/mailfolder.c') (more/less context) (show whitespace changes)
-rw-r--r-- | kmicromail/libetpan/generic/mailfolder.c | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/kmicromail/libetpan/generic/mailfolder.c b/kmicromail/libetpan/generic/mailfolder.c new file mode 100644 index 0000000..2ddc37d --- a/dev/null +++ b/kmicromail/libetpan/generic/mailfolder.c | |||
@@ -0,0 +1,96 @@ | |||
1 | #include "mailfolder.h" | ||
2 | |||
3 | #include "maildriver.h" | ||
4 | |||
5 | int mailfolder_noop(struct mailfolder * folder) | ||
6 | { | ||
7 | return mailsession_noop(folder->fld_session); | ||
8 | } | ||
9 | |||
10 | int mailfolder_check(struct mailfolder * folder) | ||
11 | { | ||
12 | return mailsession_check_folder(folder->fld_session); | ||
13 | } | ||
14 | |||
15 | int mailfolder_expunge(struct mailfolder * folder) | ||
16 | { | ||
17 | return mailsession_expunge_folder(folder->fld_session); | ||
18 | } | ||
19 | |||
20 | int mailfolder_status(struct mailfolder * folder, | ||
21 | uint32_t * result_messages, uint32_t * result_recent, | ||
22 | uint32_t * result_unseen) | ||
23 | { | ||
24 | return mailsession_status_folder(folder->fld_session, | ||
25 | folder->fld_pathname, result_messages, | ||
26 | result_recent, result_unseen); | ||
27 | } | ||
28 | |||
29 | int mailfolder_append_message(struct mailfolder * folder, | ||
30 | char * message, size_t size) | ||
31 | { | ||
32 | return mailsession_append_message(folder->fld_session, message, size); | ||
33 | } | ||
34 | |||
35 | int mailfolder_get_messages_list(struct mailfolder * folder, | ||
36 | struct mailmessage_list ** result) | ||
37 | { | ||
38 | int r; | ||
39 | struct mailmessage_list * msg_list; | ||
40 | unsigned int i; | ||
41 | |||
42 | r = mailsession_get_messages_list(folder->fld_session, &msg_list); | ||
43 | if (r != MAIL_NO_ERROR) | ||
44 | return r; | ||
45 | |||
46 | for(i = 0 ; i < carray_count(msg_list->msg_tab) ; i ++) { | ||
47 | mailmessage * msg; | ||
48 | |||
49 | msg = carray_get(msg_list->msg_tab, i); | ||
50 | msg->msg_folder = folder; | ||
51 | } | ||
52 | |||
53 | * result = msg_list; | ||
54 | |||
55 | return MAIL_NO_ERROR; | ||
56 | } | ||
57 | |||
58 | int mailfolder_get_envelopes_list(struct mailfolder * folder, | ||
59 | struct mailmessage_list * result) | ||
60 | { | ||
61 | return mailsession_get_envelopes_list(folder->fld_session, result); | ||
62 | } | ||
63 | |||
64 | int mailfolder_get_message(struct mailfolder * folder, | ||
65 | uint32_t num, mailmessage ** result) | ||
66 | { | ||
67 | mailmessage * msg; | ||
68 | int r; | ||
69 | |||
70 | r = mailsession_get_message(folder->fld_session, num, &msg); | ||
71 | if (r != MAIL_NO_ERROR) | ||
72 | return r; | ||
73 | |||
74 | msg->msg_folder = folder; | ||
75 | |||
76 | * result = msg; | ||
77 | |||
78 | return MAIL_NO_ERROR; | ||
79 | } | ||
80 | |||
81 | int mailfolder_get_message_by_uid(struct mailfolder * folder, | ||
82 | const char * uid, mailmessage ** result) | ||
83 | { | ||
84 | mailmessage * msg; | ||
85 | int r; | ||
86 | |||
87 | r = mailsession_get_message_by_uid(folder->fld_session, uid, &msg); | ||
88 | if (r != MAIL_NO_ERROR) | ||
89 | return r; | ||
90 | |||
91 | msg->msg_folder = folder; | ||
92 | |||
93 | * result = msg; | ||
94 | |||
95 | return MAIL_NO_ERROR; | ||
96 | } | ||