Ravenports generated: 10 Feb 2024 22:55
[ravenports.git] / bucket_79 / opensmtpd
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               opensmtpd
4 VERSION=                7.4.0p1
5 KEYWORDS=               mail
6 VARIANTS=               standard
7 SDESC[standard]=        Free implementation of server-side SMTP protocol
8 HOMEPAGE=               https://www.opensmtpd.org/
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            https://www.opensmtpd.org/archives/
13 DISTFILE[1]=            opensmtpd-7.4.0p1.tar.gz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        complete
16                         primary
17                         man
18
19 OPTIONS_AVAILABLE=      none
20 OPTIONS_STANDARD=       none
21
22 BUILD_DEPENDS=          groff:primary:standard
23                         libevent:dev:standard
24 BUILDRUN_DEPENDS=       libevent:primary:standard
25                         libasr:single:standard
26 RUN_DEPENDS=            nss:caroot:standard
27
28 USERS=                  _smtpd _smtpq
29 GROUPS=                 _smtpd _smtpq
30 USERGROUP_SPKG=         primary
31
32 USES=                   cpe libtool ssl:libressl-devel zlib
33
34 LICENSE=                ISCL:primary
35 LICENSE_FILE=           ISCL:{{WRKSRC}}/LICENSE
36 LICENSE_SCHEME=         solo
37
38 CPE_VENDOR=             openbsd
39 FPC_EQUIVALENT=         mail/opensmtpd
40
41 MUST_CONFIGURE=         gnu
42 CONFIGURE_ARGS=         --without-table-db
43                         --with-libasr={{LOCALBASE}}
44                         --with-libevent={{LOCALBASE}}
45                         --with-libssl={{OPENSSLBASE}}
46                         --sysconfdir={{PREFIX}}/etc/mail
47
48 MAKE_ARGS=              mansubdir=man
49
50 RC_SUBR=                smtpd:primary
51 SUB_FILES=              pkg-message-primary
52
53 post-install:
54         ${LN} -sf ../../sbin/smtpctl \
55                 ${STAGEDIR}${PREFIX}/libexec/opensmtpd/makemap
56
57 pre-configure:
58         # --with-mantype fails for some reason
59         ${REINPLACE_CMD} -e 's/MANTYPE=doc/MANTYPE=man/' \
60                 ${WRKSRC}/configure
61
62 pre-configure-dragonfly:
63         ${RM} -rf ${WRKSRC}/openbsd-compat/vis.h \
64                 ${WRKSRC}/openbsd-compat/sys
65         ${REINPLACE_CMD} -e 's|TAILQ_FOREACH_SAFE|TAILQ_FOREACH_MUTABLE|' \
66                 ${WRKSRC}/usr.sbin/smtpd/parse.y
67
68 [FILE:340:descriptions/desc.primary]
69 OpenSMTPD is a FREE implementation of the server-side SMTP protocol as
70 defined by RFC 5321, with some additional standard extensions. It allows
71 ordinary machines to exchange emails with other systems speaking the SMTP
72 protocol.
73
74 Started out of dissatisfaction with other implementations, OpenSMTPD is a
75 fairly complete SMTP implementation.
76
77
78 [FILE:103:distinfo]
79 9e82a2ec9419e181d4ca27d8e3ebe5d129fded5ba84022ff4d11a73f8edb70b5       908307 opensmtpd-7.4.0p1.tar.gz
80
81
82 [FILE:188:manifests/plist.primary]
83 @sample etc/mail/smtpd.conf.sample
84 bin/smtp
85 libexec/opensmtpd/
86  encrypt
87  lockspool
88  mail.lmtp
89  mail.local
90  mail.maildir
91  mail.mboxfile
92  mail.mda
93  makemap
94 @(,,2555) sbin/smtpctl
95 sbin/smtpd
96
97
98 [FILE:325:manifests/plist.man]
99 share/man/man1/
100  lockspool.1.gz
101  smtp.1.gz
102 share/man/man5/
103  aliases.5.gz
104  forward.5.gz
105  smtpd.conf.5.gz
106  table.5.gz
107 share/man/man7/smtpd-filters.7.gz
108 share/man/man8/
109  mail.lmtp.8.gz
110  mail.local.8.gz
111  mail.maildir.8.gz
112  mail.mboxfile.8.gz
113  mail.mda.8.gz
114  makemap.8.gz
115  newaliases.8.gz
116  sendmail.8.gz
117  smtpctl.8.gz
118  smtpd.8.gz
119
120
121 [FILE:845:patches/patch-mk_smtpd_Makefile.in]
122 --- mk/smtpd/Makefile.in.orig   2023-10-13 06:45:27 UTC
123 +++ mk/smtpd/Makefile.in
124 @@ -2023,13 +2023,7 @@ install-exec-hook: $(CONFIGFILES) $(MANP
125         $(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)5
126         $(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)7
127         $(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)8
128 -
129 -       @if [ ! -f $(DESTDIR)$(sysconfdir)/smtpd.conf ]; then                   \
130 -               $(INSTALL) -m 644 smtpd.conf.out $(DESTDIR)$(sysconfdir)/smtpd.conf; \
131 -       else                                                                    \
132 -               echo "$(DESTDIR)$(sysconfdir)/smtpd.conf already exists, install will not overwrite"; \
133 -       fi
134 -
135 +       $(INSTALL) -m 644 smtpd.conf.out        $(DESTDIR)$(sysconfdir)/smtpd.conf.sample
136         $(INSTALL) -m 644 aliases.5.out         $(DESTDIR)$(mandir)/$(mansubdir)5/aliases.5
137         $(INSTALL) -m 644 forward.5.out         $(DESTDIR)$(mandir)/$(mansubdir)5/forward.5
138         $(INSTALL) -m 644 table.5.out           $(DESTDIR)$(mandir)/$(mansubdir)5/table.5
139
140
141 [FILE:398:patches/patch-openbsd-compat_arc4random.c]
142 --- openbsd-compat/arc4random.c.orig    2023-09-29 15:10:20 UTC
143 +++ openbsd-compat/arc4random.c
144 @@ -155,6 +155,7 @@ _rs_random_u32(uint32_t *val)
145         return;
146  }
147  
148 +#if !defined(HAVE_ARC4RANDOM) && !defined(LIBRESSL_VERSION_NUMBER)
149  void
150  arc4random_stir(void)
151  {
152 @@ -162,6 +163,7 @@ arc4random_stir(void)
153         _rs_stir();
154         _ARC4_UNLOCK();
155  }
156 +#endif
157  
158  void
159  arc4random_addrandom(u_char *dat, int datlen)
160
161
162 [FILE:662:files/pkg-message-primary.in]
163 If you are upgrading from OpenSMTPD version 5.7.3 or earlier, please
164 follow the procedure below to update the permissions on the OpenSMTPD
165 spool directories:
166
167   1. Stop 'smtpd' service:
168
169      # %%PREFIX%%/sbin/smtpctl stop
170
171   2. Update permissions:
172
173      # chown -R _smtpq:wheel /var/spool/smtpd/corrupt
174      # chown -R root:_smtpq /var/spool/smtpd/offline
175      # chown -R _smtpq:wheel /var/spool/smtpd/purge
176      # chown -R _smtpq:wheel /var/spool/smtpd/queue
177      # chown -R _smtpq:wheel /var/spool/smtpd/temporary
178      # chmod -R 770 /var/spool/smtpd/offline
179      # chmod -R 700 /var/spool/smtpd/purge
180
181   3. Start 'smtpd' service:
182
183      # service smtpd start
184
185
186 [FILE:1220:files/smtpd.in]
187 #!/bin/sh
188 #
189 # PROVIDE: smtpd mail
190 # REQUIRE: LOGIN
191 # KEYWORD: shutdown
192 #
193 # Add the following lines to /etc/rc.conf to enable smtpd:
194 # smtpd_enable (bool):        Set it to "YES" to enable OpenSMTPD.
195 #                             Default is "NO".
196 # smtpd_config (string):      Path to OpenSMTPD configuration file.
197 #                             Default is "%%PREFIX%%/etc/mail/smtpd.conf"
198 # smtpd_flags (string):       Additional flags to be passed to smtpd.
199 #                             Default is "".
200 #
201
202 . /etc/rc.subr
203
204 name="smtpd"
205 rcvar=smtpd_enable
206
207 start_precmd="smtpd_precmd"
208 restart_precmd="smtpd_checkconfig"
209 configtest_cmd="smtpd_checkconfig"
210 extra_commands="configtest"
211
212 load_rc_config $name
213
214 : ${smtpd_enable:="NO"}
215 : ${smtpd_config:="%%PREFIX%%/etc/mail/${name}.conf"}
216 : ${smtpd_procname:="%%PREFIX%%/sbin/${name}"}
217 : ${smtpd_flags:=""}
218
219 command=${smtpd_procname}
220 command_args="-f ${smtpd_config} ${command_args}"
221 required_files="${smtpd_config}"
222
223 procname=${smtpd_procname}
224 pidfile="/var/run/${name}.pid"
225
226 smtpd_checkconfig()
227 {
228     echo "Performing sanity check on smtpd configuration:"
229     eval ${command} ${command_args} ${smtpd_flags} -n
230 }
231
232 smtpd_precmd()
233 {
234     smtpd_checkconfig
235 }
236
237 run_rc_command "$1"
238