diff -ruN qmail-1.03-factory/qmail-smtpd.c qmail-1.03-patched/qmail-smtpd.c --- qmail-1.03-factory/qmail-smtpd.c 1998-06-15 06:53:16.000000000 -0400 +++ qmail-1.03-patched/qmail-smtpd.c 2007-09-03 14:40:57.000000000 -0400 @@ -389,7 +389,7 @@ if (!*qqx) { acceptmessage(qp); return; } if (hops) { out("554 too many hops, this message is looping (#5.4.6)\r\n"); return; } if (databytes) if (!bytestooverflow) { out("552 sorry, that message size exceeds my databytes limit (#5.3.4)\r\n"); return; } - if (*qqx == 'D') out("554 "); else out("451 "); + if (*qqx == 'I') out("250 ok "); else if (*qqx == 'D') out("554 "); else out("451 "); out(qqx + 1); out("\r\n"); } diff -ruN qmail-1.03-factory/qmail.c qmail-1.03-patched/qmail.c --- qmail-1.03-factory/qmail.c 1998-06-15 06:53:16.000000000 -0400 +++ qmail-1.03-patched/qmail.c 2007-09-03 14:41:21.000000000 -0400 @@ -94,9 +94,11 @@ exitcode = wait_exitcode(wstat); switch(exitcode) { + case 1: return "IYour SPAM has been ignored."; case 115: /* compatibility */ case 11: return "Denvelope address too long for qq (#5.1.3)"; case 31: return "Dmail server permanently rejected message (#5.3.0)"; + case 32: return "Dwe do not accept SPAM (#5.3.0)"; case 51: return "Zqq out of memory (#4.3.0)"; case 52: return "Zqq timeout (#4.3.0)"; case 53: return "Zqq write error or disk full (#4.3.0)";