/[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.2 - (show annotations) (download)
Wed Apr 24 18:03:34 2013 UTC (11 years, 6 months ago) by vip-ire
Branch: MAIN
CVS Tags: qpsmtpd-0_84-5_el6_sme
Changes since 1.1: +8 -2 lines
* Wed Apr 24 2013 Daniel Berteaud <daniel@firewall-services.com> 0.84-5.sme
- allows the spamassassin plugin to read the size limit from its
  arguments [SME: 7559]

1 # $Id: qpsmtpd.spec,v 1.1 2013/02/02 00:59:45 slords Exp $
2
3 Name: qpsmtpd
4 Version: 0.84
5 Release: 5%{?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
66 Patch100: qpsmtpd-0.40-badrcptto_allowrelay.patch
67 Patch101: qpsmtpd-0.83-peer_hooks.patch
68 Patch102: qpsmtpd-0.83-loginit.patch
69 Patch103: qpsmtpd-forkserver-keepalive.patch
70
71 %description
72 qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core
73 SMTP features, all functionality is implemented in small "extension
74 plugins" using the easy to use object oriented plugin API.
75
76 qpsmtpd was originally written as a drop-in qmail-smtpd replacement, but
77 now it also includes a smtp forward and a postfix "backend".
78
79 %package apache
80 Requires: perl(mod_perl2)
81 Summary: mod_perl-2 connection handler for qpsmtpd
82 Group: System Environment/Daemons
83
84 %package async
85 Summary: qpsmtpd using async I/O in a single process
86 Group: System Environment/Daemons
87
88 %description apache
89
90 This module implements a mod_perl/apache 2.0 connection handler
91 that turns Apache into an SMTP server using Qpsmtpd.
92
93 %description async
94 This package contains the Qpsmtpd::PollServer module, which allows
95 qpsmtd to handle many connections in a single process and the
96 qpsmpd-async which uses it.
97
98 %prep
99 %setup -q
100 %patch1 -p1
101 %patch2 -p1
102 %patch3 -p1
103 %patch4 -p1
104 %patch5 -p1
105 %patch6 -p1
106 %patch7 -p1
107 %patch8 -p1
108 %patch9 -p1
109 %patch10 -p1
110 %patch11 -p1
111 %patch12 -p1
112 %patch13 -p1
113 %patch14 -p1
114 %patch15 -p1
115 %patch16 -p1
116 %patch17 -p1
117 %patch18 -p1
118 %patch19 -p1
119 %patch20 -p1
120 %patch21 -p1
121 #%patch22 -p1
122 %patch23 -p1
123 %patch24 -p1
124 %patch25 -p1
125 %patch26 -p1
126 %patch27 -p1
127 %patch28 -p1
128 %patch29 -p1
129 %patch30 -p1
130 %patch31 -p1
131 %patch32 -p1
132 %patch33 -p1
133 %patch34 -p1
134 %patch35 -p1
135 %patch36 -p1
136 %patch37 -p1
137 %patch38 -p1
138 %patch39 -p1
139
140 %patch100 -p1
141 %patch101 -p1
142 %patch102 -p1
143 %patch103 -p0
144
145 %build
146 CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL INSTALLDIRS="vendor" PREFIX="%{buildroot}%{_prefix}"
147 make
148
149 %clean
150 rm -rf $RPM_BUILD_ROOT
151 %install
152
153 rm -rf $RPM_BUILD_ROOT
154 find blib/lib -name '*.pm.*' -exec rm -f {} \;
155 make pure_install
156
157 mkdir -p %{buildroot}%{_datadir}/%{name}
158 rm -f %{buildroot}%{_datadir}/%{name}/plugins/*.*
159 cp -r plugins %{buildroot}%{_datadir}/%{name}/plugins
160 mkdir -p %{buildroot}%{_sysconfdir}/%{name}
161 rm -f %{buildroot}%{_sysconfdir}/%{name}/*.*
162 cp -r config.sample/* %{buildroot}%{_sysconfdir}/%{name}/
163 echo %{_datadir}/%{name}/plugins > %{buildroot}%{_sysconfdir}/%{name}/plugin_dirs
164 echo %{_localstatedir}/spool/qpsmtpd > %{buildroot}%{_sysconfdir}/%{name}/spool_dir
165 echo logging/file_connection loglevel LOGINFO %{_localstatedir}/log/qpsmtpd/%Y-%m-%d > %{buildroot}%{_sysconfdir}/%{name}/logging
166 mkdir -p %{buildroot}%{_initrddir}
167 cp %{SOURCE1} %{buildroot}%{_initrddir}/qpsmtpd-forkserver
168 mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
169 cp %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/qpsmtpd-forkserver
170 cp %{SOURCE3} %{buildroot}%{_datadir}/%{name}/plugins/logging/file_connection
171 mkdir -p %{buildroot}%{_localstatedir}/spool/qpsmtpd
172 mkdir -p %{buildroot}%{_localstatedir}/log/qpsmtpd
173 mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d
174 cp %{SOURCE4} %{buildroot}%{_sysconfdir}/xinetd.d/smtp
175 mkdir -p %{buildroot}%{_sbindir}
176 cp %{SOURCE5} %{buildroot}%{_sbindir}/in.smtp
177 mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d
178 cp %{SOURCE6} %{buildroot}%{_sysconfdir}/httpd/conf.d
179 mkdir -p %{buildroot}%{_docdir}/%{name}-apache-%{version}
180 cp %{SOURCE7} %{buildroot}%{_docdir}/%{name}-apache-%{version}
181
182 [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress
183
184 find %{buildroot}%{_prefix} \( -name perllocal.pod -o -name .packlist \) -exec rm {} \;
185 find %{buildroot}%{_prefix} -type f -print | \
186 sed "s@^%{buildroot}@@g" | \
187 grep -v [Aa]sync | \
188 grep -v packaging | \
189 grep -v README.selinux | \
190 grep -v /Apache | \
191 grep -v /Danga | \
192 grep -v Qpsmtpd/ConfigServer.pm | \
193 grep -v Qpsmtpd/PollServer.pm > %{name}-%{version}-%{release}-filelist
194 if [ "$(cat %{name}-%{version}-%{release}-filelist)X" = "X" ] ; then
195 echo "ERROR: EMPTY FILE LIST"
196 exit -1
197 fi
198
199 %files -f %{name}-%{version}-%{release}-filelist
200 %defattr(-,root,root)
201 %doc CREDITS Changes LICENSE README README.plugins STATUS
202 %{_initrddir}/qpsmtpd-forkserver
203 %config(noreplace) %{_sysconfdir}/qpsmtpd/*
204 %config(noreplace) %{_sysconfdir}/xinetd.d/smtp
205 %config(noreplace) %{_sysconfdir}/sysconfig/qpsmtpd-forkserver
206
207 %files apache
208 %defattr(-,root,root)
209 %{_prefix}/share/perl5/vendor_perl/Apache/Qpsmtpd.pm
210 %{_mandir}/man3/Apache::Qpsmtpd.3pm.gz
211 %config(noreplace) %{_sysconfdir}/httpd/conf.d/*
212 %doc %{_docdir}/%{name}-apache-%{version}/README.selinux
213
214 %files async
215 %defattr(-,root,root)
216 %{_bindir}/qpsmtpd-async
217 %{_prefix}/share/perl5/vendor_perl/Danga/Client.pm
218 %{_prefix}/share/perl5/vendor_perl/Danga/TimeoutSocket.pm
219 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/ConfigServer.pm
220 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/Plugin/Async/DNSBLBase.pm
221 %{_prefix}/share/perl5/vendor_perl/Qpsmtpd/PollServer.pm
222 %{_mandir}/man1/qpsmtpd-async.1.gz
223 %{_datadir}/%{name}/plugins/async/*
224
225 %pre
226
227 %changelog
228 * Wed Apr 24 2013 Daniel Berteaud <daniel@firewall-services.com> 0.84-5.sme
229 - allows the spamassassin plugin to read the size limit from its
230 arguments [SME: 7559]
231
232 * Fri Feb 1 2013 Shad L. Lords <slords@mail.com> 0.84-4.sme
233 - Update spec so building on rhel6 works [SME: 7263]
234
235 * Fri May 04 2012 Charlie Brady <charlie_brady@mitel.com> 0.84-3.sme
236 - Set SO_KEEPALIVE option on client socket - to detect dead
237 connections. [SME: 6924]
238
239 * Sun Nov 14 2010 <slords@mail.com> 0.84-2.sme
240 - Sync with upstream git repo.
241 - Fix require_resolvable_fromhost doesn't work [SME: 6369]
242 - Fix TLS security defaults [SME: 6241]
243 - Fix fatal errors when mail has no headers [SME: 6345]
244
245 * Wed Apr 14 2010 <slords@mail.com> 0.84-0.1.sme
246 - Update to 0.84
247 - add sme specific patches
248
249 * Wed Mar 3 2010 <filippo.carletti@gmail.com> 0.83-0.7.sme
250 - Remove spool and log dir from package (in smeserver-qpsmtpd)
251 - Don't create smtpd user (unused in sme) [SME: 5815]
252
253 * Thu Nov 5 2009 <smeserver-contribs@snetram.nl> 0.83-0.6.sme
254 - Apply qpsmtpd git changesets to implement custom SPAM
255 subject prefix [SME: 5031]
256
257 * Tue Nov 3 2009 <slords@mail.com> 0.83-0.5.sme
258 - Update pre requires so scripts don't fail on install [SME: 5558]
259
260 * Sat Oct 31 2009 <slords@mail.com> 0.83-0.4.sme
261 - Rebase bad_rcptto patch to remove orig file [SME: 5548]
262 - Change logging in tls init to prevent warnings [SME: 5551]
263
264 * Thu Oct 29 2009 <slords@mail.com> 0.83-0.3.sme
265 - Only run/initialize plugins once [SME: 5533]
266
267 * Mon Oct 26 2009 <filippo.carletti@gmail.com> 0.83-0.2.sme
268 - Change spool dir permissions and owner to qpsmtpd:clamav
269 - Change log dir permissions and owner to smelog:smelog
270
271 * Tue Sep 22 2009 <filippo.carletti@gmail.com> 0.83-0.1.sme
272 - add sme specific patches
273
274 * Fri Sep 18 2009 <rpmbuild@robinbowes.com> 0.83-0.1
275 - Update to 0.83
276
277 * Sun Jul 12 2009 <rpmbuild@robinbowes.com> 0.82-0.1
278 - Update to latest release
279 - don't add qpsmtpd to start-up by default
280 - add apache config file to qpsmtpd-apache package
281 - remove all patches
282 - use rpm macros for dirs
283 - use a filelist for main package instead of a long list of files
284
285 * Tue Jul 15 2008 <rpmbuild@robinbowes.com> 0.43-0.7
286 - Removed SelectServer.pm from .spec file
287
288 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.6
289 - moved config files back to /etc/qpsmtpd following some changes
290 to the qpsmtpd src
291
292 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.5
293 - moved config files to /etc/qpsmtpd/config
294
295 * Tue Mar 18 2008 <rpmbuild@robinbowes.com> 0.43-0.4
296 - Moved qpsmtpd-async to /usr/bin
297 - Added qpsmtpd-async man page to async package
298 - Added async smtproute plugin to async package
299
300 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.3
301 - Makefile.PL now updated in svn, so remove hack
302
303 * Wed Mar 12 2008 <rpmbuild@robinbowes.com> 0.43-0.2
304 - Added qpsmtpd-prefork to qpsmtpd RPM, inc. hack to work round
305 deficiency in Makefile.PL
306
307 * Mon Mar 10 2008 <rpmbuild@robinbowes.com> 0.43-0.1
308 - Updated to work with Makefile to build from svn
309
310 * Wed Sep 12 2007 <rpmbuild@robinbowes.com> 0.40-2.0
311 - Updated to build trunk-r790
312
313 * Tue Jun 12 2007 <hjp@hjp.at> 0.40-1.0
314 - updated to 0.40 - no code change.
315
316 * Thu Jun 07 2007 <hjp@hjp.at> 0.40-0.2
317 - unset environment variables which are normally tainted in perl.
318 - updated to 0.40rc1
319 - added dependency on Net::IP (needed by some plugins)
320
321 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.5
322 - moved environment cleanup into start() function, otherwise
323 LANG just gets reinitialized.
324
325 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.4
326 - split qpsmtpd-async into a separate package to avoid dependency
327 on ParaDNS.
328
329 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.3
330 - also unset LANG, LC_ALL and LC_TIME in startup script to prevent
331 locale specific Received headers (bug reported by Dominik Meyer)
332
333 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.2
334 - 0.3x branch has been merged back to trunk.
335 Got current snapshot (r715) from trunk.
336
337 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.1
338 - Start forkserver via "daemon" (Gavin Carr)
339 - Fixed 'service qpsmtpd-forkserver status' (Gavin Carr)
340 - Changed policy for config files to noreplace (Gavin Carr)
341
342 * Sun Nov 05 2006 <hjp@hjp.at> 0.33-0.0
343 - Upgraded to current snapshot from 0.3x branch (which should become
344 0.33 soon-ish)
345 - included xinetd-support again.
346
347 * Sat Mar 18 2006 <hjp@hjp.at> 0.32-2
348 - fix dnsbl to check whether answer fits query.
349 - randomize Net::DNS ids for qpsmtpd-forkserver child processes.
350
351 * Wed Mar 08 2006 <hjp@hjp.at> 0.32-1
352 - New upstream 0.32
353 - rc-file unsets PERL_UNICODE (bug #38397)
354
355 * Sat Jan 28 2006 <hjp@hjp.at> 0.31.1-3
356 - Use ${SOURCE*} macros to refer to source files
357 - Avoid invoking rpm and other cleanup in %pre section
358 - Invoke chkconfig in %post.
359 - (Thanks to Josko Plazonic for the reporting these problems and
360 suggesting fixes)
361
362 * Tue Nov 30 2005 <hjp@hjp.at> 0.31.1-2
363 - Revision 170 of plugins/loggin/file_connection:
364 Return DECLINED from open_log.
365 Open log in write_log if it isn't already open.
366
367 * Tue Nov 29 2005 <hjp@hjp.at> 0.31.1-1
368 - Commented out queue plugins from sample config
369 - Added dependencies
370 - Create smtpd user if it doesn't exist
371 - Added /var/log/qpsmtpd and /var/spool/qpsmtpd
372
373 * Sat Nov 26 2005 <hjp@hjp.at>
374 - Added file_connection plugin
375 - Startup file for qpsmtpd-forkserver now uses --detach and assumes that
376 a suitable logging module is configured (file_connection by default)
377
378 * Wed Nov 23 2005 <hjp@hjp.at>
379 - Forkserver drops privileges before loading plugins now.
380
381 * Sun Nov 20 2005 <hjp@hjp.at>
382 - New upstream 0.31.1
383
384 * Mon Nov 14 2005 <hjp@hjp.at> 0.31-8
385 - New upstream 0.31rc3.
386 - pre-connection patch slightly simplified since upstream fixed one of
387 the bugs.
388
389 * Tue Aug 23 2005 <hjp@hjp.at>
390 - forced INSTALLSITELIB=/usr/lib/perl5/site_perl as suggested by
391 Charlie Brady.
392
393 * Sat Aug 20 2005 <hjp@hjp.at> 0.31-7
394 - RC2 from upstream.
395 - Removed patches which aren't applied from spec file.
396
397 * Fri Jul 22 2005 <hjp@hjp.at> 0.31-6
398 - New upstream snapshot from 0.31 branch: svn revision 509.
399
400 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-5
401 - include only /etc/init.d/qpsmtpd-forkserver, not /etc/init.d
402 it conflicts with old initscripts packages.
403
404 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-4
405 - removed tabs from forkserver
406
407 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-3
408 - added startup script for forkserver
409 - changed BuildArchitectures to noarch.
410
411 * Sat Jul 16 2005 <hjp@hjp.at> 0.31-2
412 - pre-connection hook is now actually called, not just defined.
413
414 * Fri Jul 15 2005 <hjp@hjp.at> 0.31-1
415 - merged with 0.31. Most of my patches are now in the official release.
416 - merged Gavin's per-user-config patch with my dirs patch, since the
417 latter needs a way to turn off logging.
418 - added /etc/qpsmtpd/plugin_dir to package.
419
420 * Mon Jun 13 2005 <hjp@hjp.at> 0.29-6
421 - fixed removal of patch backup files
422 - fixed option --pid-file
423
424 * Sun Jun 12 2005 <hjp@hjp.at>
425 - avoid installing patch backup files
426 - split Apache::Qpsmtpd into separate package to avoid dependency hell.
427 - fixed URL
428 - changed group to Daemons.
429 - Fixed installation for newer versions of ExtUtils::MakeMaker
430
431 * Wed Jun 1 2005 <hjp@hjp.at> 0.29-5
432 - Really don't reap children in signal handler.
433
434 * Tue May 31 2005 <hjp@hjp.at> 0.29-4
435 - Return 421 for DENYSOFT_DISCONNECT
436 - Don't reap children in signal handler.
437
438 * Thu May 19 2005 <hjp@hjp.at> 0.29-3
439 - removed code to accept paths without <>.
440
441 * Thu May 19 2005 <hjp@hjp.at> 0.29-2
442 - added QPSMTPD_CONFIG env variable and plugin_dir config.
443 - added supplemental groups and support for pid file
444 - added shared_connect hook
445 - changed log level for SMTP dialog from DEBUG to INFO
446
447 * Thu Apr 21 2005 hjp@hjp.at
448 - added plugins, /etc and docs.
449
450 * Mon Apr 18 2005 hjp@hjp.at
451 - Specfile autogenerated
452

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