On Sun, Oct 02, 2022 at 03:33:52PM -0700, Dan Mahoney wrote:
> If I am piping my mail to a program (in this case, day job's RT
> install), is there some way in which I can exit that will cause a
> message to be bounced back to the sender?
>
> Or do I need a full-on milter to do this kind of rejection?
Postfix supports Sendmail-compatible exit codes, as listed in
/usr/include/sysexits.h:
#define EX_OK 0 /* successful termination */
#define EX__BASE 64 /* base value for error messages */
#define EX_USAGE 64 /* command line usage error */
#define EX_DATAERR 65 /* data format error */
#define EX_NOINPUT 66 /* cannot open input */
#define EX_NOUSER 67 /* addressee unknown */
#define EX_NOHOST 68 /* host name unknown */
#define EX_UNAVAILABLE 69 /* service unavailable */
#define EX_SOFTWARE 70 /* internal software error */
#define EX_OSERR 71 /* system error (e.g., can't fork) */
#define EX_OSFILE 72 /* critical OS file missing */
#define EX_CANTCREAT 73 /* can't create (user) output file */
#define EX_IOERR 74 /* input/output error */
#define EX_TEMPFAIL 75 /* temp failure; user is invited to retry */
#define EX_PROTOCOL 76 /* remote error in protocol */
#define EX_NOPERM 77 /* permission denied */
#define EX_CONFIG 78 /* configuration error */
Of these (excluding of course EX_OK) EX_TEMPFAIL is the only "soft"
failure code, the rest are hard failures. Pick the one that most
closely meets your context. Of course not generating bounces is best
whenever possible.
--
Viktor.