9 |
|
|
10 |
|
|
11 |
extern conn_t connpri, connaux; |
extern conn_t connpri, connaux; |
12 |
extern unsigned int options; |
extern opts_t opts; |
13 |
|
|
14 |
|
|
15 |
int action_delete(char *mesgs, char *args); |
int action_delete(char *mesgs, char *args); |
114 |
tok = strtok_r(NULL, " ", &m); |
tok = strtok_r(NULL, " ", &m); |
115 |
} |
} |
116 |
|
|
117 |
if (options & OPTION_EXPUNGE) |
if (opts.expunge) |
118 |
server_response(&connpri, imap_expunge(&connpri)); |
server_response(&connpri, imap_expunge(&connpri)); |
119 |
|
|
120 |
xfree(mcp); |
xfree(mcp); |
155 |
dm[1]))) == RESPONSE_TRYCREATE) |
dm[1]))) == RESPONSE_TRYCREATE) |
156 |
if (!server_response(&connpri, imap_create(&connpri, |
if (!server_response(&connpri, imap_create(&connpri, |
157 |
dm[1]))) { |
dm[1]))) { |
158 |
if ((options & OPTION_SUBSCRIBE)) |
if (opts.subscribe) |
159 |
server_response(&connpri, |
server_response(&connpri, |
160 |
imap_subscribe(&connpri, dm[1])); |
imap_subscribe(&connpri, dm[1])); |
161 |
r = copy_response(&connpri, |
r = copy_response(&connpri, |
206 |
|
|
207 |
r = greeting_response(&connaux); |
r = greeting_response(&connaux); |
208 |
|
|
209 |
if (options & OPTION_DEBUG) |
if (opts.debug) |
210 |
test(&connaux); |
test(&connaux); |
211 |
|
|
212 |
if (r == RESPONSE_BYE || check_capabilities(&connaux)) |
if (r == RESPONSE_BYE || check_capabilities(&connaux)) |
263 |
if (r == RESPONSE_NO) { |
if (r == RESPONSE_NO) { |
264 |
server_response(&connaux, |
server_response(&connaux, |
265 |
imap_create(&connaux, ndm)); |
imap_create(&connaux, ndm)); |
266 |
if ((options & OPTION_SUBSCRIBE)) |
if (opts.subscribe) |
267 |
server_response(&connaux, |
server_response(&connaux, |
268 |
imap_subscribe(&connaux, ndm)); |
imap_subscribe(&connaux, ndm)); |
269 |
} |
} |
279 |
xfree(date); |
xfree(date); |
280 |
|
|
281 |
fetch_response(&connpri, 0, 1, NULL); |
fetch_response(&connpri, 0, 1, NULL); |
282 |
tf = imap_fetch(&connpri, tok, options & OPTION_PEEK ? |
tf = imap_fetch(&connpri, tok, opts.peek ? |
283 |
"BODY.PEEK[HEADER]" : "BODY[HEADER]"); |
"BODY.PEEK[HEADER]" : "BODY[HEADER]"); |
284 |
do { |
do { |
285 |
r = fetch_response(&connpri, tf, 0, buf); |
r = fetch_response(&connpri, tf, 0, buf); |
289 |
socket_write(&connaux, "\r\n"); |
socket_write(&connaux, "\r\n"); |
290 |
|
|
291 |
fetch_response(&connpri, 0, 1, NULL); |
fetch_response(&connpri, 0, 1, NULL); |
292 |
tf = imap_fetch(&connpri, tok, options & OPTION_PEEK ? |
tf = imap_fetch(&connpri, tok, opts.peek ? |
293 |
"BODY.PEEK[TEXT]" : "BODY[TEXT]"); |
"BODY.PEEK[TEXT]" : "BODY[TEXT]"); |
294 |
do { |
do { |
295 |
r = fetch_response(&connpri, tf, 0, buf); |
r = fetch_response(&connpri, tf, 0, buf); |
383 |
tok = strtok_r(NULL, " ", &m); |
tok = strtok_r(NULL, " ", &m); |
384 |
} |
} |
385 |
|
|
386 |
if (options & OPTION_EXPUNGE) |
if (opts.expunge) |
387 |
server_response(&connpri, imap_expunge(&connpri)); |
server_response(&connpri, imap_expunge(&connpri)); |
388 |
|
|
389 |
xfree(mcp); |
xfree(mcp); |
407 |
|
|
408 |
m = mcp = xstrdup(mesgs); |
m = mcp = xstrdup(mesgs); |
409 |
|
|
410 |
snprintf(s, ARGS_LEN + 27 - 1, options & OPTION_PEEK ? |
snprintf(s, ARGS_LEN + 27 - 1, opts.peek ? |
411 |
"BODY.PEEK[HEADER.FIELDS (%s)]" : |
"BODY.PEEK[HEADER.FIELDS (%s)]" : |
412 |
"BODY[HEADER.FIELDS (%s)]", args); |
"BODY[HEADER.FIELDS (%s)]", args); |
413 |
|
|
422 |
r = fetch_response(&connpri, t, 0, hdrs); |
r = fetch_response(&connpri, t, 0, hdrs); |
423 |
|
|
424 |
if (*hdrs != '\0') { |
if (*hdrs != '\0') { |
425 |
if (options & OPTION_HEADERS) |
if (opts.headers) |
426 |
info("%s\n", hdrs); |
info("%s\n", hdrs); |
427 |
log_info(LOG_HEADER, hdrs); |
log_info(LOG_HEADER, hdrs); |
428 |
} |
} |
590 |
substitute_date(destmbox); |
substitute_date(destmbox); |
591 |
|
|
592 |
fetch_response(&connpri, 0, 1, NULL); |
fetch_response(&connpri, 0, 1, NULL); |
593 |
t = imap_fetch(&connpri, mesg, options & OPTION_PEEK ? |
t = imap_fetch(&connpri, mesg, opts.peek ? |
594 |
"BODY.PEEK[HEADER.FIELDS (DATE)]" : |
"BODY.PEEK[HEADER.FIELDS (DATE)]" : |
595 |
"BODY[HEADER.FIELDS (DATE)]"); |
"BODY[HEADER.FIELDS (DATE)]"); |
596 |
|
|