/*
 * Soft Fail, more info see README, COPYRIGHT and CHANGELOG files
 */

#define QMTPPROTO       209
#define QMQPPROTO       628

#define FALSE 0
#define TRUE 1
#define uschar char

#define ENVELOPE_REJECT_CODE	100	// exit code to return if perm fail
					// these are usually 5xx SMTP code

#define ENVELOPE_SOFTFAIL_CODE	101	// exit code to return if soft fail
					// these are usually 4xx SMTP code

#define ENVELOPE_ACCEPT_CODE	0	// if msg is known (already seem)

#define SF_UNEXPECTED_CODE	102	// if we can not run envelope_vrf()
					// for some reason: usually resource
					// unavailability on FreeBSD, like
					// memory, maxproc or maxopenfiles, see
					// tuning(7) on really large systems.

#define SF_DRUN_CLI_CODE	11	// qmail-sf should not be run from
					// the command line; let's return
					// 11 like vpopmail's vchkpw on CLI

#define SFLOGFILE		"/var/log/qmail-sf.log" // log file

struct sf_rcpt_l {
  char *mail;
};

int envelope_vrf(int fd, uschar **retmsg);

extern char *mf_addr;
extern char *mf_fqdnaddr;
extern char *proto_used;
extern int rcpt_n;

extern struct sf_rcpt_l sf_rcpt_l[];


syntax highlighted by Code2HTML, v. 0.9.1