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

Annotation of /rpms/qpsmtpd/sme8/qpsmtpd.spec

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


Revision 1.5 - (hide annotations) (download)
Fri Jun 15 19:43:32 2007 UTC (17 years, 4 months ago) by slords
Branch: MAIN
CVS Tags: qpsmtpd-0_40-1_3_el5_sme
Changes since 1.4: +8 -3 lines
Updates

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

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