/* mail message header */ struct mhdr { struct mhdr *next; struct mhdr *prev; int status; #define STATREAD 1 /* Read already */ #define STATKILL 2 /* To be killed */ #define STATNREAD 4 /* Read in this session */ int msgnr; char from[23]; /* fixing size here and using calloc saved 112 bytes */ char date[16]; int size; char subj[31]; long fileptr; }; /* Defines for the ax.25 mailbox facility */ #define NUMMBX 10 /* max number of mailbox sessions */ #define MAXTQUEUE 5 /* max number of frames in ax.25 queue on file send */ #define MBXLINE 128 /* max length of line */ /* modified to match session struct to use existing tx upcalls */ struct mbx { int type ; /* type of connection */ #define MBX_AX25 1 /* ax25 connection */ #ifdef NETROM #define MBX_NETROM 2 /* net/rom transport connection */ #endif char *name; /* Name of remote station - changed from name[10] */ union { /* to match struct session - free() used on exit */ struct ax25_cb *ax25_cb ; /* ax.25 link control block */ #ifdef NETROM struct nr4cb *nr4_cb ; /* net/rom link control block */ #endif } cb ; int (*parse)(); /* a dummy for now */ FILE *tfile ; /* Temporary file for message */ char *to ; /* To-address in form user or user@host */ FILE *upload; /* Send file descrip. - added */ char *ufile; /* send file name - added */ /* end of mod to match session struct */ char *tofrom ; /* Optional */ /* Space here for others, currently not of */ /* interest to us. */ char stype ; /* BBS send command type (B,P,T, etc.) */ struct timer mboxwait; /* idle timer initially 5 minutes */ struct timer prompter; /* need a way to send prompt after file send */ int promptwait; /* check time used during file download */ } ; #define NULLMBX (struct mbx *)0 extern struct mbx *mbox[NUMMBX] ; /* some things for reading mail selectively */ #define NULLMSGHDR (struct mhdr *)0 extern int ax25mbox ;