/* Turn off the next line if your system doesn't have a clock */
#define	DATE
/* #define USERNAME "bdale"		/* name of local user */
/* #define SMTPGATE "44.32.0.1"		/* address to punt mail to */
#define SMTP_PORT	25		/* well-known port for smtp */
#define SMTPCLITIME	900		/* 15 minutes between client starts */

/* currently, the below definitions are set up to put incoming mail activity
   in \spool\mail, and outgoing mail activity in \spool\mqueue.  Twiddle to
   suit, this is for pseudo-compatibility with 4bsd, since that's what I'm
   most familiar with...    Bdale  */

#ifndef	AMIGA
/* Mail box file name template - edit to taste */
#define	MAILSPOOL	"/spool/mail/%s.txt"
/* path for outgoin mail files */
#define MAILQDIR	"/spool/mqueue/"
#else	AMIGA
#define	MAILSPOOL	"INET:mail/%s.txt"
#define	MAILQDIR	"INET:mqueue/"
#endif

extern char hostname[];
#define	LINELEN		128
#define SLINELEN	32

/* Recipient address entry */
struct addr {
	struct addr *next;
	char *val;
};
#define	NULLADDR	(struct addr *)NULL

/* Per-session control block */
struct mail {
	struct tcb *tcb;	/* TCP control block pointer */
	char state;
#define	COMMAND_STATE	0
#define	DATA_STATE	1

	char *system;		/* Name of remote system */
	struct addr *to;	/* Linked list of recipients */
	char buf[LINELEN];	/* Input buffer */
	char cnt;		/* Length of input buffer */
	FILE *data;		/* Temporary input file pointer */
};
#define	NULLMAIL	(struct mail *)NULL

struct smtp_msg {
	struct tcb *tcb;	/* tcp task control buffer */
	char cts;		/* used as boolean, true if space avail in
				   tcp buffer */
	char state;		/* state machine placeholder */
#define CLI_OPEN_STATE	0
#define CLI_MAIL_STATE	1
#define CLI_RCPT_STATE	2
#define CLI_DATA_STATE	3
#define	CLI_SEND_STATE	4
#define	CLI_UNLK_STATE	5
#define CLI_QUIT_STATE	6
	char	*filename;	/* name of workfile */
	char	toaddr[LINELEN],
		fromaddr[LINELEN];
	char buf[LINELEN];	/* Input buffer */
	char cnt;		/* Length of input buffer */
	FILE *wfile, *tfile;
};
