/[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.29 - (show annotations) (download)
Thu Jul 19 04:22:58 2012 UTC (12 years, 3 months ago) by wellsi
Branch: MAIN
CVS Tags: qpsmtpd-0_83-0_9_el4_sme
Changes since 1.28: +8 -2 lines
Fix fatal errors when mail has no headers [SME: 6386]

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

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