1 enum { 2 ACCEPT = 0, 3 REFUSED, 4 DENIED, 5 DIALUP, 6 BLOCKED, 7 DELAY, 8 TRUSTED, 9 NONE, 10 11 MAXREJECTS = 100, 12 }; 13 14 15 typedef struct Link Link; 16 typedef struct List List; 17 18 struct Link { 19 Link *next; 20 String *p; 21 }; 22 23 struct List { 24 Link *first; 25 Link *last; 26 }; 27 28 extern int fflag; 29 extern int rflag; 30 extern int sflag; 31 32 extern int debug; 33 extern NetConnInfo *nci; 34 extern char *dom; 35 extern char* me; 36 extern int trusted; 37 extern List senders; 38 extern List rcvers; 39 extern uchar rsysip[]; 40 41 void addbadguy(char*); 42 void auth(String *, String *); 43 int blocked(String*); 44 void data(void); 45 char* dumpfile(char*); 46 int forwarding(String*); 47 void getconf(void); 48 void hello(String*, int extended); 49 void help(String *); 50 int isbadguy(void); 51 void listadd(List*, String*); 52 void listfree(List*); 53 int masquerade(String*, char*); 54 void noop(void); 55 int optoutofspamfilter(char*); 56 void quit(void); 57 void parseinit(void); 58 void receiver(String*); 59 int recipok(char*); 60 int reply(char*, ...); 61 void reset(void); 62 int rmtdns(char*, char*); 63 void sayhi(void); 64 void sender(String*); 65 void starttls(void); 66 void turn(void); 67 void verify(String*); 68 void vfysenderhostok(void); 69 int zzparse(void); 70