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

Contents of /rpms/qpsmtpd/sme8/qpsmtpd.spec

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


Revision 1.32 - (show annotations) (download)
Tue Apr 23 05:30:06 2013 UTC (11 years, 7 months ago) by burnat
Branch: MAIN
CVS Tags: qpsmtpd-0_84-4_el5_sme
Changes since 1.31: +8 -2 lines
* Tue Apr 23 2013 chris burnat <devlist@burnat.com> 0.84-4.sme
- qpsmtpd allows the spamassassin plugin to read the size limit
  from its arguments, patch by Daniel [SME: 7541]

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

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