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

Contents of /rpms/qpsmtpd/sme7/qpsmtpd.spec

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


Revision 1.30 - (show annotations) (download)
Fri Apr 26 02:34:46 2013 UTC (11 years, 1 month ago) by burnat
Branch: MAIN
CVS Tags: qpsmtpd-0_83-0_10_el4_sme, HEAD
Changes since 1.29: +7 -3 lines
* Thu Apr 25 2013 chris burnat <devlist@burnat.com> 0.83-0.10.sme
- Fix Net::DNS update breaks qpsmtpd, codes suggested by Ian [SME: 7560]

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

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