/[imapfilter]/imapfilter/request.c
ViewVC logotype

Diff of /imapfilter/request.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.32.2.4 by lefcha, Sun Sep 29 19:54:58 2002 UTC revision 1.32.2.5 by lefcha, Sat Nov 9 14:18:23 2002 UTC
# Line 500  int action_move(char *mesgs, char *destm Line 500  int action_move(char *mesgs, char *destm
500   */   */
501  int action_rcopy(char *mesgs, account_t * destacc, char *destmbox, char *args)  int action_rcopy(char *mesgs, account_t * destacc, char *destmbox, char *args)
502  {  {
503      int r, t;      int r, ta, tf;
504      char *tok, *m, *mcp, *ndm;      char *tok, *m, *mcp, *ndm;
505      unsigned int n;      unsigned int n;
506      char buf[RESPONSE_BUF];      char buf[RESPONSE_BUF * 2];
507    
508      if (init_connection(&sockaux, destacc->server, destacc->port,      if (init_connection(&sockaux, destacc->server, destacc->port,
509                          destacc->ssl))                          destacc->ssl))
# Line 553  int action_rcopy(char *mesgs, account_t Line 553  int action_rcopy(char *mesgs, account_t
553          fetchsize_response(&sockpri, &n,          fetchsize_response(&sockpri, &n,
554                             imap_fetch(&sockpri, tok, "RFC822.SIZE"));                             imap_fetch(&sockpri, tok, "RFC822.SIZE"));
555    
556          t = imap_append(&sockaux, ndm, n);          ta = imap_append(&sockaux, ndm, n);
557    
558          fetch_response(&sockpri, 1, NULL);          fetch_response(&sockpri, 0, 1, NULL);
559          imap_fetch(&sockpri, tok, "RFC822.HEADER");          tf = imap_fetch(&sockpri, tok, "RFC822.HEADER");
560          do {          do {
561              r = fetch_response(&sockpri, 0, buf);              r = fetch_response(&sockpri, tf, 0, buf);
562              socket_write(&sockaux, buf);              socket_write(&sockaux, buf);
563          } while (r == RESPONSE_NONE);          } while (r == RESPONSE_NONE);
564    
565          socket_write(&sockaux, "\r\n");          socket_write(&sockaux, "\r\n");
566    
567          fetch_response(&sockpri, 1, NULL);          fetch_response(&sockpri, 0, 1, NULL);
568          imap_fetch(&sockpri, tok, "BODY[TEXT]");          tf = imap_fetch(&sockpri, tok, "BODY[TEXT]");
569          do {          do {
570              r = fetch_response(&sockpri, 0, buf);              r = fetch_response(&sockpri, tf, 0, buf);
571              socket_write(&sockaux, buf);              socket_write(&sockaux, buf);
572          } while (r == RESPONSE_NONE);          } while (r == RESPONSE_NONE);
573    
574          socket_write(&sockaux, "\r\n\r\n");          socket_write(&sockaux, "\r\n\r\n");
575    
576          append_response(&sockaux, t);          append_response(&sockaux, ta);
577    
578          tok = strtok_r(NULL, " ", &m);          tok = strtok_r(NULL, " ", &m);
579      }      }
# Line 661  int action_flag(char *mesgs, unsigned in Line 661  int action_flag(char *mesgs, unsigned in
661   */   */
662  int action_list(char *mesgs, char *args)  int action_list(char *mesgs, char *args)
663  {  {
664      int r;      int r, t;
665      char *tok, *mcp, *m;      char *tok, *mcp, *m;
666      char s[ARGS_LEN + 27];      char s[ARGS_LEN + 27];
667      char hdrs[RESPONSE_BUF];      char hdrs[RESPONSE_BUF];
# Line 676  int action_list(char *mesgs, char *args) Line 676  int action_list(char *mesgs, char *args)
676      tok = strtok_r(m, " ", &m);      tok = strtok_r(m, " ", &m);
677      while (tok) {      while (tok) {
678          /* Reset internal fetch counter. */          /* Reset internal fetch counter. */
679          fetch_response(&sockpri, 1, NULL);          fetch_response(&sockpri, 0, 1, NULL);
680          imap_fetch(&sockpri, tok, s);          t = imap_fetch(&sockpri, tok, s);
681          do          do
682              r = fetch_response(&sockpri, 0, hdrs);              r = fetch_response(&sockpri, t, 0, hdrs);
683          while (r == RESPONSE_NONE);          while (r == RESPONSE_NONE);
684    
685          if (*hdrs) {          if (*hdrs) {

Legend:
Removed from v.1.32.2.4  
changed lines
  Added in v.1.32.2.5

webmaster@linux.gr
ViewVC Help
Powered by ViewVC 1.1.26