/* ***************************************************************** */ 
/*                      Header for SMTP daemon                       */ 
/* ***************************************************************** */ 
/*
 * $Log: smtpd.h,v $
 * Revision 1.3  1994/02/06  10:08:28  gwalter
 * MAX_LINE_LENGTH added
 *
 * Revision 1.2  1994/02/01  19:48:38  gwalter
 * Header file for SMTP daemon
 *
 * Revision 1.1  1994/01/30  12:48:29  gwalter
 * Initial revision
 *
 *
*/

#define SMTPD_TEMPLATE "LOG=LOGFILE/K,RMAIL=RECEIVE/K"
#define ARGCOUNT (2)
#define ARG_LOGFILE (0)
#define ARG_RMAIL   (1)

#define isspace(x) (x == ' ')

#define MAX_ALIASES 	(10)
#define MAX_ERRORS  	(20)
#define TIMEOUT		(60*2)

#define MAX_HOSTLEN (128)
#define STD_BUFFER_LEN (256)
#define SHORT_BUFFER_LEN (80)
#define MAX_LINE_LENGTH (1055)

#define RMAIL_TEMPLATE "rmail <%s %s"

#define MAILERR_BAD_RESPONSE (1)
#define MAILERR_NOTEMP (2)
#define MAILERR_INVALID_COMMAND (3)
#define MAILERR_SEND_ERROR (4)
#define MAILERR_NO_MEMORY (5)
#define MAILERR_EXPECTING_HELO (6)
#define MAILERR_TEMPWRITE (7)
#define MAILERR_CONNECTION_LOST (8)
#define MAILERR_SELECT (9)
#define MAILERR_TIMEOUT (10)
#define MAILERR_LOCALHOST (11) 
#define MAILERR_INVALID_ARGUMENTS (12) 
#define MAILERR_NO_DELIVERY (13) 
#define MAILERR_NOT_DELIVERED (14) 
#define MAILERR_COMMAND_REJECT (15) 

#define MAILMSG_TEXT_PREFIX		"SMTPD: "

#define MAILERR_TEXT_UNKNOWN_ERROR 	"Unknown error"
#define MAILERR_TEXT_BAD_RESPONSE 	"Bad response from remote host: %s"
#define MAILERR_TEXT_NOTEMP 		"Error using temporary file: %s"
#define MAILERR_TEXT_INVALID_COMMAND	"Invalid SMTP command received: %s"
#define MAILERR_TEXT_SEND_ERROR 	"Error sending data to remote host"
#define MAILERR_TEXT_NO_MEMORY 		"No memory"
#define MAILERR_TEXT_EXPECTING_HELO 	"Expecting HELO received %s"
#define MAILERR_TEXT_TEMPWRITE 		"Error writing temporary file %s"
#define MAILERR_TEXT_CONNECTION_LOST	"Connection lost"
#define MAILERR_TEXT_SELECT 		"Select error: %s"
#define MAILERR_TEXT_TIMEOUT 		"Timeout: %s"
#define MAILERR_TEXT_LOCALHOST		"Local host name not found"
#define MAILERR_TEXT_INVALID_ARGUMENTS	"Invalid arguments to SMTPD"
#define MAILERR_TEXT_NO_DELIVERY	"Couldn't deliver mail to %s"
#define MAILERR_TEXT_NOT_DELIVERED	"Couldn't deliver mail item %s"
#define MAILERR_TEXT_COMMAND_REJECT	"Command rejected: %s"

#define MAILERR_TEXT_LOG_OPEN_FAIL	"Couldn't open mail log - logging suppressed"
#define MAILERR_TEXT_NO_RECIPIENTS	"No valid recipients sent by client"

#define MAILERR_TEXT_ABORTING_MAXERRS	"Aborting - reached MAX_ERRORs"

#define SMTP_COMMAND_HELO	"HELO"
#define SMTP_COMMAND_QUIT	"QUIT"
#define SMTP_COMMAND_RSET	"RSET"
#define SMTP_COMMAND_NOOP	"NOOP"
#define SMTP_COMMAND_DATA	"DATA"
#define SMTP_COMMAND_MAIL	"MAIL"
#define SMTP_COMMAND_RCPT	"RCPT"

#define SMTP_RESPONSE_READY		"220 %s SMTP Daemon ready\r\n"
#define SMTP_RESPONSE_CLOSING		"221 %s closing channel\r\n"
#define SMTP_RESPONSE_OK		"250 OK\r\n"
#define SMTP_RESPONSE_OK_SUBS		"250 %s\r\n"

#define SMTP_RESPONSE_RECEIVING		"354 Receiving...\r\n"

#define SMTP_RESPONSE_NO_DELIVERY	"450 Couldn't deliver\r\n"

#define SMTP_RESPONSE_PARDON		"502 Pardon ??\r\n"
#define SMTP_RESPONSE_WHOTHEHECK	"550 Who the heck??\r\n"
#define SMTP_RESPONSE_NO_RECIPIENTS	"550 No recipients\r\n"
#define SMTP_RESPONSE_NOWRITE_RECIPIENT	"550 Couldn't write recipient name\r\n"
