/[smeserver]/rpms/qpsmtpd/sme9/qpsmtpd.spec
ViewVC logotype

Contents of /rpms/qpsmtpd/sme9/qpsmtpd.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.8 - (show annotations) (download)
Thu Mar 13 16:27:35 2014 UTC (10 years, 7 months ago) by vip-ire
Branch: MAIN
CVS Tags: qpsmtpd-0_84-9_el6_sme
Changes since 1.7: +7 -2 lines
* Thu Mar 13 2014 Daniel Berteaud <daniel@firewall-services.com> 0.84-9.sme
- Remove DENYSOFT on SPF softfail [SME: 8273]

1 # $Id: qpsmtpd.spec,v 1.7 2013/12/09 19:47:15 vip-ire Exp $
2
3 Name: qpsmtpd
4 Version: 0.84
5 Release: 9%{?dist}
6 Summary: qpsmtpd + qpsmtpd-apache + qpsmtpd-async
7 License: MIT
8 Group: System Environment/Daemons
9 URL: http://smtpd.develooper.com/
10 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
11 BuildRequires: perl >= 0:5.00503
12 BuildRequires: perl(ExtUtils::MakeMaker)
13 BuildArch: noarch
14 Requires: perl(Mail::Header), perl(Net::DNS) perl(Net::IP)
15 Requires(pre): coreutils, shadow-utils, perl
16
17 Source0: %{name}-%{version}.tar.gz
18 Source1: qpsmtpd-forkserver.rc
19 Source2: qpsmtpd-forkserver.sysconfig
20 Source3: qpsmtpd-plugin-file_connection
21 Source4: qpsmtpd-xinetd
22 Source5: in.qpsmtpd
23 Source6: qpsmtpd.conf
24 Source7: README.selinux
25
26 Patch1: 0001-Misc-documentation-updates.patch
27 Patch2: 0002-added-ClamAV-version-to-the-X-Virus-Checked-header.patch
28 Patch3: 0003-new-plugin-check_bogus_bounce.patch
29 Patch4: 0004-microoptimizations-replace-regex-with-lc-eq.patch
30 Patch5: 0005-remove-vestiges-of-a-bygone-RCS.patch
31 Patch6: 0006-added-definedness-test-to-local_port-as-it-was-emitt.patch
32 Patch7: 0007-Add-guidelines-for-commit-messages.patch
33 Patch8: 0008-added-auth_checkpassword-plugin.patch
34 Patch9: 0009-updates-to-auth_vpopmail_sql-module.patch
35 Patch10: 0010-new-plugin-auth_vpopmaild.patch
36 Patch11: 0011-start-working-on-Changes-file-for-0.84-next.patch
37 Patch12: 0012-fix-copy-paste-error-in-auth_flat_file.patch
38 Patch13: 0013-added-auth_vpopmail-plugin.patch
39 Patch14: 0014-rewrote-sender_permitted_from.patch
40 Patch15: 0015-add-TCPLOCAL-variables-to-qp-connection.patch
41 Patch16: 0016-added-local_ip-option-to-p0f-plugin.patch
42 Patch17: 0017-added-p0f-support-to-greylist-plugin.patch
43 Patch18: 0018-packaging-updates.patch
44 Patch19: 0019-Check-for-the-exact-string-resonses-from-vpopmaild-r.patch
45 Patch20: 0020-new-plugin-check_badmailfrom_patterns.patch
46 Patch21: 0021-ignore-search-path-in-DNS-lookups.patch
47 Patch22: 0022-don-t-create-homedir-in-RPM.patch
48 Patch23: 0023-corrected-email-address.patch
49 Patch24: 0024-increased-default-TLS-security-setting.patch
50 Patch25: 0025-give-badrcptto-a-reasonable-name.patch
51 Patch26: 0026-add-test-name-to-test-output.patch
52 Patch27: 0027-renamed-test-from-foo-to-rcpt_ok.patch
53 Patch28: 0028-Shorten-clarify-Connection-and-Transaction-notes.patch
54 Patch29: 0029-Run-hook_reset_transaction-after-all-connections.patch
55 Patch30: 0030-Add-support-for-multiple-postfix-cleanup-sockets.patch
56 Patch31: 0031-Adds-the-ability-to-have-multiple-instances-each-wit.patch
57 Patch32: 0032-I-forgot-to-sync-the-code-that-calls-the-original-co.patch
58 Patch33: 0033-new-plugin-rcpt_map.patch
59 Patch34: 0034-plugins-rcpt_map-cleanup.patch
60 Patch35: 0035-Fix-for-plugins-returning-DONE-from-HELO-EHLO.patch
61 Patch36: 0036-prefork-use-new-instance-instead-of-cloning.patch
62 Patch37: 0037-Revert-Spool-body-when-transaction-body_fh-is-called.patch
63 Patch38: 0038-Patch-FATAL-PLUGIN-ERROR-check_basicheaders.patch
64 Patch39: 0039-qpsmtpd-0.84-spamassassin_size_limit.patch
65 Patch40: 0040-qpsmtpd-forkserver_fix_Net_DNS_update_breaks_qpsmtpd.patch
66
67 Patch100: qpsmtpd-0.40-badrcptto_allowrelay.patch
68 Patch101: qpsmtpd-0.83-peer_hooks.patch
69 Patch102: qpsmtpd-0.83-loginit.patch
70 Patch103: qpsmtpd-forkserver-keepalive.patch
71 Patch104: qpsmtpd-0.84-accept-empty-email.patch
72 Patch105: qpsmtpd-0.84-fix_eq_operator.patch
73 Patch106: qpsmtpd-0.84-remove_denysoft_on_spf_softfail.patch
74
75 %description
76 qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core
77 SMTP features, all functionality is implemented in small "extension
78 plugins" using the easy to use object oriented plugin API.
79
80 qpsmtpd was originally written as a drop-in qmail-smtpd replacement, but
81 now it also includes a smtp forward and a postfix "backend".
82
83 %package apache
84 Requires: perl(mod_perl2)
85 Summary: mod_perl-2 connection handler for qpsmtpd
86 Group: System Environment/Daemons
87
88 %package async
89 Summary: qpsmtpd using async I/O in a single process
90 Group: System Environment/Daemons
91
92 %description apache
93
94 This module implements a mod_perl/apache 2.0 connection handler
95 that turns Apache into an SMTP server using Qpsmtpd.
96
97 %description async
98 This package contains the Qpsmtpd::PollServer module, which allows
99 qpsmtd to handle many connections in a single process and the
100 qpsmpd-async which uses it.
101
102 %prep
103 %setup -q
104 %patch1 -p1
105 %patch2 -p1
106 %patch3 -p1
107 %patch4 -p1
108 %patch5 -p1
109 %patch6 -p1
110 %patch7 -p1
111 %patch8 -p1
112 %patch9 -p1
113 %patch10 -p1
114 %patch11 -p1
115 %patch12 -p1
116 %patch13 -p1
117 %patch14 -p1
118 %patch15 -p1
119 %patch16 -p1
120 %patch17 -p1
121 %patch18 -p1
122 %patch19 -p1
123 %patch20 -p1
124 %patch21 -p1
125 #%patch22 -p1
126 %patch23 -p1
127 %patch24 -p1
128 %patch25 -p1
129 %patch26 -p1
130 %patch27 -p1
131 %patch28 -p1
132 %patch29 -p1
133 %patch30 -p1
134 %patch31 -p1
135 %patch32 -p1
136 %patch33 -p1
137 %patch34 -p1
138 %patch35 -p1
139 %patch36 -p1
140 %patch37 -p1
141 %patch38 -p1
142 %patch39 -p1
143 %patch40 -p1
144
145 %patch100 -p1
146 %patch101 -p1
147 %patch102 -p1
148 %patch103 -p0
149 %patch104 -p1
150 %patch105 -p1
151 %patch106 -p1
152
153 %build
154 CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL INSTALLDIRS="vendor" PREFIX="%{buildroot}%{_prefix}"
155 make
156
157 %clean
158 rm -rf $RPM_BUILD_ROOT
159 %install
160
161 rm -rf $RPM_BUILD_ROOT
162 find blib/lib -name '*.pm.*' -exec rm -f {} \;
163 make pure_install
164
165 mkdir -p %{buildroot}%{_datadir}/%{name}
166 rm -f %{buildroot}%{_datadir}/%{name}/plugins/*.*
167 cp -r plugins %{buildroot}%{_datadir}/%{name}/plugins
168 mkdir -p %{buildroot}%{_sysconfdir}/%{name}
169 rm -f %{buildroot}%{_sysconfdir}/%{name}/*.*
170 cp -r config.sample/* %{buildroot}%{_sysconfdir}/%{name}/
171 echo %{_datadir}/%{name}/plugins > %{buildroot}%{_sysconfdir}/%{name}/plugin_dirs
172 echo %{_localstatedir}/spool/qpsmtpd > %{buildroot}%{_sysconfdir}/%{name}/spool_dir
173 echo logging/file_connection loglevel LOGINFO %{_localstatedir}/log/qpsmtpd/%Y-%m-%d > %{buildroot}%{_sysconfdir}/%{name}/logging
174 mkdir -p %{buildroot}%{_initrddir}
175 cp %{SOURCE1} %{buildroot}%{_initrddir}/qpsmtpd-forkserver
176 mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
177 cp %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/qpsmtpd-forkserver
178 cp %{SOURCE3} %{buildroot}%{_datadir}/%{name}/plugins/logging/file_connection
179 mkdir -p %{buildroot}%{_localstatedir}/spool/qpsmtpd
180 mkdir -p %{buildroot}%{_localstatedir}/log/qpsmtpd
181 mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d
182 cp %{SOURCE4} %{buildroot}%{_sysconfdir}/xinetd.d/smtp
183 mkdir -p %{buildroot}%{_sbindir}
184 cp %{SOURCE5} %{buildroot}%{_sbindir}/in.smtp
185 mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d
186 cp %{SOURCE6} %{buildroot}%{_sysconfdir}/httpd/conf.d
187 mkdir -p %{buildroot}%{_docdir}/%{name}-apache-%{version}
188 cp %{SOURCE7} %{buildroot}%{_docdir}/%{name}-apache-%{version}
189
190 [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress
191
192 find %{buildroot}%{_prefix} \( -name perllocal.pod -o -name .packlist \) -exec rm {} \;
193 find %{buildroot}%{_prefix} -type f -print | \
194 sed "s@^%{buildroot}@@g" | \
195 grep -v [Aa]sync | \
196 grep -v packaging | \
197 grep -v README.selinux | \
198 grep -v /Apache | \
199 grep -v /Danga | \
200 grep -v Qpsmtpd/ConfigServer.pm | \
201 grep -v Qpsmtpd/PollServer.pm > %{name}-%{version}-%{release}-filelist
202 if [ "$(cat %{name}-%{version}-%{release}-filelist)X" = "X" ] ; then
203 echo "ERROR: EMPTY FILE LIST"
204 exit -1
205 fi
206
207 %files -f %{name}-%{version}-%{release}-filelist
208 %defattr(-,root,root)
209 %doc CREDITS Changes LICENSE README README.plugins STATUS
210 %{_initrddir}/qpsmtpd-forkserver
211 %config(noreplace) %{_sysconfdir}/qpsmtpd/*
212 %config(noreplace) %{_sysconfdir}/xinetd.d/smtp
213 %config(noreplace) %{_sysconfdir}/sysconfig/qpsmtpd-forkserver
214
215 %files apache
216 %defattr(-,root,root)
217 %{_prefix}/share/perl5/vendor_perl/Apache/Qpsmtpd.pm
218 %{_mandir}/man3/Apache::Qpsmtpd.3pm.gz
219 %config(noreplace) %{_sysconfdir}/httpd/conf.d/*
220 %doc %{_docdir}/%{name}-apache-%{version}/README.selinux
221
222 %files async
223 %defattr(-,root,root)
224 %{_bindir}/qpsmtpd-async
225 %{_prefix}/share/perl5/vendor_perl/Danga/Client.pm
226 %{_prefix}/share/perl5/vendor_perl/Danga/TimeoutSocket.pm
227 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/ConfigServer.pm
228 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/Plugin/Async/DNSBLBase.pm
229 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/PollServer.pm
230 %{_mandir}/man1/qpsmtpd-async.1.gz
231 %{_datadir}/%{name}/plugins/async/*
232
233 %pre
234
235 %changelog
236 * Thu Mar 13 2014 Daniel Berteaud <daniel@firewall-services.com> 0.84-9.sme
237 - Remove DENYSOFT on SPF softfail [SME: 8273]
238
239 * Mon Dec 9 2013 Daniel Berteaud <daniel@firewall-services.com> 0.84-8.sme
240 - Fix handling of messages with no body and no trailing \n after headers (eq was
241 used in attempted assignment). [SME: 8051, see SME: 7754]
242
243 * Fri Jul 5 2013 Ian Wells <esmith@wellsi.com> 0.84-7.sme
244 - Accept messages with no body and no trailing \n after headers [SME: 7754]
245
246 * Thu Apr 25 2013 chris burnat <devlist@burnat.com> 0.84-6.sme
247 - Fix Net::DNS update breaks qpsmtpd, codes suggested by Ian [SME: 7561]
248
249 * Wed Apr 24 2013 Daniel Berteaud <daniel@firewall-services.com> 0.84-5.sme
250 - allows the spamassassin plugin to read the size limit from its
251 arguments [SME: 7559]
252
253 * Fri Feb 1 2013 Shad L. Lords <slords@mail.com> 0.84-4.sme
254 - Update spec so building on rhel6 works [SME: 7263]
255
256 * Fri May 04 2012 Charlie Brady <charlie_brady@mitel.com> 0.84-3.sme
257 - Set SO_KEEPALIVE option on client socket - to detect dead
258 connections. [SME: 6924]
259
260 * Sun Nov 14 2010 <slords@mail.com> 0.84-2.sme
261 - Sync with upstream git repo.
262 - Fix require_resolvable_fromhost doesn't work [SME: 6369]
263 - Fix TLS security defaults [SME: 6241]
264 - Fix fatal errors when mail has no headers [SME: 6345]
265
266 * Wed Apr 14 2010 <slords@mail.com> 0.84-0.1.sme
267 - Update to 0.84
268 - add sme specific patches
269 - Perl module rpms moved to /usr/share/perl5/vendor_perl [SME: 7223]
270
271 * Wed Mar 3 2010 <filippo.carletti@gmail.com> 0.83-0.7.sme
272 - Remove spool and log dir from package (in smeserver-qpsmtpd)
273 - Don't create smtpd user (unused in sme) [SME: 5815]
274
275 * Thu Nov 5 2009 <smeserver-contribs@snetram.nl> 0.83-0.6.sme
276 - Apply qpsmtpd git changesets to implement custom SPAM
277 subject prefix [SME: 5031]
278
279 * Tue Nov 3 2009 <slords@mail.com> 0.83-0.5.sme
280 - Update pre requires so scripts don't fail on install [SME: 5558]
281
282 * Sat Oct 31 2009 <slords@mail.com> 0.83-0.4.sme
283 - Rebase bad_rcptto patch to remove orig file [SME: 5548]
284 - Change logging in tls init to prevent warnings [SME: 5551]
285
286 * Thu Oct 29 2009 <slords@mail.com> 0.83-0.3.sme
287 - Only run/initialize plugins once [SME: 5533]
288
289 * Mon Oct 26 2009 <filippo.carletti@gmail.com> 0.83-0.2.sme
290 - Change spool dir permissions and owner to qpsmtpd:clamav
291 - Change log dir permissions and owner to smelog:smelog
292
293 * Tue Sep 22 2009 <filippo.carletti@gmail.com> 0.83-0.1.sme
294 - add sme specific patches
295
296 * Fri Sep 18 2009 <rpmbuild@robinbowes.com> 0.83-0.1
297 - Update to 0.83
298
299 * Sun Jul 12 2009 <rpmbuild@robinbowes.com> 0.82-0.1
300 - Update to latest release
301 - don't add qpsmtpd to start-up by default
302 - add apache config file to qpsmtpd-apache package
303 - remove all patches
304 - use rpm macros for dirs
305 - use a filelist for main package instead of a long list of files
306
307 * Tue Jul 15 2008 <rpmbuild@robinbowes.com> 0.43-0.7
308 - Removed SelectServer.pm from .spec file
309
310 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.6
311 - moved config files back to /etc/qpsmtpd following some changes
312 to the qpsmtpd src
313
314 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.5
315 - moved config files to /etc/qpsmtpd/config
316
317 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.4
318 - Moved qpsmtpd-async to /usr/bin
319 - Added qpsmtpd-async man page to async package
320 - Added async smtproute plugin to async package
321
322 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.3
323 - Makefile.PL now updated in svn, so remove hack
324
325 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.2
326 - Added qpsmtpd-prefork to qpsmtpd RPM, inc. hack to work round
327 deficiency in Makefile.PL
328
329 * Mon Mar 10 2008 <rpmbuild@robinbowes.com> 0.43-0.1
330 - Updated to work with Makefile to build from svn
331
332 * Wed Sep 12 2007 <rpmbuild@robinbowes.com> 0.40-2.0
333 - Updated to build trunk-r790
334
335 * Tue Jun 12 2007 <hjp@hjp.at> 0.40-1.0
336 - updated to 0.40 - no code change.
337
338 * Thu Jun 07 2007 <hjp@hjp.at> 0.40-0.2
339 - unset environment variables which are normally tainted in perl.
340 - updated to 0.40rc1
341 - added dependency on Net::IP (needed by some plugins)
342
343 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.5
344 - moved environment cleanup into start() function, otherwise
345 LANG just gets reinitialized.
346
347 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.4
348 - split qpsmtpd-async into a separate package to avoid dependency
349 on ParaDNS.
350
351 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.3
352 - also unset LANG, LC_ALL and LC_TIME in startup script to prevent
353 locale specific Received headers (bug reported by Dominik Meyer)
354
355 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.2
356 - 0.3x branch has been merged back to trunk.
357 Got current snapshot (r715) from trunk.
358
359 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.1
360 - Start forkserver via "daemon" (Gavin Carr)
361 - Fixed 'service qpsmtpd-forkserver status' (Gavin Carr)
362 - Changed policy for config files to noreplace (Gavin Carr)
363
364 * Sun Nov 05 2006 <hjp@hjp.at> 0.33-0.0
365 - Upgraded to current snapshot from 0.3x branch (which should become
366 0.33 soon-ish)
367 - included xinetd-support again.
368
369 * Sat Mar 18 2006 <hjp@hjp.at> 0.32-2
370 - fix dnsbl to check whether answer fits query.
371 - randomize Net::DNS ids for qpsmtpd-forkserver child processes.
372
373 * Wed Mar 08 2006 <hjp@hjp.at> 0.32-1
374 - New upstream 0.32
375 - rc-file unsets PERL_UNICODE (bug #38397)
376
377 * Sat Jan 28 2006 <hjp@hjp.at> 0.31.1-3
378 - Use ${SOURCE*} macros to refer to source files
379 - Avoid invoking rpm and other cleanup in %pre section
380 - Invoke chkconfig in %post.
381 - (Thanks to Josko Plazonic for the reporting these problems and
382 suggesting fixes)
383
384 * Tue Nov 30 2005 <hjp@hjp.at> 0.31.1-2
385 - Revision 170 of plugins/loggin/file_connection:
386 Return DECLINED from open_log.
387 Open log in write_log if it isn't already open.
388
389 * Tue Nov 29 2005 <hjp@hjp.at> 0.31.1-1
390 - Commented out queue plugins from sample config
391 - Added dependencies
392 - Create smtpd user if it doesn't exist
393 - Added /var/log/qpsmtpd and /var/spool/qpsmtpd
394
395 * Sat Nov 26 2005 <hjp@hjp.at>
396 - Added file_connection plugin
397 - Startup file for qpsmtpd-forkserver now uses --detach and assumes that
398 a suitable logging module is configured (file_connection by default)
399
400 * Wed Nov 23 2005 <hjp@hjp.at>
401 - Forkserver drops privileges before loading plugins now.
402
403 * Sun Nov 20 2005 <hjp@hjp.at>
404 - New upstream 0.31.1
405
406 * Mon Nov 14 2005 <hjp@hjp.at> 0.31-8
407 - New upstream 0.31rc3.
408 - pre-connection patch slightly simplified since upstream fixed one of
409 the bugs.
410
411 * Tue Aug 23 2005 <hjp@hjp.at>
412 - forced INSTALLSITELIB=/usr/lib/perl5/site_perl as suggested by
413 Charlie Brady.
414
415 * Sat Aug 20 2005 <hjp@hjp.at> 0.31-7
416 - RC2 from upstream.
417 - Removed patches which aren't applied from spec file.
418
419 * Fri Jul 22 2005 <hjp@hjp.at> 0.31-6
420 - New upstream snapshot from 0.31 branch: svn revision 509.
421
422 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-5
423 - include only /etc/init.d/qpsmtpd-forkserver, not /etc/init.d
424 it conflicts with old initscripts packages.
425
426 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-4
427 - removed tabs from forkserver
428
429 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-3
430 - added startup script for forkserver
431 - changed BuildArchitectures to noarch.
432
433 * Sat Jul 16 2005 <hjp@hjp.at> 0.31-2
434 - pre-connection hook is now actually called, not just defined.
435
436 * Fri Jul 15 2005 <hjp@hjp.at> 0.31-1
437 - merged with 0.31. Most of my patches are now in the official release.
438 - merged Gavin's per-user-config patch with my dirs patch, since the
439 latter needs a way to turn off logging.
440 - added /etc/qpsmtpd/plugin_dir to package.
441
442 * Mon Jun 13 2005 <hjp@hjp.at> 0.29-6
443 - fixed removal of patch backup files
444 - fixed option --pid-file
445
446 * Sun Jun 12 2005 <hjp@hjp.at>
447 - avoid installing patch backup files
448 - split Apache::Qpsmtpd into separate package to avoid dependency hell.
449 - fixed URL
450 - changed group to Daemons.
451 - Fixed installation for newer versions of ExtUtils::MakeMaker
452
453 * Wed Jun 1 2005 <hjp@hjp.at> 0.29-5
454 - Really don't reap children in signal handler.
455
456 * Tue May 31 2005 <hjp@hjp.at> 0.29-4
457 - Return 421 for DENYSOFT_DISCONNECT
458 - Don't reap children in signal handler.
459
460 * Thu May 19 2005 <hjp@hjp.at> 0.29-3
461 - removed code to accept paths without <>.
462
463 * Thu May 19 2005 <hjp@hjp.at> 0.29-2
464 - added QPSMTPD_CONFIG env variable and plugin_dir config.
465 - added supplemental groups and support for pid file
466 - added shared_connect hook
467 - changed log level for SMTP dialog from DEBUG to INFO
468
469 * Thu Apr 21 2005 hjp@hjp.at
470 - added plugins, /etc and docs.
471
472 * Mon Apr 18 2005 hjp@hjp.at
473 - Specfile autogenerated
474

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed