aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* Partial update (older .pot) .po file via translationproject.org.Andhika Padmawan2019-05-301-127/+134
* Partial update (older .pot) .po file via translationproject.org.Lauri Nurmi2019-05-301-124/+125
* Mention full translation updates of cs,eo,fr,jp,pl,sv...Matthias Andree2019-05-301-0/+8
* Update .po file via translationproject.org.Göran Uddeborg2019-05-301-353/+164
* Update .po file via translationproject.org.Jakub Bogusz2019-05-301-453/+224
* Update .po file via translationproject.org.Takeshi Hamasaki2019-05-301-453/+231
* Update .po file via translationproject.org.Frédéric Marchal2019-05-301-468/+206
* Update .po file via translationproject.org.Felipe Castro2019-05-301-342/+171
* Update .po file via translationproject.org.Petr Pisar2019-05-301-385/+207
* In-depth robustness.Matthias Andree2019-05-143-5/+6
* Update po/.Matthias Andree2019-05-1424-24/+24
* Misc. updates to makerelease.pl.Matthias Andree2019-05-141-4/+2
* Freeze po/*.po files.Matthias Andree2019-05-1423-10398/+12831
* Bump version to 6.4.0.beta5.Matthias Andree2019-05-141-1/+1
* Update copyright in German translation.Matthias Andree2019-05-141-5/+7
* Bump copyright.Matthias Andree2019-05-141-1/+1
* Document recent changes.Matthias Andree2019-05-141-4/+28
* Merge branch 'lanurmi/fetchmail-no-autoprobe-after-socket-fail' into HEADMatthias Andree2019-05-141-1/+1
|\
| * Do not continue autoprobing other protocols after socket errorLauri Nurmi2018-03-181-1/+1
* | Merge branch 'ffontaine/fetchmail-legacy_64' into legacy_64Matthias Andree2019-05-121-18/+21
|\ \
| * | Be a bit more verbose about SSL probing.Matthias Andree2019-05-121-0/+2
| * | configure.ac: use pkg-config to find opensslFabrice Fontaine2019-05-121-18/+19
|/ /
* | Update de.po translation.Matthias Andree2019-05-121-102/+116
* | Update to GNU gettext 0.19.8.Matthias Andree2019-05-125-70/+326
* | Waive AC_TYPE_SIGNAL and assume signal handlers return void.Matthias Andree2019-05-122-1/+1
* | Update TODO.txt.Matthias Andree2019-05-121-6/+0
* | Document FETCHMAIL_POP3_FORCE_RETR and drop it from TODO.txt.Matthias Andree2019-05-122-1/+6
* | Replace most strncpy() by strlcpy() calls.Matthias Andree2019-05-124-11/+6
* | Drop socket when receiving unexpected untagged * BYE.Matthias Andree2019-05-121-0/+4
* | Add line termination when reporting unexpected untagged * BYE contents.Matthias Andree2019-05-121-1/+1
* | Enable OpenSSL >= 1.0.2 native name verification.Matthias Andree2019-01-271-0/+22
* | Add UTF-7 to TODO.txtMatthias Andree2019-01-021-0/+1
* | Merge branch 'Evil2000/fetchmail-legacy_64' into legacy_64Matthias Andree2018-11-251-2/+10
|\ \
| * | Added mapping to to PS_TRANSIENT or PS_REFUSED of LMTP response.Evil20002018-11-251-2/+10
|/ /
* | Fix potential SIGSEGV in pop3_delete.Matthias Andree2018-11-251-2/+3
* | Set umask properly before writing the .fetchids file,Matthias Andree2018-06-242-0/+5
* | Add a few more files to .gitignoreMatthias Andree2018-06-241-0/+4
* | imap_delete(): clean up delflags[_seen] variables.Matthias Andree2018-06-211-6/+1
* | Bump version.Matthias Andree2018-06-211-1/+1
* | Permit beta builds.Matthias Andree2018-06-211-1/+1
* | Make compatible with a pure OpenSSL 1.1.0 API, ...Matthias Andree2018-06-062-2/+9
* | OPIE: Fix indentation to silence GCC warnings.Matthias Andree2018-04-151-3/+3
* | Bump copyright.Matthias Andree2018-04-152-3/+3
* | Update German <de> translation.Matthias Andree2018-04-151-113/+117
* | OPIE: Chase to64frombits() API change.Matthias Andree2018-04-151-2/+2
* | Fix GCC8 format truncation warnings.Matthias Andree2018-04-141-2/+3
* | Fix useless GCC8 warning, strncpy->memcpy for fixed string.Matthias Andree2018-04-141-1/+1
* | Fix GCC8 ?: operator type promotion warning.Matthias Andree2018-04-141-2/+2
* | Fix indentation to silence GCC 8 warnings.Matthias Andree2018-04-142-8/+8
* | In-depth fix for to64frombits() BASE64 encoder buffer sizing.Matthias Andree2018-04-147-14/+20
ss="p">; } if (ctl->server.authenticate != A_ANY && ctl->server.authenticate != A_PASSWORD) { report(stderr, GT_("POP2 only supports password authentication. Giving up.\n")); return PS_AUTHFAIL; } strlcpy(shroud, ctl->password, sizeof(shroud)); status = gen_transact(sock, "HELO %s %s", ctl->remotename, ctl->password); memset(shroud, 0x55, sizeof(shroud)); shroud[0] = '\0'; return status; } static int pop2_getrange(int sock, struct query *ctl, const char *folder, int *countp, int *newp, int *bytes) /* get range of messages to be fetched */ { (void)ctl; /* maybe the user wanted a non-default folder */ if (folder) { int ok = gen_transact(sock, "FOLD %s", folder); if (ok != 0) return(ok); if (pound_arg == -1) return(PS_ERROR); } else /* * We should have picked up a count of messages in the user's * default inbox from the pop2_getauth() response. * * Note: this logic only works because there is no way to select * both the unnamed folder and named folders within a single * fetchmail run. If that assumption ever becomes invalid, the * pop2_getauth code will have to stash the pound response away * explicitly in case it gets stepped on. */ if (pound_arg == -1) return(PS_ERROR); *countp = pound_arg; *bytes = *newp = -1; return(0); } static int pop2_fetch(int sock, struct query *ctl, int number, int *lenp) /* request nth message */ { int ok; (void)ctl; *lenp = 0; ok = gen_transact(sock, "READ %d", number); if (ok) return(0); *lenp = equal_arg; gen_send(sock, "RETR"); return(ok); } static int pop2_trail(int sock, struct query *ctl, const char *tag) /* send acknowledgement for message data */ { (void)ctl; (void)tag; return(gen_transact(sock, ctl->keep ? "ACKS" : "ACKD")); } static int pop2_logout(int sock, struct query *ctl) /* send logout command */ { (void)ctl; return(gen_transact(sock, "QUIT")); } static const struct method pop2 = { "POP2", /* Post Office Protocol v2 */ "pop2", /* standard POP2 port */ "pop2", /* ssl POP2 port - not */ FALSE, /* this is not a tagged protocol */ FALSE, /* does not use message delimiter */ pop2_ok, /* parse command response */ pop2_getauth, /* get authorization */ pop2_getrange, /* query range of messages */ NULL, /* no way to get sizes */ NULL, /* no way to get sizes of subsets */ NULL, /* messages are always new */ pop2_fetch, /* request given message */ NULL, /* no way to fetch body alone */ pop2_trail, /* eat message trailer */ NULL, /* no POP2 delete method */ NULL, /* how to mark a message as seen */ NULL, /* how to end mailbox processing */ pop2_logout, /* log out, we're done */ FALSE /* no, we can't re-poll */ }; int doPOP2 (struct query *ctl) /* retrieve messages using POP2 */ { peek_capable = FALSE; return(do_protocol(ctl, &pop2)); } #endif /* POP2_ENABLE */ /* pop2.c ends here */