/[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.9 - (show annotations) (download)
Sat Jun 30 20:52:33 2007 UTC (16 years, 11 months ago) by slords
Branch: MAIN
Changes since 1.8: +1 -1 lines
Fix name

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

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