xref: /plan9-contrib/sys/src/cmd/upas/smtp/smtpd.h (revision 46595261e2df6f77a765b58436f80f1f78713033)
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