diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2009-05-24 14:45:17 +0000 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2009-05-24 14:45:17 +0000 |
commit | 570e3ef1831cdb13a1baf846029ffa1cb7ec1b79 (patch) | |
tree | dd13bcd23351a7ac931457b9535a2b670dc9dda8 /options.c | |
parent | c74e0b613d3d4782a7ad34af1f9e14ebb3776e1b (diff) | |
download | fetchmail-570e3ef1831cdb13a1baf846029ffa1cb7ec1b79.tar.gz fetchmail-570e3ef1831cdb13a1baf846029ffa1cb7ec1b79.tar.bz2 fetchmail-570e3ef1831cdb13a1baf846029ffa1cb7ec1b79.zip |
Treat permanent delivery errors as temporary (configurable).
Fetchmail no longer drops permanently undelivered messages by default,
to match historic documentation. It does this by adding a new
"softbounce" option, see below.
Fixes Debian Bug#471283, demotes Debian Bug#494418 to wishlist.
There is a new "softbounce" global option that prevents the deletion of
messages that have not been forwarded. It defaults to "true" for
fetchmail 6.3.X in order to match historic documentation. This may
change its default in the next major release.
NOTE: untested.
svn path=/branches/BRANCH_6-3/; revision=5315
Diffstat (limited to 'options.c')
-rw-r--r-- | options.c | 14 |
1 files changed, 13 insertions, 1 deletions
@@ -51,7 +51,9 @@ enum { LA_FETCHSIZELIMIT, LA_FASTUIDL, LA_LIMITFLUSH, - LA_IDLE + LA_IDLE, + LA_NOSOFTBOUNCE, + LA_SOFTBOUNCE }; /* options still left: CgGhHjJoORTWxXYz */ @@ -78,6 +80,8 @@ static const struct option longoptions[] = { {"pidfile", required_argument, (int *) 0, LA_PIDFILE }, {"postmaster",required_argument, (int *) 0, LA_POSTMASTER }, {"nobounce", no_argument, (int *) 0, LA_NOBOUNCE }, + {"nosoftbounce", no_argument, (int *) 0, LA_NOSOFTBOUNCE }, + {"softbounce", no_argument, (int *) 0, LA_SOFTBOUNCE }, {"protocol", required_argument, (int *) 0, 'p' }, {"proto", required_argument, (int *) 0, 'p' }, @@ -300,6 +304,12 @@ int parsecmdline (int argc /** argument count */, case LA_NOBOUNCE: run.bouncemail = FALSE; break; + case LA_NOSOFTBOUNCE: + run.softbounce = FALSE; + break; + case LA_SOFTBOUNCE: + run.softbounce = TRUE; + break; case 'p': /* XXX -- should probably use a table lookup here */ if (strcasecmp(optarg,"auto") == 0) @@ -607,6 +617,8 @@ int parsecmdline (int argc /** argument count */, P(GT_(" --pidfile specify alternate PID (lock) file\n")); P(GT_(" --postmaster specify recipient of last resort\n")); P(GT_(" --nobounce redirect bounces from user to postmaster.\n")); + P(GT_(" --nosoftbounce fetchmail deletes permanently undeliverable messages.\n")); + P(GT_(" --softbounce keep permanently undeliverable messages on server (default).\n")); #ifdef CAN_MONITOR P(GT_(" -I, --interface interface required specification\n")); P(GT_(" -M, --monitor monitor interface for activity\n")); |