vdelivermail improperly translates .qmail commands
that return 99 into 111, which is a soft delivery failure. 99 is a
success, but stop interpreting further .qmail commands. This causes
problems with condredirect and bouncesaying. The following patch resolves
the issue.
***
vpopmail-5.3.8/vdelivermail.c Thu Jun 20
16:13:25 2002
--- vpopmail-5.3.8.patched/vdelivermail.c Mon Sep 23 13:24:52 2002 *************** *** 727,732 **** --- 728,734 ---- switch(wait_exitcode(wstat)) { case 64: case 65: case 70: case 76: case 77: case 78: case 112: _exit(100); + case 99: _exit(99); case 0: break; default: _exit(111); } As stated in this paragraph:
command's exit codes are interpreted as follows:
0 means
that the delivery was successful; 99 means that the delivery was successful, but that qmail-local should ignore all further delivery instructions; 100 means that the delivery failed permanently (hard error); 111 means that the delivery failed but should be tried again in a little while (soft error). Currently 64, 65, 70, 76, 77, 78, and 112 are con- sidered hard errors, and all other codes are considered soft errors, but command should avoid relying on this. May I have credit for this fix?
Jeremiah Gowdy
Senior Software Engineer
FreedomVOICE Systems
|
- Re: [vchkpw] vpopmail and .qmail files Jeremiah Gowdy
- Re: [vchkpw] vpopmail and .qmail files Ken Jones