1 
2 #define ft_NOTYET	(-3)		     /* spool file doesn't exist yet */
3 #define ft_CANTCREATE	(-2)	/* wrong file type and can't change our mind */
4 #define ft_TOOLONG	(-1)		    /* path + UNIQnamelen > linebuf? */
5 #define ft_PIPE		  0		    /* program, stdout, or /dev/null */
6 #define ft_MAILDIR	  1				   /* maildir folder */
7 #define ft_MH		  2					/* MH folder */
8 #define ft_FILE		  3					/* real file */
9 #define ft_DIR		  4			     /* msg.inode# directory */
10 
11 #define ft_lock(type)	   ((type)>ft_MAILDIR)		   /* kernel lock fd */
12 #define ft_atime(type)	   ((type)==ft_FILE)	      /* force atime < mtime */
13 #define ft_dotlock(type)   ((type)==ft_FILE)		 /* dotlock $DEFAULT */
14 #define ft_delim(type)	   ((type)==ft_FILE)		   /* add MMDF delim */
15 #define ft_checkcloser(type) ((type)>ft_MH)
16 #define ft_forceblank(type) ((type)!=ft_MAILDIR)  /* force blank line at end */
17 
18 int
19  foldertype Q((int type,int forcedir,mode_t*const modep,
20   struct stat*const paranoid)),
21  screenmailbox Q((char*chp,const gid_t egid,const int Deliverymode));
22 
23 extern const char maildirnew[];
24 extern int accspooldir;
25 
26 #ifdef TESTING
27 static const char*FT2str[]=
28 { "Not-Yet","Can't-Create","Too-Long",
29   "Pipe","Maildir","MH","File","Directory"
30 };
31 #define ft2str	(FT2str-ft_NOTYET)
32 #endif
33