/[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.14 - (show annotations) (download)
Wed Apr 9 13:51:55 2008 UTC (16 years, 2 months ago) by slords
Branch: MAIN
Changes since 1.13: +2 -0 lines
Add Id to top of spec

1 # $Id$
2
3 Name: qpsmtpd
4 Version: 0.40
5 Release: 1.9%{?dist}
6 %define orig_version 0.40
7 Summary: qpsmtpd
8 License: distributable
9 Group: System Environment/Daemons
10 URL: http://smtpd.develooper.com/
11 BuildRoot: %{_tmppath}/%{name}-root
12 BuildRequires: perl >= 0:5.00503
13 BuildArchitectures: noarch
14 Requires: perl(Mail::Header), perl(Net::DNS) perl(Net::IP)
15
16 Source0: qpsmtpd-%{orig_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
23 Patch1: qpsmtpd-0.31-config.patch
24 Patch2: qpsmtpd-0.33-xinetd.patch
25 Patch3: qpsmtpd-0.33-af_inet6.patch
26 Patch4: qpsmtpd-0.31.1-queue.patch
27 Patch5: qpsmtpd-0.33-smtp-loginfo.patch
28 Patch6: qpsmtpd-0.33-hook-logdebug.patch
29 Patch7: qpsmtpd-0.32-dnsbl-checkanswer.patch
30 Patch8: qpsmtpd-0.32-dns-random-id.patch
31 Patch100: qpsmtpd-0.40-badhelo_disconnect.patch
32 Patch101: qpsmtpd-0.40-badrcptto_allowrelay.patch
33 Patch102: qpsmtpd-0.40-clamav_fix.patch
34 Patch103: qpsmtpd-0.40-peer_hooks.patch
35 Patch104: qpsmtpd-0.40-clamd_conf.patch
36 Patch105: qpsmtpd-0.40-denysoft.patch
37 Patch106: qpsmtpd-0.40-clamav-headers.patch
38 Patch107: qpsmtpd-0.40-rhsbl_disconnect.patch
39 Patch108: qpsmtpd-0.40-badrcpttoPlugin.patch
40 Patch109: qpsmtpd-0.40-spamassassin.patch
41
42 %description
43 qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core
44 SMTP features, all functionality is implemented in small "extension
45 plugins" using the easy to use object oriented plugin API.
46
47 qpsmtpd was originally written as a drop-in qmail-smtpd replacement, but
48 now it also includes a smtp forward and a postfix "backend".
49
50 %package apache
51 Summary: mod_perl-2 connection handler for qpsmtpd
52 Group: System Environment/Daemons
53
54 %package async
55 Summary: qpsmtpd using async I/O in a single process
56 Group: System Environment/Daemons
57
58 %description apache
59
60 This module implements a mod_perl/apache 2.0 connection handler
61 that turns Apache into an SMTP server using Qpsmtpd.
62
63 %description async
64 This package contains the Qpsmtpd::PollServer module, which allows
65 qpsmtd to handle many connections in a single process and the
66 qpsmpd-async which uses it.
67
68 %prep
69 %setup -q -n qpsmtpd-%{orig_version}
70 # XXX - doesn't apply cleanly any more but may still be needed for empty
71 # configs.
72 #%patch1 -p0 -b .config
73 # Merged into upstream:
74 #%patch2 -p0 -b .xinetd
75 #%patch3 -p0 -b .af_inet6
76 %patch4 -p0 -b .queue
77 #%patch5 -p0 -b .smtp-loginfo
78 #%patch6 -p0 -b .hook-logdebug
79 #%patch7 -p0 -b .dnsbl-checkanswer
80 #%patch8 -p0 -b .dns-random-id
81 %patch100 -p1
82 %patch101 -p1
83 #%patch102 -p1
84 %patch103 -p1
85 %patch104 -p1
86 %patch105 -p1
87 %patch106 -p1
88 %patch107 -p1
89 %patch108 -p1
90 %patch109 -p1
91
92 %build
93 CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL INSTALLSITELIB=/usr/lib/perl5/site_perl
94 make
95
96
97 %clean
98 rm -rf $RPM_BUILD_ROOT
99 %install
100
101 rm -rf $RPM_BUILD_ROOT
102 eval `perl '-V:installarchlib'`
103 mkdir -p $RPM_BUILD_ROOT/$installarchlib
104 if grep -q DESTDIR Makefile
105 then
106 make DESTDIR=$RPM_BUILD_ROOT
107 find blib/lib -name '*.pm.*' -exec rm -f {} \;
108 make DESTDIR=$RPM_BUILD_ROOT install
109
110 else
111 make PREFIX=$RPM_BUILD_ROOT/usr
112 find blib/lib -name '*.pm.*' -exec rm -f {} \;
113 make PREFIX=$RPM_BUILD_ROOT/usr install
114 fi
115 mkdir -p $RPM_BUILD_ROOT/usr/sbin
116 cp qpsmtpd-async $RPM_BUILD_ROOT/usr/sbin
117 mkdir -p $RPM_BUILD_ROOT/usr/share/qpsmtpd
118 cp -r plugins $RPM_BUILD_ROOT/usr/share/qpsmtpd/plugins
119 rm -f $RPM_BUILD_ROOT/usr/share/qpsmtpd/plugins/*.*
120 mkdir -p $RPM_BUILD_ROOT/etc
121 cp -r config.sample $RPM_BUILD_ROOT/etc/qpsmtpd
122 rm -f $RPM_BUILD_ROOT/etc/qpsmtpd/*.*
123 echo /usr/share/qpsmtpd/plugins > $RPM_BUILD_ROOT/etc/qpsmtpd/plugin_dirs
124 echo /var/spool/qpsmtpd > $RPM_BUILD_ROOT/etc/qpsmtpd/spool_dir
125 echo logging/file_connection loglevel LOGINFO /var/log/qpsmtpd/%Y-%m-%d > $RPM_BUILD_ROOT/etc/qpsmtpd/logging
126 mkdir -p $RPM_BUILD_ROOT/etc/init.d/
127 cp %{SOURCE1} $RPM_BUILD_ROOT/etc/init.d/qpsmtpd-forkserver
128 mkdir -p $RPM_BUILD_ROOT/etc/sysconfig/
129 cp %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/qpsmtpd-forkserver
130 cp %{SOURCE3} $RPM_BUILD_ROOT/usr/share/qpsmtpd/plugins/logging/file_connection
131 mkdir -p $RPM_BUILD_ROOT/var/spool/qpsmtpd
132 mkdir -p $RPM_BUILD_ROOT/var/log/qpsmtpd
133 mkdir -p $RPM_BUILD_ROOT/etc/xinetd.d
134 cp %{SOURCE4} $RPM_BUILD_ROOT/etc/xinetd.d/smtp
135 mkdir -p $RPM_BUILD_ROOT/usr/sbin
136 cp %{SOURCE5} $RPM_BUILD_ROOT/usr/sbin/in.smtp
137
138
139 [ -x /usr/lib/rpm/brp-compress ] && /usr/lib/rpm/brp-compress
140
141 find $RPM_BUILD_ROOT/usr \( -name perllocal.pod -o -name .packlist \) -exec rm {} \;
142 find $RPM_BUILD_ROOT/usr -type f -print | \
143 sed "s@^$RPM_BUILD_ROOT@@g" | \
144 grep -v /Apache |
145 grep -v /Danga |
146 grep -v Qpsmtpd/ConfigServer.pm |
147 grep -v Qpsmtpd/PollServer.pm > qpsmtpd-%{version}-filelist
148 if [ "$(cat qpsmtpd-%{version}-filelist)X" = "X" ] ; then
149 echo "ERROR: EMPTY FILE LIST"
150 exit -1
151 fi
152 find $RPM_BUILD_ROOT/usr -type f -path '*/Apache*' -print | \
153 sed "s@^$RPM_BUILD_ROOT@@g" > qpsmtpd-apache-%{version}-filelist
154
155 %files
156 %defattr(-,root,root)
157 /usr/sbin/in.smtp
158 /usr/bin/qpsmtpd
159 /usr/bin/qpsmtpd-forkserver
160 /usr/lib/perl5/site_perl/Qpsmtpd.pm
161 /usr/lib/perl5/site_perl/Qpsmtpd/Plugin.pm
162 /usr/lib/perl5/site_perl/Qpsmtpd/Constants.pm
163 /usr/lib/perl5/site_perl/Qpsmtpd/Command.pm
164 /usr/lib/perl5/site_perl/Qpsmtpd/TcpServer.pm
165 /usr/lib/perl5/site_perl/Qpsmtpd/Connection.pm
166 /usr/lib/perl5/site_perl/Qpsmtpd/Transaction.pm
167 /usr/lib/perl5/site_perl/Qpsmtpd/Postfix/Constants.pm
168 /usr/lib/perl5/site_perl/Qpsmtpd/Postfix/pf2qp.pl
169 /usr/lib/perl5/site_perl/Qpsmtpd/TcpServer/Prefork.pm
170 /usr/lib/perl5/site_perl/Qpsmtpd/Auth.pm
171 /usr/lib/perl5/site_perl/Qpsmtpd/Utils.pm
172 /usr/lib/perl5/site_perl/Qpsmtpd/SelectServer.pm
173 /usr/lib/perl5/site_perl/Qpsmtpd/DSN.pm
174 /usr/lib/perl5/site_perl/Qpsmtpd/SMTP/Prefork.pm
175 /usr/lib/perl5/site_perl/Qpsmtpd/SMTP.pm
176 /usr/lib/perl5/site_perl/Qpsmtpd/Address.pm
177 /usr/lib/perl5/site_perl/Qpsmtpd/Postfix.pm
178 /usr/share/man/man3/Qpsmtpd::Command.3pm.gz
179 /usr/share/man/man3/Qpsmtpd.3pm.gz
180 /usr/share/man/man3/Qpsmtpd::Transaction.3pm.gz
181 /usr/share/man/man3/Qpsmtpd::Constants.3pm.gz
182 /usr/share/man/man3/Qpsmtpd::ConfigServer.3pm.gz
183 /usr/share/man/man3/Qpsmtpd::DSN.3pm.gz
184 /usr/share/man/man3/Qpsmtpd::Postfix.3pm.gz
185 /usr/share/man/man3/Qpsmtpd::Address.3pm.gz
186 /usr/share/man/man3/Qpsmtpd::Connection.3pm.gz
187 /usr/share/qpsmtpd/plugins/check_loop
188 /usr/share/qpsmtpd/plugins/check_relay
189 /usr/share/qpsmtpd/plugins/sender_permitted_from
190 /usr/share/qpsmtpd/plugins/count_unrecognized_commands
191 /usr/share/qpsmtpd/plugins/spamassassin
192 /usr/share/qpsmtpd/plugins/check_badrcptto
193 /usr/share/qpsmtpd/plugins/rcpt_ok
194 /usr/share/qpsmtpd/plugins/domainkeys
195 /usr/share/qpsmtpd/plugins/virus/klez_filter
196 /usr/share/qpsmtpd/plugins/virus/check_for_hi_virus
197 /usr/share/qpsmtpd/plugins/virus/uvscan
198 /usr/share/qpsmtpd/plugins/virus/kavscanner
199 /usr/share/qpsmtpd/plugins/virus/hbedv
200 /usr/share/qpsmtpd/plugins/virus/clamav
201 /usr/share/qpsmtpd/plugins/virus/clamdscan
202 /usr/share/qpsmtpd/plugins/virus/aveclient
203 /usr/share/qpsmtpd/plugins/virus/sophie
204 /usr/share/qpsmtpd/plugins/virus/bitdefender
205 /usr/share/qpsmtpd/plugins/queue/smtp-forward
206 /usr/share/qpsmtpd/plugins/queue/qmail-queue
207 /usr/share/qpsmtpd/plugins/queue/maildir
208 /usr/share/qpsmtpd/plugins/queue/exim-bsmtp
209 /usr/share/qpsmtpd/plugins/queue/postfix-queue
210 /usr/share/qpsmtpd/plugins/http_config
211 /usr/share/qpsmtpd/plugins/quit_fortune
212 /usr/share/qpsmtpd/plugins/milter
213 /usr/share/qpsmtpd/plugins/auth/authnull
214 /usr/share/qpsmtpd/plugins/auth/authdeny
215 /usr/share/qpsmtpd/plugins/auth/auth_flat_file
216 /usr/share/qpsmtpd/plugins/auth/auth_cvm_unix_local
217 /usr/share/qpsmtpd/plugins/auth/auth_vpopmail_sql
218 /usr/share/qpsmtpd/plugins/auth/auth_ldap_bind
219 /usr/share/qpsmtpd/plugins/tls_cert
220 /usr/share/qpsmtpd/plugins/logging/warn
221 /usr/share/qpsmtpd/plugins/logging/syslog
222 /usr/share/qpsmtpd/plugins/logging/adaptive
223 /usr/share/qpsmtpd/plugins/logging/file
224 /usr/share/qpsmtpd/plugins/logging/devnull
225 /usr/share/qpsmtpd/plugins/logging/file_connection
226 /usr/share/qpsmtpd/plugins/content_log
227 /usr/share/qpsmtpd/plugins/tls
228 /usr/share/qpsmtpd/plugins/check_spamhelo
229 /usr/share/qpsmtpd/plugins/check_norelay
230 /usr/share/qpsmtpd/plugins/check_earlytalker
231 /usr/share/qpsmtpd/plugins/hosts_allow
232 /usr/share/qpsmtpd/plugins/check_badmailfrom
233 /usr/share/qpsmtpd/plugins/dns_whitelist_soft
234 /usr/share/qpsmtpd/plugins/dnsbl
235 /usr/share/qpsmtpd/plugins/ident/geoip
236 /usr/share/qpsmtpd/plugins/ident/p0f
237 /usr/share/qpsmtpd/plugins/relay_only
238 /usr/share/qpsmtpd/plugins/parse_addr_withhelo
239 /usr/share/qpsmtpd/plugins/require_resolvable_fromhost
240 /usr/share/qpsmtpd/plugins/rhsbl
241 /usr/share/qpsmtpd/plugins/dont_require_anglebrackets
242 /usr/share/qpsmtpd/plugins/check_badrcptto_patterns
243 /usr/share/qpsmtpd/plugins/greylisting
244 /usr/share/qpsmtpd/plugins/check_basicheaders
245 /usr/share/qpsmtpd/plugins/check_badmailfromto
246 %doc CREDITS Changes LICENSE README README.plugins STATUS
247 /etc/init.d/qpsmtpd-forkserver
248 %config(noreplace) /etc/qpsmtpd/*
249 %config(noreplace) /etc/xinetd.d/smtp
250 %config(noreplace) /etc/sysconfig/qpsmtpd-forkserver
251
252 %files apache -f qpsmtpd-apache-%{version}-filelist
253 %defattr(-,root,root)
254
255 %files async
256 %defattr(-,root,root)
257 /usr/sbin/qpsmtpd-async
258 /usr/lib/perl5/site_perl/Danga/Client.pm
259 /usr/lib/perl5/site_perl/Danga/TimeoutSocket.pm
260 /usr/lib/perl5/site_perl/Qpsmtpd/ConfigServer.pm
261 /usr/lib/perl5/site_perl/Qpsmtpd/PollServer.pm
262 /usr/share/qpsmtpd/plugins/async/check_earlytalker
263 /usr/share/qpsmtpd/plugins/async/dnsbl
264 /usr/share/qpsmtpd/plugins/async/require_resolvable_fromhost
265
266 %changelog
267 * Mon Jan 7 2008 Stephen Noble <support@dungog.net> 0.40-1.9.sme
268 - fix uninitialized value in spamassassin plugin [SME: 3340]
269
270 * Mon Jan 7 2008 Stephen Noble <support@dungog.net> 0.40-1.8.sme
271 - change to badrcptto plugin [SME: 3476]
272
273 * Tue Oct 16 2007 Charlie Brady <charlie_brady@mitel.com> 0.40-1.7.sme
274 - Add support for disconnect option in rhsbl plugin [SME: 3390]
275
276 * Sat Jun 30 2007 Shad L. Lords <slords@mail.com> 0.40-1.6.sme
277 - Move clamav headers to top to not mess up message signing.
278
279 * Thu Jun 28 2007 Gavin Weight <gweight@gmail.com> 0.40-1.5.sme
280 - Remove the scriptlets within the .spec file. [SME: 3112]
281
282 * Mon Jun 25 2007 Shad L. Lords <slords@mail.com> 0.40-1.4.sme
283 - Deny soft if clamscan fails [SME: 3098]
284
285 * Fri Jun 15 2007 Shad L. Lords <slords@mail.com> 0.40-1.3.sme
286 - Fix clamd.conf path for clamav plugin [SME: 3067]
287
288 * Thu Jun 14 2007 Shad L. Lords <slords@mail.com> 0.40-1.2.sme
289 - Fix clamav patch so service starts [SME: 3065]
290
291 * Thu Jun 14 2007 Shad L. Lords <slords@mail.com> 0.40-1.1.sme
292 - Update for smeserver [SME: 3065]
293
294 * Tue Jun 12 2007 <hjp@hjp.at> 0.40-1.0
295 - updated to 0.40 - no code change.
296
297 * Thu Jun 07 2007 <hjp@hjp.at> 0.40-0.2
298 - unset environment variables which are normally tainted in perl.
299 - updated to 0.40rc1
300 - added dependency on Net::IP (needed by some plugins)
301
302 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.5
303 - moved environment cleanup into start() function, otherwise
304 LANG just gets reinitialized.
305
306 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.4
307 - split qpsmtpd-async into a separate package to avoid dependency
308 on ParaDNS.
309
310 * Sat May 05 2007 <hjp@hjp.at> 0.33-0.3
311 - also unset LANG, LC_ALL and LC_TIME in startup script to prevent
312 locale specific Received headers (bug reported by Dominik Meyer)
313
314 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.2
315 - 0.3x branch has been merged back to trunk.
316 Got current snapshot (r715) from trunk.
317
318 * Sun Feb 25 2007 <hjp@hjp.at> 0.33-0.1
319 - Start forkserver via "daemon" (Gavin Carr)
320 - Fixed 'service qpsmtpd-forkserver status' (Gavin Carr)
321 - Changed policy for config files to noreplace (Gavin Carr)
322
323 * Sun Nov 05 2006 <hjp@hjp.at> 0.33-0.0
324 - Upgraded to current snapshot from 0.3x branch (which should become
325 0.33 soon-ish)
326 - included xinetd-support again.
327
328 * Sat Mar 18 2006 <hjp@hjp.at> 0.32-2
329 - fix dnsbl to check whether answer fits query.
330 - randomize Net::DNS ids for qpsmtpd-forkserver child processes.
331
332 * Wed Mar 08 2006 <hjp@hjp.at> 0.32-1
333 - New upstream 0.32
334 - rc-file unsets PERL_UNICODE (bug #38397)
335
336 * Sat Jan 28 2006 <hjp@hjp.at> 0.31.1-3
337 - Use ${SOURCE*} macros to refer to source files
338 - Avoid invoking rpm and other cleanup in %pre section
339 - Invoke chkconfig in %post.
340 - (Thanks to Josko Plazonic for the reporting these problems and
341 suggesting fixes)
342
343 * Tue Nov 30 2005 <hjp@hjp.at> 0.31.1-2
344 - Revision 170 of plugins/loggin/file_connection:
345 Return DECLINED from open_log.
346 Open log in write_log if it isn't already open.
347
348 * Tue Nov 29 2005 <hjp@hjp.at> 0.31.1-1
349 - Commented out queue plugins from sample config
350 - Added dependencies
351 - Create smtpd user if it doesn't exist
352 - Added /var/log/qpsmtpd and /var/spool/qpsmtpd
353
354 * Sat Nov 26 2005 <hjp@hjp.at>
355 - Added file_connection plugin
356 - Startup file for qpsmtpd-forkserver now uses --detach and assumes that
357 a suitable logging module is configured (file_connection by default)
358
359 * Wed Nov 23 2005 <hjp@hjp.at>
360 - Forkserver drops privileges before loading plugins now.
361
362 * Sun Nov 20 2005 <hjp@hjp.at>
363 - New upstream 0.31.1
364
365 * Mon Nov 14 2005 <hjp@hjp.at> 0.31-8
366 - New upstream 0.31rc3.
367 - pre-connection patch slightly simplified since upstream fixed one of
368 the bugs.
369
370 * Tue Aug 23 2005 <hjp@hjp.at>
371 - forced INSTALLSITELIB=/usr/lib/perl5/site_perl as suggested by
372 Charlie Brady.
373
374 * Sat Aug 20 2005 <hjp@hjp.at> 0.31-7
375 - RC2 from upstream.
376 - Removed patches which aren't applied from spec file.
377
378 * Fri Jul 22 2005 <hjp@hjp.at> 0.31-6
379 - New upstream snapshot from 0.31 branch: svn revision 509.
380
381 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-5
382 - include only /etc/init.d/qpsmtpd-forkserver, not /etc/init.d
383 it conflicts with old initscripts packages.
384
385 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-4
386 - removed tabs from forkserver
387
388 * Sun Jul 17 2005 <hjp@hjp.at> 0.31-3
389 - added startup script for forkserver
390 - changed BuildArchitectures to noarch.
391
392 * Sat Jul 16 2005 <hjp@hjp.at> 0.31-2
393 - pre-connection hook is now actually called, not just defined.
394
395 * Fri Jul 15 2005 <hjp@hjp.at> 0.31-1
396 - merged with 0.31. Most of my patches are now in the official release.
397 - merged Gavin's per-user-config patch with my dirs patch, since the
398 latter needs a way to turn off logging.
399 - added /etc/qpsmtpd/plugin_dir to package.
400
401 * Mon Jun 13 2005 <hjp@hjp.at> 0.29-6
402 - fixed removal of patch backup files
403 - fixed option --pid-file
404
405 * Sun Jun 12 2005 <hjp@hjp.at>
406 - avoid installing patch backup files
407 - split Apache::Qpsmtpd into separate package to avoid dependency hell.
408 - fixed URL
409 - changed group to Daemons.
410 - Fixed installation for newer versions of ExtUtils::MakeMaker
411
412 * Wed Jun 1 2005 <hjp@hjp.at> 0.29-5
413 - Really don't reap children in signal handler.
414
415 * Tue May 31 2005 <hjp@hjp.at> 0.29-4
416 - Return 421 for DENYSOFT_DISCONNECT
417 - Don't reap children in signal handler.
418
419 * Thu May 19 2005 <hjp@hjp.at> 0.29-3
420 - removed code to accept paths without <>.
421
422 * Thu May 19 2005 <hjp@hjp.at> 0.29-2
423 - added QPSMTPD_CONFIG env variable and plugin_dir config.
424 - added supplemental groups and support for pid file
425 - added shared_connect hook
426 - changed log level for SMTP dialog from DEBUG to INFO
427
428 * Thu Apr 21 2005 hjp@hjp.at
429 - added plugins, /etc and docs.
430
431 * Mon Apr 18 2005 hjp@hjp.at
432 - Specfile autogenerated
433

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