xref: /openbsd/usr.sbin/smtpd/smtpd-defines.h (revision 0228dab0)
1 /*	$OpenBSD: smtpd-defines.h,v 1.12 2020/02/24 16:16:08 millert Exp $	*/
2 
3 /*
4  * Copyright (c) 2013 Gilles Chehade <gilles@poolp.org>
5  *
6  * Permission to use, copy, modify, and distribute this software for any
7  * purpose with or without fee is hereby granted, provided that the above
8  * copyright notice and this permission notice appear in all copies.
9  *
10  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17  */
18 
19 #ifndef nitems
20 #define nitems(_a) (sizeof((_a)) / sizeof((_a)[0]))
21 #endif
22 
23 #define	SMTPD_TABLENAME_SIZE	 (64 + 1)
24 #define	SMTPD_TAG_SIZE		 (32 + 1)
25 
26 /* buffer sizes for email address components */
27 #define SMTPD_MAXLOCALPARTSIZE	 (255 + 1)
28 #define SMTPD_MAXDOMAINPARTSIZE	 (255 + 1)
29 #define	SMTPD_MAXMAILADDRSIZE	 (255 + 1)
30 
31 /* buffer size for virtual username (can be email addresses) */
32 #define	SMTPD_VUSERNAME_SIZE	 (255 + 1)
33 #define	SMTPD_SUBADDRESS_SIZE	 (255 + 1)
34 
35 #define SMTPD_USER		"_smtpd"
36 #define PATH_CHROOT		"/var/empty"
37 #define SMTPD_QUEUE_USER	"_smtpq"
38 #define SMTPD_QUEUE_GROUP	"_smtpq"
39 #define PATH_SPOOL		"/var/spool/smtpd"
40 #define	PATH_MAILLOCAL		"/usr/libexec/mail.local"
41 #define PATH_MAKEMAP		"/usr/sbin/makemap"
42 
43 #define SUBADDRESSING_DELIMITER	"+"
44 
45 
46 /* sendmail compat */
47 
48 #define	EX_OK			0
49 #define	EX_NOHOST		68
50 #define	EX_UNAVAILABLE		69
51 #define	EX_SOFTWARE		70
52 #define	EX_TEMPFAIL		75
53