17dd7cddfSDavid du Colombier enum { 27dd7cddfSDavid du Colombier ACCEPT = 0, 37dd7cddfSDavid du Colombier REFUSED, 47dd7cddfSDavid du Colombier DENIED, 57dd7cddfSDavid du Colombier DIALUP, 67dd7cddfSDavid du Colombier BLOCKED, 780ee5cbfSDavid du Colombier DELAY, 89a747e4fSDavid du Colombier TRUSTED, 97dd7cddfSDavid du Colombier NONE, 107dd7cddfSDavid du Colombier 117dd7cddfSDavid du Colombier MAXREJECTS = 100, 127dd7cddfSDavid du Colombier }; 137dd7cddfSDavid du Colombier 147dd7cddfSDavid du Colombier 157dd7cddfSDavid du Colombier typedef struct Link Link; 167dd7cddfSDavid du Colombier typedef struct List List; 177dd7cddfSDavid du Colombier 187dd7cddfSDavid du Colombier struct Link { 197dd7cddfSDavid du Colombier Link *next; 207dd7cddfSDavid du Colombier String *p; 217dd7cddfSDavid du Colombier }; 227dd7cddfSDavid du Colombier 237dd7cddfSDavid du Colombier struct List { 247dd7cddfSDavid du Colombier Link *first; 257dd7cddfSDavid du Colombier Link *last; 267dd7cddfSDavid du Colombier }; 277dd7cddfSDavid du Colombier 287dd7cddfSDavid du Colombier extern int fflag; 297dd7cddfSDavid du Colombier extern int rflag; 307dd7cddfSDavid du Colombier extern int sflag; 317dd7cddfSDavid du Colombier 327dd7cddfSDavid du Colombier extern int debug; 339a747e4fSDavid du Colombier extern NetConnInfo *nci; 347dd7cddfSDavid du Colombier extern char *dom; 357dd7cddfSDavid du Colombier extern char* me; 367dd7cddfSDavid du Colombier extern int trusted; 37e288d156SDavid du Colombier extern List senders; 38e288d156SDavid du Colombier extern List rcvers; 39*46595261SDavid du Colombier extern uchar rsysip[]; 407dd7cddfSDavid du Colombier 41e288d156SDavid du Colombier void addbadguy(char*); 42d9306527SDavid du Colombier void auth(String *, String *); 437dd7cddfSDavid du Colombier int blocked(String*); 443e12c5d1SDavid du Colombier void data(void); 457dd7cddfSDavid du Colombier char* dumpfile(char*); 467dd7cddfSDavid du Colombier int forwarding(String*); 477dd7cddfSDavid du Colombier void getconf(void); 483ff48bf5SDavid du Colombier void hello(String*, int extended); 497dd7cddfSDavid du Colombier void help(String *); 50e288d156SDavid du Colombier int isbadguy(void); 517dd7cddfSDavid du Colombier void listadd(List*, String*); 527dd7cddfSDavid du Colombier void listfree(List*); 536b6b9ac8SDavid du Colombier int masquerade(String*, char*); 543e12c5d1SDavid du Colombier void noop(void); 55d9306527SDavid du Colombier int optoutofspamfilter(char*); 563e12c5d1SDavid du Colombier void quit(void); 577dd7cddfSDavid du Colombier void parseinit(void); 587dd7cddfSDavid du Colombier void receiver(String*); 5980ee5cbfSDavid du Colombier int recipok(char*); 607dd7cddfSDavid du Colombier int reply(char*, ...); 617dd7cddfSDavid du Colombier void reset(void); 6280ee5cbfSDavid du Colombier int rmtdns(char*, char*); 637dd7cddfSDavid du Colombier void sayhi(void); 647dd7cddfSDavid du Colombier void sender(String*); 65dddc47c2SDavid du Colombier void starttls(void); 663e12c5d1SDavid du Colombier void turn(void); 673e12c5d1SDavid du Colombier void verify(String*); 68e288d156SDavid du Colombier void vfysenderhostok(void); 699a747e4fSDavid du Colombier int zzparse(void); 70