[packages/inn] - updated to 2.5.3 - updated PLD,asneeded,config,db,install,libdir,setgid patches - removed obsolete

qboosh qboosh at pld-linux.org
Sat Jun 15 19:05:46 CEST 2013


commit 6a4c37285d1084f7aa49173f8c20086eb756ff7b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sat Jun 15 19:05:54 2013 +0200

    - updated to 2.5.3
    - updated PLD,asneeded,config,db,install,libdir,setgid patches
    - removed obsolete ac253,ac25x,db4 patches
    - added flex patch (needed to build with recent flex/bison)
    - no more inndstart/startinnfeed; now there is single setuid root binary (innbind)
    - rnews no longer setuid root (no uucp mode by default)
    - own /var/log/news directory
    - fixed double message in init script
    - release 0.1 (needs some testing)

 inn-PLD.patch      | 155 +++++++++++++++++----------------------
 inn-ac253.patch    |  47 ------------
 inn-ac25x.patch    |  35 ---------
 inn-asneeded.patch |  29 +++++---
 inn-config.patch   | 194 ++++++++++++++++++++++--------------------------
 inn-db.patch       |  48 ++++++------
 inn-db4.patch      |  48 ------------
 inn-flex.patch     |  11 +++
 inn-install.patch  |  75 +++++--------------
 inn-libdir.patch   | 196 +++++++++++++++++++++++++++++++------------------
 inn-setgid.patch   | 169 +++---------------------------------------
 inn.init           |   4 +-
 inn.spec           | 212 ++++++++++++++++++++++++++++++++++++++++-------------
 13 files changed, 522 insertions(+), 701 deletions(-)
---
diff --git a/inn.spec b/inn.spec
index 2c3df8b..ff65327 100644
--- a/inn.spec
+++ b/inn.spec
@@ -11,12 +11,12 @@ Summary(pl.UTF-8):	INN, serwer nowinek
 Summary(pt_BR.UTF-8):	INN, InterNet News System (servidor news)
 Summary(tr.UTF-8):	INN, InterNet Haber Sistemi (haber sunucu)
 Name:		inn
-Version:	2.4.6
-Release:	8
+Version:	2.5.3
+Release:	0.1
 License:	distributable
 Group:		Networking/Daemons
 Source0:	ftp://ftp.isc.org/isc/inn/%{name}-%{version}.tar.gz
-# Source0-md5:	50741ff1b9c230af9109aafc7e98b1a2
+# Source0-md5:	353fe95232828ddbc80debff86c240bc
 Source1:	%{name}-default-active
 Source2:	%{name}-default-distributions
 Source3:	%{name}-default-newsgroups
@@ -30,26 +30,24 @@ Source10:	%{name}.tmpfiles
 Patch0:		%{name}-PLD.patch
 Patch1:		%{name}-install.patch
 Patch2:		%{name}-db.patch
-Patch3:		%{name}-ac25x.patch
-Patch4:		%{name}-ac253.patch
-Patch5:		%{name}-setgid.patch
-Patch6:		%{name}-db4.patch
-Patch7:		%{name}-config.patch
+Patch3:		%{name}-setgid.patch
+Patch4:		%{name}-config.patch
+Patch5:		%{name}-asneeded.patch
+Patch6:		%{name}-nnrpd_no_trace.patch
+Patch7:		%{name}-flex.patch
 Patch8:		%{name}-libdir.patch
-Patch9:		%{name}-asneeded.patch
-Patch10:	%{name}-nnrpd_no_trace.patch
 URL:		https://www.isc.org/software/inn/
-BuildRequires:	autoconf
+BuildRequires:	autoconf >= 2.61
 BuildRequires:	automake
 BuildRequires:	bison
-BuildRequires:	db-devel
+BuildRequires:	db-devel >= 4.4
 BuildRequires:	flex
 BuildRequires:	heimdal-devel
-BuildRequires:	libtool >= 1:1.4.2-9
+BuildRequires:	libtool >= 2:2
 BuildRequires:	openssl-devel >= 0.9.7d
 BuildRequires:	perl-devel >= 1:5.8.0
 BuildRequires:	rpm-perlprov
-BuildRequires:	rpmbuild(macros) >= 1.268
+BuildRequires:	rpmbuild(macros) >= 1.663
 Requires(post):	/bin/kill
 Requires(post):	/usr/bin/getent
 Requires(post):	/usr/sbin/usermod
@@ -75,10 +73,11 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define		_sysconfdir	/etc/news
 %define		_includedir	%{_prefix}/include/inn
 
+%define		skip_post_check_so	libstorage.so.*
 # /usr/bin/pullnews doesn't provide perl(Net::NNTP) - perl-libnet does.
-%define		_noautoprov	'perl(Net::NNTP)'
+%define		_noautoprov_perl	Net::NNTP
 # it's necessary only for sample nnrpd_auth.pl hook
-%define		_noautoreq	'perl(CDB_File)'
+%define		_noautoreq_perl		CDB_File
 
 %description
 INN is a news server, which can be set up to handle USENET news, as
@@ -99,8 +98,7 @@ jak również do obsługi ,,prywatnych'' grup w sieciach intranetowych.
 Całe mnóstwo pożytecznych informacji o konfigurowaniu INN-a znajdziesz
 w katalogu %{_docdir}/%{name}-%{version}.
 
-Jeśli chcesz żeby innreport generował wykresy musisz zainstalować
-pakiet perl-GD.
+Aby innreport generował wykresy, trzeba zainstalować pakiet perl-GD.
 
 %description -l pt_BR.UTF-8
 INN é um servidor de news, que pode ser configurado para manipular
@@ -252,44 +250,45 @@ sunucuya makaleyi yollar.
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
-%patch6
+%patch6 -p1
 %patch7 -p1
 %patch8 -p1
-%patch9 -p1
-%patch10 -p1
 
 touch innfeed/*.[ly]
 
 %build
 %{__libtoolize}
+# not updated automatically by libtool
+cp -f /usr/share/aclocal/{libtool,lt*}.m4 m4
 cp -f /usr/share/automake/config.* support
 %{__aclocal}
 %{__autoconf}
 %{__autoheader} -I include
 %configure \
 	CPPFLAGS="-D_GNU_SOURCE" \
-	--with-news-user=news \
 	--with-news-group=news \
 	--with-news-master=news \
+	--with-news-user=news \
 	--with-control-dir=%{_datadir}/news/control \
 	--with-db-dir=/var/lib/news \
-	--with-etc-dir=%{_sysconfdir} \
 	--with-filter-dir=%{_datadir}/news/filter \
+	--with-http-dir=%{_datadir}/news/http \
+	--with-innlib-dir=%{_datadir}/news \
+	--with-libperl-dir=%{perl_vendorlib} \
 	--with-log-dir=/var/log/news \
 	--with-run-dir=/var/run/news \
 	--with-spool-dir=/var/spool/news \
-	--with-lib-dir=%{_datadir}/news \
 	--with-tmp-dir=/var/spool/news/incoming/tmp \
+	--with-berkeleydb=%{_prefix} \
+	--with-openssl=%{_prefix} \
 	--with-perl \
 	--with-sendmail=/usr/lib/sendmail \
-	--with-openssl=%{_prefix} \
-	--with-berkeleydb=%{_prefix} \
+	--enable-ipv6 \
 	%{?with_largefiles:--enable-largefiles} \
-	%{!?with_largefiles:--enable-tagged-hash} \
+	--enable-libtool \
 	--enable-shared \
 	--enable-static \
-	--enable-libtool \
-	--enable-ipv6
+	%{!?with_largefiles:--enable-tagged-hash}
 
 %{__make} all \
 	PATHFILTER=%{_datadir}/news/filter \
@@ -308,6 +307,7 @@ install -d $RPM_BUILD_ROOT/etc/{news/pgp,rc.d/init.d,cron.d,logrotate.d} \
 
 %{__make} install \
 	DESTDIR=$RPM_BUILD_ROOT \
+	BACKUP_OPTION= \
 	PATHFILTER=%{_datadir}/news/filter \
 	PATHCONTROL=%{_datadir}/news/control \
 	PATHRNEWS=%{_libdir}/news/rnews \
@@ -327,7 +327,7 @@ install %{SOURCE8} $RPM_BUILD_ROOT%{_mandir}/pl/man1/getlist.1
 install %{SOURCE9} $RPM_BUILD_ROOT%{_mandir}/pl/man8/innd.8
 install %{SOURCE10} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
 
-rm -f $RPM_BUILD_ROOT/var/lib/news/history
+%{__rm} $RPM_BUILD_ROOT/var/lib/news/history
 
 umask 002
 :> $RPM_BUILD_ROOT%{_sysconfdir}/subscriptions
@@ -337,17 +337,17 @@ touch $RPM_BUILD_ROOT/var/lib/news/history
 
 LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir} $RPM_BUILD_ROOT%{_bindir}/makehistory \
 	-a $RPM_BUILD_ROOT/var/lib/news/active \
-	-i -r -f $RPM_BUILD_ROOT/var/lib/news/history || :
+	-r -f $RPM_BUILD_ROOT/var/lib/news/history || :
 
 # Fix perms in sample directory to avoid bogus dependencies
 find samples -name "*.in" -exec chmod a-x {} \;
 
 # remove files in conflict with cleanfeed
-rm -f $RPM_BUILD_ROOT%{_datadir}/news/filter/filter_innd.*
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/news/filter/filter_innd.*
 
 # remove unpackaged files
-rm -rf $RPM_BUILD_ROOT%{_prefix}/doc
-rm -f $RPM_BUILD_ROOT%{_bindir}/rc.news
+%{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/rc.news
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -416,6 +416,8 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 # LOGS
 /usr/lib/tmpfiles.d/%{name}.conf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/inn
+# note: innd (and maybe others) creates files in this directory
+%attr(771,root,news) %dir /var/log/news
 %attr(770,news,news) %dir /var/run/news
 
 # SPOOL
@@ -443,26 +445,33 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/actsync.ign
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/buffindexed.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/control.ctl
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/control.ctl.local
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cycbuff.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/distrib.pats
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/distributions
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/expire.ctl
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/incoming.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/inn.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innfeed.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innreport.conf
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innshellvars.local
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innshellvars.pl.local
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innshellvars.tcl.local
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/innwatch.ctl
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/localgroups
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/moderators
-%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/motd.news
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/motd.innd
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/motd.nnrpd
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/news2mail.cf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/newsfeeds
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nnrpd.track
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nntpsend.ctl
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nocem.ctl
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ovdb.conf
-%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/overview.fmt
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/passwd.nntp
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/radius.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/readers.conf
-%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl.conf
+%attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/send-uucp.cf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/storage.conf
 %attr(640,root,news) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/subscriptions
 %attr(755,root,news) %dir %{_sysconfdir}/pgp
@@ -470,6 +479,8 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,news) %dir %{_datadir}/news
 %dir %{_datadir}/news/control
 %dir %{_datadir}/news/filter
+%dir %{_datadir}/news/http
+%{_datadir}/news/http/innreport.css
 
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/innreport_inn.pm
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/innshellvars
@@ -478,11 +489,13 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/INN.py
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/filter_nnrpd.pl
-%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/filter.tcl
+%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd.py
+%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd_access.pl
+%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd_access.py
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd_auth.pl
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd_auth.py
+%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/nnrpd_dynamic.py
 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/startup_innd.pl
-%config(noreplace) %verify(not md5 mtime size) %{_datadir}/news/filter/startup.tcl
 
 %attr(755,root,root) %{_datadir}/news/control/checkgroups.pl
 %attr(755,root,root) %{_datadir}/news/control/ihave.pl
@@ -493,6 +506,11 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_datadir}/news/control/senduuname.pl
 %attr(755,root,root) %{_datadir}/news/control/version.pl
 
+%dir %{perl_vendorlib}/INN
+%{perl_vendorlib}/INN/Config.pm
+%dir %{perl_vendorlib}/INN/Utils
+%{perl_vendorlib}/INN/Utils/Shlock.pm
+
 %attr(755,root,news) %dir %{_libdir}/news
 %dir %{_libdir}/news/auth
 %dir %{_libdir}/news/auth/generic
@@ -504,11 +522,6 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_libdir}/news/auth/resolv/*
 %attr(755,root,root) %{_libdir}/news/rnews/*
 
-# SUID
-%attr(4754,root,news) %{_bindir}/inndstart
-%attr(4754,root,news) %{_bindir}/startinnfeed
-%attr(4754,root,news) %{_bindir}/rnews
-
 # BINARIES
 %attr(755,root,root) %{_bindir}/actmerge
 %attr(755,root,root) %{_bindir}/actsync
@@ -516,6 +529,7 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_bindir}/archive
 %attr(755,root,root) %{_bindir}/batcher
 %attr(755,root,root) %{_bindir}/buffchan
+%attr(755,root,root) %{_bindir}/buffindexed_d
 %attr(755,root,root) %{_bindir}/cnfsheadconf
 %attr(755,root,root) %{_bindir}/cnfsstat
 %attr(755,root,root) %{_bindir}/cnfsstat.cron
@@ -531,9 +545,10 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_bindir}/fastrm
 %attr(755,root,root) %{_bindir}/filechan
 %attr(755,root,root) %{_bindir}/getlist
-%attr(755,root,root) %{_bindir}/gpgverify
 %attr(755,root,root) %{_bindir}/grephistory
 %attr(755,root,root) %{_bindir}/imapfeed
+# suid root to bind sockets
+%attr(4754,root,news) %{_bindir}/innbind
 %attr(755,root,root) %{_bindir}/inncheck
 %attr(755,root,root) %{_bindir}/innconfval
 %attr(755,root,root) %{_bindir}/innd
@@ -563,6 +578,7 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_bindir}/procbatch
 %attr(755,root,root) %{_bindir}/prunehistory
 %attr(755,root,root) %{_bindir}/pullnews
+%attr(755,root,root) %{_bindir}/rnews
 %attr(755,root,root) %{_bindir}/scanlogs
 %attr(755,root,root) %{_bindir}/scanspool
 %attr(755,root,root) %{_bindir}/send-ihave
@@ -577,6 +593,7 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %attr(755,root,root) %{_bindir}/sm
 %attr(755,root,root) %{_bindir}/tally.control
 %attr(755,root,root) %{_bindir}/tdx-util
+%attr(755,root,root) %{_bindir}/tinyleaf
 %attr(755,root,root) %{_bindir}/writelog
 
 # MAN
@@ -585,7 +602,6 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %{_mandir}/man1/getlist.1*
 %{_mandir}/man1/grephistory.1*
 %{_mandir}/man1/innconfval.1*
-%{_mandir}/man1/innfeed.1*
 %{_mandir}/man1/innmail.1*
 %{_mandir}/man1/nntpget.1*
 %{_mandir}/man1/pgpverify.1*
@@ -595,8 +611,94 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %{_mandir}/man1/shrinkfile.1*
 %{_mandir}/man1/simpleftp.1*
 %{_mandir}/man1/sm.1*
-%{_mandir}/man1/startinnfeed.1*
-%{_mandir}/man[58]/*
+%{_mandir}/man3/INN::Config.3pm*
+%{_mandir}/man3/INN::Utils::Shlock.3pm*
+%{_mandir}/man5/active.5*
+%{_mandir}/man5/active.times.5*
+%{_mandir}/man5/buffindexed.conf.5*
+%{_mandir}/man5/control.ctl.5*
+%{_mandir}/man5/cycbuff.conf.5*
+%{_mandir}/man5/distrib.pats.5*
+%{_mandir}/man5/distributions.5*
+%{_mandir}/man5/expire.ctl.5*
+%{_mandir}/man5/history.5*
+%{_mandir}/man5/incoming.conf.5*
+%{_mandir}/man5/inn.conf.5*
+%{_mandir}/man5/innfeed.conf.5*
+%{_mandir}/man5/innwatch.ctl.5*
+%{_mandir}/man5/localgroups.5*
+%{_mandir}/man5/moderators.5*
+%{_mandir}/man5/motd.innd.5*
+%{_mandir}/man5/motd.news.5*
+%{_mandir}/man5/motd.nnrpd.5*
+%{_mandir}/man5/newsfeeds.5*
+%{_mandir}/man5/newsgroups.5*
+%{_mandir}/man5/newslog.5*
+%{_mandir}/man5/nnrpd.track.5*
+%{_mandir}/man5/nntpsend.ctl.5*
+%{_mandir}/man5/nocem.ctl.5*
+%{_mandir}/man5/ovdb.5*
+%{_mandir}/man5/passwd.nntp.5*
+%{_mandir}/man5/radius.conf.5*
+%{_mandir}/man5/readers.conf.5*
+%{_mandir}/man5/storage.conf.5*
+%{_mandir}/man5/subscriptions.5*
+%{_mandir}/man8/actsync.8*
+%{_mandir}/man8/actsyncd.8*
+%{_mandir}/man8/archive.8*
+%{_mandir}/man8/batcher.8*
+%{_mandir}/man8/buffchan.8*
+%{_mandir}/man8/ckpasswd.8*
+%{_mandir}/man8/cnfsheadconf.8*
+%{_mandir}/man8/cnfsstat.8*
+%{_mandir}/man8/controlchan.8*
+%{_mandir}/man8/ctlinnd.8*
+%{_mandir}/man8/cvtbatch.8*
+%{_mandir}/man8/docheckgroups.8*
+%{_mandir}/man8/domain.8*
+%{_mandir}/man8/expire.8*
+%{_mandir}/man8/expireover.8*
+%{_mandir}/man8/expirerm.8*
+%{_mandir}/man8/filechan.8*
+%{_mandir}/man8/ident.8*
+%{_mandir}/man8/imapfeed.8*
+%{_mandir}/man8/innbind.8*
+%{_mandir}/man8/inncheck.8*
+%{_mandir}/man8/innd.8*
+%{_mandir}/man8/inndf.8*
+%{_mandir}/man8/innfeed.8*
+%{_mandir}/man8/innreport.8*
+%{_mandir}/man8/innstat.8*
+%{_mandir}/man8/innupgrade.8*
+%{_mandir}/man8/innwatch.8*
+%{_mandir}/man8/innxbatch.8*
+%{_mandir}/man8/innxmit.8*
+%{_mandir}/man8/inpaths.8*
+%{_mandir}/man8/mailpost.8*
+%{_mandir}/man8/makedbz.8*
+%{_mandir}/man8/makehistory.8*
+%{_mandir}/man8/mod-active.8*
+%{_mandir}/man8/news.daily.8*
+%{_mandir}/man8/news2mail.8*
+%{_mandir}/man8/ninpaths.8*
+%{_mandir}/man8/nnrpd.8*
+%{_mandir}/man8/nntpsend.8*
+%{_mandir}/man8/ovdb_*.8*
+%{_mandir}/man8/overchan.8*
+%{_mandir}/man8/perl-nocem.8*
+%{_mandir}/man8/procbatch.8*
+%{_mandir}/man8/prunehistory.8*
+%{_mandir}/man8/radius.8*
+%{_mandir}/man8/rc.news.8*
+%{_mandir}/man8/scanlogs.8*
+%{_mandir}/man8/scanspool.8*
+%{_mandir}/man8/send-nntp.8*
+%{_mandir}/man8/send-uucp.8*
+%{_mandir}/man8/sendinpaths.8*
+%{_mandir}/man8/tally.control.8*
+%{_mandir}/man8/tdx-util.8*
+%{_mandir}/man8/tinyleaf.8*
+%{_mandir}/man8/writelog.8*
 %lang(pl) %{_mandir}/pl/man1/getlist.1*
 %lang(pl) %{_mandir}/pl/man8/innd.8*
 
@@ -618,7 +720,19 @@ sed -e 's/^\(listenonipv6\)/#\1/;s/^bindipv6address/bindaddress6/;s/^sourceipv6a
 %{_libdir}/libinnhist.la
 %{_libdir}/libstorage.la
 %{_includedir}
-%{_mandir}/man3/*
+%{_mandir}/man3/clientlib.3*
+%{_mandir}/man3/dbz.3*
+%{_mandir}/man3/inndcomm.3*
+%{_mandir}/man3/libauth.3*
+%{_mandir}/man3/libinn.3*
+%{_mandir}/man3/libinnhist.3*
+%{_mandir}/man3/libstorage.3*
+# XXX: too generic name?
+%{_mandir}/man3/list.3*
+%{_mandir}/man3/qio.3*
+# XXX: too generic name?
+%{_mandir}/man3/tst.3*
+%{_mandir}/man3/uwildmat.3*
 
 %files static
 %defattr(644,root,root,755)
diff --git a/inn-PLD.patch b/inn-PLD.patch
index 3d1b725..5446ef6 100644
--- a/inn-PLD.patch
+++ b/inn-PLD.patch
@@ -1,45 +1,33 @@
-diff -Nur inn-2.4.0.orig/doc/man/rnews.1 inn-2.4.0/doc/man/rnews.1
---- inn-2.4.0.orig/doc/man/rnews.1	2003-05-09 06:25:27.000000000 +0200
-+++ inn-2.4.0/doc/man/rnews.1	2003-06-29 12:58:27.000000000 +0200
-@@ -67,7 +67,7 @@
- is defined and the command is any other word, then
- .I rnews
- will try to execute a program with that name in the directory
--.IR <pathbin\ in\ inn.conf>/bin/rnews.libexec .
-+.IR /usr/lib*/news/rnews .
- 
- The batch will be fed into the program's standard input, and the
- standard output will be read back as input into
-diff -Nur inn-2.4.0.orig/include/paths.h.in inn-2.4.0/include/paths.h.in
---- inn-2.4.0.orig/include/paths.h.in	2003-05-09 06:25:27.000000000 +0200
-+++ inn-2.4.0/include/paths.h.in	2003-06-29 12:57:56.000000000 +0200
-@@ -19,12 +19,12 @@
+--- inn-2.5.3/doc/man/rnews.1.orig	2013-06-11 17:19:04.427402611 +0200
++++ inn-2.5.3/doc/man/rnews.1	2013-06-11 17:41:12.624041596 +0200
+@@ -181,7 +181,7 @@
+ .PP
+ Otherwise, if the command is any other word, then \fBrnews\fR will try to
+ execute a program with that name, looking for it in the directory
+-\&\fIpathbin\fR/rnews.libexec.  The rest of the batch will be fed to that
++/usr/lib*/news/rnews .  The rest of the batch will be fed to that
+ program's standard input, and the standard output from the program will be
+ treated as if it were the original input to \fBrnews\fR.  \s-1INN\s0 comes with three
+ such standard batch processors:
+--- inn-2.5.3/include/inn/paths.h.in.orig	2013-06-11 17:42:12.677373675 +0200
++++ inn-2.5.3/include/inn/paths.h.in	2013-06-11 17:49:38.687364380 +0200
+@@ -22,12 +22,12 @@
  /* Default prefix path is pathbin. */
- #define _PATH_NNRPD		"nnrpd"
- #define _PATH_NNTPD		"nnrpd"
--#define _PATH_AUTHDIR		"auth"
-+#define _PATH_AUTHDIR		"@libdir@/news/auth"
- #define _PATH_AUTHDIR_GENERIC	"generic"
- #define _PATH_AUTHDIR_NOPASS	"resolv"
- #define _PATH_AUTHDIR_PASSWD	"passwd"
- #define _PATH_CTLINND		"ctlinnd"
--#define _PATH_RNEWSPROGS	"rnews.libexec"
-+#define _PATH_RNEWSPROGS	"@libdir@/news/rnews"
+ #define INN_PATH_NNRPD                  "nnrpd"
+ #define INN_PATH_NNTPD                  "nnrpd"
+-#define INN_PATH_AUTHDIR                "auth"
++#define INN_PATH_AUTHDIR                "@libdir@/news/auth"
+ #define INN_PATH_AUTHDIR_GENERIC        "generic"
+ #define INN_PATH_AUTHDIR_NOPASS         "resolv"
+ #define INN_PATH_AUTHDIR_PASSWD         "passwd"
+ #define INN_PATH_CTLINND                "ctlinnd"
+-#define INN_PATH_RNEWSPROGS             "rnews.libexec"
++#define INN_PATH_RNEWSPROGS             "@libdir@/news/rnews"
  
  /* Default prefix path is pathfilter. */
- #define _PATH_TCL_STARTUP	"startup.tcl"
-diff -Nur inn-2.4.0.orig/Makefile inn-2.4.0/Makefile
+ #define INN_PATH_PERL_STARTUP_INND      "startup_innd.pl"
 --- inn-2.4.0.orig/Makefile	2003-05-09 06:25:27.000000000 +0200
 +++ inn-2.4.0/Makefile	2003-06-29 12:57:10.000000000 +0200
-@@ -75,7 +75,7 @@
- ##  Installation rules.  make install installs everything; make update only
- ##  updates the binaries, scripts, and documentation and leaves config
- ##  files alone.
--install: directories
-+install:
- 	@for D in $(ALLDIRS) ; do \
- 	    echo '' ; \
- 	    cd $$D && $(MAKE) install || exit 1 ; cd .. ; \
 @@ -91,9 +91,9 @@
  directories:
  	@chmod +x support/install-sh
@@ -52,71 +40,66 @@ diff -Nur inn-2.4.0.orig/Makefile inn-2.4.0/Makefile
  
  update: 
  	@chmod +x support/install-sh
---- inn-2.4.2.orig/Makefile.global.in	2003-05-09 06:25:27.000000000 +0200
-+++ inn-2.4.2/Makefile.global.in	2003-06-29 12:59:13.000000000 +0200
-@@ -213,7 +213,7 @@
- PATHAUTH        = $(PATHBIN)/auth
- PATHAUTHRESOLV  = $(PATHAUTH)/resolv
- PATHAUTHPASSWD  = $(PATHAUTH)/passwd
--PATHRNEWS       = $(PATHBIN)/rnews.libexec
-+PATHRNEWS       = @libdir@/news/rnews
- PATHARCHIVE     = $(PATHSPOOL)/archive
- PATHARTICLES    = $(PATHSPOOL)/articles
- PATHINCOMING    = $(PATHSPOOL)/incoming
-@@ -234,16 +234,7 @@
- ##  configure; inews and rnews are special and have configure flags to
- ##  control how they're installed.  See INSTALL for more information.
+--- inn-2.5.3/Makefile.global.in.orig	2013-06-11 17:54:53.957357808 +0200
++++ inn-2.5.3/Makefile.global.in	2013-06-11 17:57:11.437354942 +0200
+@@ -250,7 +250,7 @@
+ PATHAUTH	= $(PATHBIN)/auth
+ PATHAUTHRESOLV	= $(PATHAUTH)/resolv
+ PATHAUTHPASSWD	= $(PATHAUTH)/passwd
+-PATHRNEWS	= $(PATHBIN)/rnews.libexec
++PATHRNEWS	= @libdir@/news/rnews
+ PATHARCHIVE	= $(PATHSPOOL)/archive
+ PATHARTICLES	= $(PATHSPOOL)/articles
+ PATHINCOMING	= $(PATHSPOOL)/incoming
+@@ -282,8 +282,8 @@
+ RNEWSMODE	= @RNEWSMODE@
+ FILEMODE	= @FILEMODE@
+ 
+-OWNER		= -o $(RUNASUSER) -g $(RUNASGROUP)
+-ROWNER		= -o $(RUNASUSER) -g $(RNEWSGROUP)
++OWNER		=
++ROWNER		=
  
--NEWSUSER        = @NEWSUSER@
--NEWSGROUP       = @NEWSGRP@
--
--INEWSMODE       = @INEWSMODE@
--RNEWSMODE       = @RNEWSMODE@
- FILEMODE        = @FILEMODE@
--
--OWNER           = -o $(NEWSUSER) -g $(NEWSGROUP)
--ROWNER          = -o $(NEWSUSER) -g @RNEWSGRP@
--
- INSTALL         = $(top)/support/install-sh -c
+ INSTALL		= $(top)/support/install-sh -c
  
- ##  Installation commands.  These commands are used by the installation
-diff -Nur inn-2.4.0.orig/scripts/scanlogs.in inn-2.4.0/scripts/scanlogs.in
---- inn-2.4.0.orig/scripts/scanlogs.in	2003-05-09 06:25:27.000000000 +0200
-+++ inn-2.4.0/scripts/scanlogs.in	2003-06-29 12:58:56.000000000 +0200
-@@ -11,7 +11,7 @@
- ##  then get a better egrep, like the FSF one.
+--- inn-2.5.3/scripts/scanlogs.in.orig	2013-06-11 17:57:46.774020873 +0200
++++ inn-2.5.3/scripts/scanlogs.in	2013-06-11 17:59:15.287352361 +0200
+@@ -10,7 +10,7 @@
+ ##	norotate	Do not rotate logfiles.
  
  ##  Directory where old log files are kept.
 -OLD=${MOST_LOGS}/OLD
 +OLD=/var/log/archive/news
- ##  If you want to archive the active file, enable this line.
- ACTIVEFILE=${ACTIVE}
- ##  Number of lines of error in each category to report.
---- inn-2.4.2/scripts/inncheck.in.orig	2004-12-22 05:21:19.000000000 +0100
-+++ inn-2.4.2/scripts/inncheck.in	2004-12-28 20:36:22.804969760 +0100
-@@ -43,7 +43,7 @@
-     'passwd.nntp',	"$inn::pathetc/passwd.nntp",
-     'readers.conf',	"$inn::pathetc/readers.conf",
-     'rnews',		"$inn::pathbin/rnews",
--    'rnewsprogs',	"$inn::pathbin/rnews.libexec",
+ 
+ ##  Files defined in innshellvars.  We repeat them for clarity.
+ ERRLOG=${MOST_LOGS}/errlog
+--- inn-2.5.3/scripts/inncheck.in.orig	2013-06-11 17:59:47.974018346 +0200
++++ inn-2.5.3/scripts/inncheck.in	2013-06-11 18:00:16.837351078 +0200
+@@ -44,7 +44,7 @@
+     'passwd.nntp',	"$INN::Config::pathetc/passwd.nntp",
+     'readers.conf',	"$INN::Config::pathetc/readers.conf",
+     'rnews',		"$INN::Config::rnews",
+-    'rnewsprogs',	"$INN::Config::pathbin/rnews.libexec",
 +    'rnewsprogs',	"@libdir@/news/rnews",
-     'spooltemp',	"$inn::pathtmp",
-     'spool',		"$inn::patharticles",
-     'spoolnews',	"$inn::pathincoming"
---- inn-2.4.2/frontends/Makefile.orig	2004-12-22 05:21:19.000000000 +0100
-+++ inn-2.4.2/frontends/Makefile	2004-12-28 20:37:09.988796728 +0100
-@@ -32,10 +32,10 @@
+     'spooltemp',	"$INN::Config::pathtmp",
+     'spool',		"$INN::Config::patharticles",
+     'spoolnews',	"$INN::Config::pathincoming",
+--- inn-2.5.3/frontends/Makefile.orig	2013-06-11 17:59:47.977351680 +0200
++++ inn-2.5.3/frontends/Makefile	2013-06-11 18:01:39.537349354 +0200
+@@ -36,11 +36,11 @@
  	for F in getlist innconfval sm ; do \
  	    $(LI_XPUB) $$F $D$(PATHBIN)/$$F ; \
  	done
+-	$(CP_XPUB) bunbatch $D$(PATHBIN)/rnews.libexec/bunbatch
 -	$(CP_XPUB) c7unbatch $D$(PATHBIN)/rnews.libexec/c7unbatch
 -	$(LI_XPUB) decode $D$(PATHBIN)/rnews.libexec/decode
 -	$(LI_XPUB) encode $D$(PATHBIN)/rnews.libexec/encode
 -	$(CP_XPUB) gunbatch $D$(PATHBIN)/rnews.libexec/gunbatch
++	$(CP_XPUB) bunbatch $D$(PATHRNEWS)/bunbatch
 +	$(CP_XPUB) c7unbatch $D$(PATHRNEWS)/c7unbatch
 +	$(LI_XPUB) decode $D$(PATHRNEWS)/decode
 +	$(LI_XPUB) encode $D$(PATHRNEWS)/encode
 +	$(CP_XPUB) gunbatch $D$(PATHRNEWS)/gunbatch
  
- clean:
- 	rm -f *.o $(ALL)
+ bootstrap: $(MAN)
+ 
diff --git a/inn-ac253.patch b/inn-ac253.patch
deleted file mode 100644
index cf7aabe..0000000
--- a/inn-ac253.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- inn-2.4.3/configure.in.orig	2008-02-17 20:05:39.668274380 +0100
-+++ inn-2.4.3/configure.in	2008-02-17 21:43:24.334482662 +0100
-@@ -577,7 +577,7 @@
- AC_SEARCH_LIBS(setproctitle, util,
-     [AC_DEFINE(HAVE_SETPROCTITLE, 1,
-         [Define if you have the setproctitle function.])],
--    [LIBOBJS="$LIBOBJS setproctitle.o"
-+    [AC_LIBOBJ([setproctitle])
-      AC_CHECK_FUNCS(pstat)])
- 
- dnl The rat's nest of networking libraries.  The common cases are not to
-@@ -1125,7 +1125,7 @@
- )])
- AC_MSG_RESULT($ac_cv_type_$1)
- if test x"$ac_cv_type_$1" = xno ; then
--    AC_DEFINE_UNQUOTED($1, $2)
-+    AC_DEFINE_UNQUOTED($1, $2, [Define if $1 type does not exist])
- fi])
- 
- INN_CHECK_TYPE(sig_atomic_t, int, [#include <signal.h>])
-@@ -1373,7 +1373,7 @@
-     AC_DEFINE([HAVE_INET_NTOA], 1,
-               [Define if your system has a working inet_ntoa function.])
- else
--    LIBOBJS="$LIBOBJS inet_ntoa.${ac_objext}"
-+    AC_LIBOBJ([inet_ntoa])
- fi])
- INN_FUNC_INET_NTOA
- 
-@@ -1521,7 +1521,7 @@
-     AC_DEFINE([HAVE_SNPRINTF], 1,
-         [Define if your system has a working snprintf function.])
- else
--    LIBOBJS="$LIBOBJS snprintf.${ac_objext}"
-+    AC_LIBOBJ([snprintf])
- fi])
- INN_FUNC_SNPRINTF
- 
-@@ -1627,7 +1627,7 @@
-             inn_cv_func_mmap=no,
-             inn_cv_func_mmap=no)])
- if test $inn_cv_func_mmap = yes ; then
--    AC_DEFINE(HAVE_MMAP)
-+    AC_DEFINE(HAVE_MMAP, 1, [Define if mmap function works])
- fi])
- 
- dnl Source used by INN_FUNC_MMAP_NEEDS_MSYNC.
diff --git a/inn-ac25x.patch b/inn-ac25x.patch
deleted file mode 100644
index 82ea6b4..0000000
--- a/inn-ac25x.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- inn-2.4.0/configure.in.orig	Tue Sep 11 21:44:00 2001
-+++ inn-2.4.0/configure.in	Tue Sep 11 21:56:49 2001
-@@ -45,8 +45,8 @@
- 
- dnl Linking against in-tree libraries need to know the current directory (the
- dnl top of the build directory, not the source directory).
--builddir=`pwd`
--AC_SUBST(builddir)
-+xxx_builddir=`pwd`
-+AC_SUBST(xxx_builddir)
- 
- dnl Earlier versions of INN used --with-largefiles, which was the wrong flag
- dnl from the perspective of what --with and --enable are supposed to mean.
-@@ -1206,8 +1206,8 @@
- else
-     ifelse([$5], , :, [$5])
- fi
--undefine([AC_TYPE_NAME])dnl
--undefine([AC_CV_NAME])dnl
-+ifdef([AC_TYPE_NAME],[undefine([AC_TYPE_NAME])])dnl
-+ifdef([AC_TYPE_NAME],[undefine([AC_CV_NAME])])dnl
- ])
- 
- dnl Find a 32 bit type, by trying likely candidates.  First, check for the C9X
---- inn-2.4.0/Makefile.global.in.orig	2003-06-29 13:29:30.000000000 +0200
-+++ inn-2.4.0/Makefile.global.in	2003-06-29 13:38:39.000000000 +0200
-@@ -33,7 +33,7 @@
- ##  libraries built as part of INN.  Using relative paths confuses libtool
- ##  when linking the test suite.
- 
--builddir	= @builddir@
-+builddir	= @xxx_builddir@
- 
- ##  Basic compiler settings.  COPT is the variable to override on the make
- ##  command line to change the optimization or add warning flags (such as
diff --git a/inn-asneeded.patch b/inn-asneeded.patch
index 280b7c5..9db1e8e 100644
--- a/inn-asneeded.patch
+++ b/inn-asneeded.patch
@@ -1,16 +1,17 @@
---- inn-2.4.3/backends/Makefile.orig	2006-03-20 05:14:57.000000000 +0100
-+++ inn-2.4.3/backends/Makefile	2008-02-17 21:26:43.305437267 +0100
-@@ -62,15 +62,15 @@
+--- inn-2.5.3/backends/Makefile.orig	2013-06-13 17:45:04.427101736 +0200
++++ inn-2.5.3/backends/Makefile	2013-06-13 17:51:35.673760252 +0200
+@@ -84,16 +84,16 @@
  	@exit 1
  
  actsync:	actsync.o    $(LIBINN)	; $(LINK) actsync.o    $(INNLIBS)
 -archive:	archive.o    $(BOTH)	; $(LINK) archive.o    $(STORELIBS)
 -batcher:	batcher.o    $(BOTH)	; $(LINK) batcher.o    $(STORELIBS)
 -cvtbatch:	cvtbatch.o   $(BOTH)	; $(LINK) cvtbatch.o   $(STORELIBS)
--inndf:		inndf.o      $(BOTH)	; $(LINK) inndf.o      $(STORELIBS)
 +archive:	archive.o    $(BOTH)	; $(LINK) archive.o    -Wl,-no-as-needed $(STORELIBS)
 +batcher:	batcher.o    $(BOTH)	; $(LINK) batcher.o    -Wl,-no-as-needed $(STORELIBS)
 +cvtbatch:	cvtbatch.o   $(BOTH)	; $(LINK) cvtbatch.o   -Wl,-no-as-needed $(STORELIBS)
+ innbind:	innbind.o    $(LIBINN)	; $(LINK) innbind.o    $(INNLIBS)
+-inndf:		inndf.o      $(BOTH)	; $(LINK) inndf.o      $(STORELIBS)
 +inndf:		inndf.o      $(BOTH)	; $(LINK) inndf.o      -Wl,-no-as-needed $(STORELIBS)
  innxbatch:	innxbatch.o  $(LIBINN)	; $(LINK) innxbatch.o  $(INNLIBS)
  innxmit:	innxmit.o    $(BOTH)	; $(LINK) innxmit.o    $(STORELIBS)
@@ -53,14 +54,22 @@
  
  ovdb_init.o: ovdb_init.c
  	$(CC) $(CFLAGS) $(BERKELEY_DB_CFLAGS) -c $<
---- inn-2.4.3/innfeed/Makefile.orig	2006-03-20 05:14:57.000000000 +0100
-+++ inn-2.4.3/innfeed/Makefile	2008-02-17 20:57:09.756368465 +0100
-@@ -62,7 +62,7 @@
+--- inn-2.5.3/innfeed/Makefile.orig	2013-06-13 17:45:04.430435070 +0200
++++ inn-2.5.3/innfeed/Makefile	2013-06-13 17:52:19.910425989 +0200
+@@ -52,7 +52,7 @@
  
  ##  Compilation rules.
  
--INNFEEDLIBS	= $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(EXTSTORAGELIBS) \
-+INNFEEDLIBS	= -Wl,-no-as-needed $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(EXTSTORAGELIBS) \
- 		  $(SASLLIB) $(LIBS)
+-INNFEEDLIBS	= $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(LIBS)
++INNFEEDLIBS	= -Wl,-no-as-needed $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(LIBS)
  
  config_y.c config_y.h: configfile.y
+ 	$(YACC) -d $?
+--- inn-2.5.3/storage/buffindexed/ovmethod.mk.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/storage/buffindexed/ovmethod.mk	2013-06-13 18:00:36.177082319 +0200
+@@ -5,4 +5,4 @@
+ 
+ buffindexed/buffindexed_d: buffindexed/buffindexed_d.o libstorage.$(EXTLIB) $(LIBHIST)
+ 	$(LIBLD) $(LDFLAGS) -o $@ buffindexed/buffindexed_d.o \
+-	    $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(LIBS)
++	    -Wl,-no-as-needed $(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(LIBS)
diff --git a/inn-config.patch b/inn-config.patch
index 4256035..72c7808 100644
--- a/inn-config.patch
+++ b/inn-config.patch
@@ -1,14 +1,3 @@
-diff -Nur old/samples/buffindexed.conf new/samples/buffindexed.conf
---- old/samples/buffindexed.conf	2004-01-07 22:47:19.000000000 +0000
-+++ new/samples/buffindexed.conf	2004-08-07 18:36:53.000000000 +0000
-@@ -7,5 +7,5 @@
- # index(0-65535) : path to buffer file : 
- #       length of buffer in kilobytes in decimal (1KB = 1024 bytes)
- 
--0:/var/news/spool/overview/OV1:1536000
--1:/var/news/spool/overview/OV2:1536000
-+0:/var/spool/news/overview/OV1:1536000
-+1:/var/spool/news/overview/OV2:1536000
 diff -Nur old/samples/cycbuff.conf new/samples/cycbuff.conf
 --- old/samples/cycbuff.conf	2004-01-07 22:47:19.000000000 +0000
 +++ new/samples/cycbuff.conf	2004-08-06 12:33:41.000000000 +0000
@@ -25,124 +14,115 @@ diff -Nur old/samples/cycbuff.conf new/samples/cycbuff.conf
  
  # 2. Meta-cyclic buffers
  # Format:
---- inn-2.4.4/samples/inn.conf.in.orig	2008-05-05 12:18:36.000000000 +0200
-+++ inn-2.4.4/samples/inn.conf.in	2008-06-12 23:34:03.819271092 +0200
+--- inn-2.5.3/samples/inn.conf.in.orig	2013-06-13 15:49:58.887245670 +0200
++++ inn-2.5.3/samples/inn.conf.in	2013-06-13 16:20:45.710540510 +0200
 @@ -17,11 +17,11 @@
  # The following parameters are most likely to need setting, although the
  # defaults generated by configure may be reasonable.
  
--mta:                    "@SENDMAIL@ -oi -oem %s"
-+mta:                    "@SENDMAIL@ -oi %s"
- organization:           "A poorly-installed InterNetNews site"
- ovmethod:               tradindexed
- hismethod:              hisv6
--pathhost:               @HOSTNAME@
-+pathhost:               localhost
- pathnews:               @prefix@
+-mta:                         "@SENDMAIL@ -oi -oem %s"
++mta:                         "@SENDMAIL@ -oi %s"
+ organization:                "A poorly-installed InterNetNews site"
+ ovmethod:                    tradindexed
+ hismethod:                   hisv6
+-pathhost:                    @HOSTNAME@
++pathhost:                    localhost
+ pathnews:                    @prefix@
  
- # General Settings
-@@ -34,8 +34,8 @@
+ #runasuser:
+@@ -37,8 +37,8 @@
  # Feed Configuration
  
- artcutoff:              10
+ artcutoff:                   10
 -#bindaddress:
 -#bindaddress6:
-+#bindaddress:		all
-+#bindaddress6:		all
- dontrejectfiltered:	false
- hiscachesize:           0
- ignorenewsgroups:       false
-@@ -45,13 +45,13 @@
- maxconnections:         50
++#bindaddress:                 all
++#bindaddress6:                all
+ dontrejectfiltered:          false
+ hiscachesize:                256
+ ignorenewsgroups:            false
+@@ -48,13 +48,13 @@
+ maxconnections:              50
  #pathalias:
  #pathcluster:
--pgpverify:              @pgpverify@
-+pgpverify:              true
- port:                   119
- refusecybercancels:     false
- remembertrash:          true
+-pgpverify:                   @DO_PGPVERIFY@
++pgpverify:                   true
+ port:                        119
+ refusecybercancels:          false
+ remembertrash:               true
 -#sourceaddress:
 -#sourceaddress6:
--verifycancels:          false
-+#sourceaddress:		any
-+#sourceaddress6:	any
-+verifycancels:          true
- wanttrash:              false
- wipcheck:               5
- wipexpire:              10
-@@ -64,6 +64,7 @@
- mergetogroups:          false
- overcachesize:          15
+-verifycancels:               false
++#sourceaddress:               any
++#sourceaddress6:              any
++verifycancels:               true
+ verifygroups:                false
+ wanttrash:                   false
+ wipcheck:                    5
+@@ -71,6 +71,7 @@
+ nfswriter:                   false
+ overcachesize:               64
  #ovgrouppat:
 +# note: must not be changed to false if using tradspool
- storeonxref:            true
- useoverchan:            false
- wireformat:             false
-@@ -72,9 +73,9 @@
+ storeonxref:                 true
+ useoverchan:                 false
+ wireformat:                  false
+@@ -78,7 +79,7 @@
  
  # Reading
  
--allownewnews:           true
-+allownewnews:           false
- articlemmap:            false
--clienttimeout:          600
-+clienttimeout:          1800
- initialtimeout:         10
- msgidcachesize:         10000
- nnrpdcheckart:          true
-@@ -103,8 +104,8 @@
- addnntppostingdate:     true
- addnntppostinghost:     true
- checkincludedtext:      false
+-allownewnews:                true
++allownewnews:                false
+ articlemmap:                 true
+ clienttimeout:               1800
+ initialtimeout:              10
+@@ -109,8 +110,8 @@
+ addnntppostingdate:          true
+ addnntppostinghost:          true
+ checkincludedtext:           false
 -#complaints:
 -#fromhost:
-+#complaints:		abuse at localhost
-+#fromhost:		""
- localmaxartsize:        1000000
++complaints:                  abuse at localhost
++#fromhost:                    ""
+ localmaxartsize:             1000000
  #moderatormailer:
- nnrpdauthsender:        false
-@@ -116,7 +117,7 @@
+ nnrpdauthsender:             false
+@@ -122,7 +123,7 @@
  # Posting -- Exponential Backoff
  
- backoffauth:            false
+ backoffauth:                 false
 -#backoffdb:
-+#backoffdb:		/var/lib/news/backoff
- backoffk:               1
- backoffpostfast:        0
- backoffpostslow:        1
-@@ -132,11 +133,11 @@
- innwatchpauseload:      1500
- innwatchsleeptime:      600
- innwatchspoolnodes:     200
--innwatchspoolspace:     8000
-+innwatchspoolspace:     25000
++#backoffdb:                   /var/lib/news/backoff
+ backoffk:                    1
+ backoffpostfast:             0
+ backoffpostslow:             1
+@@ -152,7 +153,7 @@
  
  # Logging
  
--docnfsstat:             false
-+docnfsstat:             true
- logartsize:             true
- logcancelcomm:          false
- logcycles:              3
-@@ -159,7 +160,7 @@
- keepmmappedthreshold:   1024
+-docnfsstat:                  false
++docnfsstat:                  true
+ htmlstatus:                  true
+ incominglogfrequency:        200
+ logartsize:                  true
+@@ -179,7 +180,7 @@
+ keepmmappedthreshold:        1024
  #maxcmdreadsize:
- maxforks:               10
--nicekids:               4
-+nicekids:               0
- nicenewnews:            0
- nicennrpd:              0
- pauseretrytime:         300
-diff -Nur old/samples/newsfeeds.in new/samples/newsfeeds.in
---- old/samples/newsfeeds.in	2004-01-07 22:47:19.000000000 +0000
-+++ new/samples/newsfeeds.in	2004-08-07 20:39:24.000000000 +0000
-@@ -40,7 +40,17 @@
- 
- # Empty default subscription list, reject all incoming articles with a
- # distribution of "local" or "collabra-internal," accept all others.
+ maxforks:                    10
+-nicekids:                    4
++nicekids:                    0
+ nicenewnews:                 0
+ nicennrpd:                   0
+ pauseretrytime:              300
+--- inn-2.5.3/samples/newsfeeds.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/samples/newsfeeds.in	2013-06-13 16:26:55.857199461 +0200
+@@ -41,8 +41,18 @@
+ # Empty default subscription list, reject all incoming articles (including
+ # locally posted articles) with a distribution of "local" or
+ # "collabra-internal", accept all others.
 -ME:!*/!local,!collabra-internal::
 +#ME:!*/!local,!collabra-internal::
-+
+ 
 +## Default of  everything to everybody except for junk, control, anything
 +## with "local" as the newsgroup prefix (i.e. matches "localhost.stuff") or
 +## groups under foo. Articles posted to any group under alt.binaries.warez
@@ -152,23 +132,23 @@ diff -Nur old/samples/newsfeeds.in new/samples/newsfeeds.in
 +	:*, at alt.binaries.warez.*,!junk,!control*,!local*,!foo.*\
 +        /pl,world,usa,na,gnu,bionet,pubnet,u3b,eunet,vmsnet,inet,ddn,k12\
 +	::
- 
++ 
  # The same as the above, but would reject all posts that have
  # news.example.com in the path (posts passing through that site).
-@@ -122,4 +132,4 @@
- # INN).
- #capture\
+ #ME/news.example.com:!*/!local,!collabra-internal::
+@@ -139,4 +149,4 @@
+ # come with INN).
+ #capture!\
  #	:*/foo\
 -#	:Tp,H2:/usr/local/bin/capture %s
 +#	:Tp,H2:/usr/bin/capture %s
-diff -Nur old/samples/readers.conf new/samples/readers.conf
---- old/samples/readers.conf	2004-01-07 22:47:19.000000000 +0000
-+++ new/samples/readers.conf	2004-08-07 20:32:21.000000000 +0000
+--- inn-2.5.3/samples/readers.conf.orig	2013-06-13 15:49:58.903912336 +0200
++++ inn-2.5.3/samples/readers.conf	2013-06-13 16:28:23.533864301 +0200
 @@ -55,7 +55,7 @@
  # the local machine
  
  auth "localhost" {
--    hosts: "localhost, 127.0.0.1, stdin"
+-    hosts: "localhost, 127.0.0.1, ::1, stdin"
 +    hosts: "localhost, 127.0.0.1, ipv6-localhost, ::1, stdin"
      default: "<localhost>"
  }
diff --git a/inn-db.patch b/inn-db.patch
index e7563d5..a8dcddf 100644
--- a/inn-db.patch
+++ b/inn-db.patch
@@ -15,38 +15,32 @@
  # elif HAVE_GDBM_NDBM_H
  #  include <gdbm-ndbm.h>
  # elif HAVE_DB1_NDBM_H
---- inn-2.4.4/configure.in.orig	2008-05-05 12:18:36.000000000 +0200
-+++ inn-2.4.4/configure.in	2008-06-12 23:24:11.005485208 +0200
-@@ -670,8 +670,13 @@
-             fi
-         fi
+--- inn-2.5.3/m4/berkeleydb.m4.orig	2013-06-11 21:16:28.320439059 +0200
++++ inn-2.5.3/m4/berkeleydb.m4	2013-06-11 20:36:38.617155533 +0200
+@@ -33,8 +33,13 @@
+     if test x"$DB_DIR" = xyes ; then
+         AC_MSG_ERROR([cannot find Berkeley DB])
      else
-+	if test "$BERKELEY_DB_DIR" = "/usr" ; then
-+        BERKELEY_DB_LDFLAGS=
-+        BERKELEY_DB_CFLAGS=
++	if test x"$DB_DIR" = x"/usr" ; then
++	DB_CPPFLAGS=
++	DB_LDFLAGS=
 +	else
-         BERKELEY_DB_LDFLAGS="-L$BERKELEY_DB_DIR/lib"
-         BERKELEY_DB_CFLAGS="-I$BERKELEY_DB_DIR/include"
+         DB_CPPFLAGS="-I$DB_DIR/include"
+         DB_LDFLAGS="-L$DB_DIR/lib"
 +	fi
-         BERKELEY_DB_LIB="-ldb"
-         AC_MSG_RESULT($BERKELEY_DB_DIR)
+         DB_LIBS="-ldb"
+         AC_MSG_RESULT([$DB_DIR])
      fi
-@@ -993,17 +998,11 @@
- AC_HEADER_SYS_WAIT
- 
- dnl Generic checks for header files.
--AC_CHECK_HEADERS(crypt.h inttypes.h limits.h ndbm.h pam/pam_appl.h stdbool.h \
-+AC_CHECK_HEADERS(crypt.h inttypes.h limits.h pam/pam_appl.h stdbool.h \
-                  stddef.h stdint.h string.h sys/bitypes.h sys/filio.h \
-                  sys/loadavg.h sys/param.h sys/select.h sys/sysinfo.h \
-                  sys/time.h unistd.h)
+--- inn-2.5.3/configure.ac.orig	2013-06-11 21:17:03.440438325 +0200
++++ inn-2.5.3/configure.ac	2013-06-11 21:47:46.747066572 +0200
+@@ -384,10 +384,6 @@
+                   stdint.h string.h sys/bitypes.h sys/filio.h sys/loadavg.h \
+                   sys/select.h sys/time.h unistd.h])
  
 -dnl Some Linux systems have db1/ndbm.h instead of ndbm.h.  Others have
 -dnl gdbm-ndbm.h.
--if test x"$ac_cv_header_ndbm_h" = xno ; then
--    AC_CHECK_HEADERS(db1/ndbm.h gdbm-ndbm.h)
--fi
+-AC_CHECK_HEADERS([ndbm.h db1/ndbm.h gdbm-ndbm.h], [break])
 -
- dnl Check to see if herrno is declared.
- AC_DEFUN([INN_NEED_HERRNO_DECLARATION],
- [AC_CACHE_CHECK([whether h_errno must be declared], inn_cv_herrno_need_decl,
+ dnl Check for whether various symbols are declared.
+ AC_CHECK_DECLS([pread, pwrite, snprintf, setproctitle, strlcat,
+                 strlcpy, vsnprintf])
diff --git a/inn-db4.patch b/inn-db4.patch
deleted file mode 100644
index 804e26c..0000000
--- a/inn-db4.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- storage/ovdb/ovdb-private.h.orig	2003-05-09 04:25:27.000000000 +0000
-+++ storage/ovdb/ovdb-private.h	2003-12-04 18:03:59.000000000 +0000
-@@ -173,7 +173,7 @@
- #define TXN_START(label, tid) \
- label: { \
-   int txn_ret; \
--  txn_ret = txn_begin(OVDBenv->tx_info, NULL, &tid); \
-+  txn_ret = OVDBenv->tx_info->txn_begin(OVDBenv->tx_info, NULL, &tid); \
-   if (txn_ret != 0) { \
-     syslog(L_ERROR, "OVDB: " #label " txn_begin: %s", db_strerror(ret)); \
-     tid = NULL; \
-@@ -181,10 +181,10 @@
- }
- 
- #define TXN_RETRY(label, tid) \
--{ txn_abort(tid); goto label; }
-+{ tid->abort(tid); goto label; }
- 
--#define TXN_ABORT(label, tid) txn_abort(tid)
--#define TXN_COMMIT(label, tid) txn_commit(tid)
-+#define TXN_ABORT(label, tid) tid->abort(tid)
-+#define TXN_COMMIT(label, tid) tid->commit(tid)
- 
- #define TRYAGAIN EAGAIN
- 
-@@ -194,7 +194,7 @@
- #define TXN_START(label, tid) \
- label: { \
-   int txn_ret; \
--  txn_ret = txn_begin(OVDBenv, NULL, &tid, 0); \
-+  txn_ret = OVDBenv->txn_begin(OVDBenv, NULL, &tid, 0); \
-   if (txn_ret != 0) { \
-     syslog(L_ERROR, "OVDB: " #label " txn_begin: %s", db_strerror(ret)); \
-     tid = NULL; \
-@@ -202,10 +202,10 @@
- }
- 
- #define TXN_RETRY(label, tid) \
--{ txn_abort(tid); goto label; }
-+{ tid->abort(tid); goto label; }
- 
--#define TXN_ABORT(label, tid) txn_abort(tid)
--#define TXN_COMMIT(label, tid) txn_commit(tid, 0)
-+#define TXN_ABORT(label, tid) tid->abort(tid)
-+#define TXN_COMMIT(label, tid) tid->commit(tid, 0)
- 
- #define TRYAGAIN DB_LOCK_DEADLOCK
- 
diff --git a/inn-flex.patch b/inn-flex.patch
new file mode 100644
index 0000000..6b3c6bb
--- /dev/null
+++ b/inn-flex.patch
@@ -0,0 +1,11 @@
+--- inn-2.5.3/innfeed/configfile.l.orig	2013-06-13 17:24:55.700460265 +0200
++++ inn-2.5.3/innfeed/configfile.l	2013-06-13 17:32:01.870451380 +0200
+@@ -36,7 +36,7 @@
+ int yyget_lineno(void);
+ FILE *yyget_in(void);
+ FILE *yyget_out(void);
+-int yyget_leng(void);
++yy_size_t yyget_leng(void);
+ char *yyget_text(void);
+ int yyget_debug(void);
+ void yyset_lineno(int);
diff --git a/inn-install.patch b/inn-install.patch
index 7338edd..6b9626f 100644
--- a/inn-install.patch
+++ b/inn-install.patch
@@ -1,69 +1,28 @@
---- inn-2.3.1/Makefile.global.in.orig	Sun Jan 21 05:45:47 2001
-+++ inn-2.3.1/Makefile.global.in	Sun Jan 21 05:47:04 2001
-@@ -190,17 +190,17 @@
- ##  group-readable/group-executable file (only the news group).  inews and
- ##  rnews have their own special installation rules.
+--- inn-2.5.3/Makefile.global.in.orig	2013-06-11 18:02:09.360682066 +0200
++++ inn-2.5.3/Makefile.global.in	2013-06-11 18:04:16.297346087 +0200
+@@ -305,7 +305,7 @@
  
--LI_SPRI         = $(LIBTOOL) $(INSTALL) -o root -g $(NEWSGROUP) -m 4550 -B .OLD
--LI_XPRI         = $(LIBTOOL) $(INSTALL) $(OWNER) -m 0550 -B .OLD
--LI_XPUB         = $(LIBTOOL) $(INSTALL) $(OWNER) -m 0555 -B .OLD
-+LI_SPRI         = $(LIBTOOL) --mode=install $(INSTALL) -m 4550
-+LI_XPRI         = $(LIBTOOL) --mode=install $(INSTALL) -m 0550
-+LI_XPUB         = $(LIBTOOL) --mode=install $(INSTALL) -m 0555
+ BACKUP_OPTION	= -B .OLD
  
--LI_INEWS        = $(LIBTOOL) $(INSTALL) $(OWNER) -m $(INEWSMODE) -B .OLD
--LI_RNEWS        = $(LIBTOOL) $(INSTALL) $(ROWNER) -m $(RNEWSMODE) -B .OLD
-+LI_INEWS        = $(LIBTOOL) --mode=install $(INSTALL)
-+LI_RNEWS        = $(LIBTOOL) --mode=install $(INSTALL)
+-LI_SPRI		= $(LIBTOOLINST) $(INSTALL) -o root -g $(RUNASGROUP) -m 4550 $(BACKUP_OPTION)
++LI_SPRI		= $(LIBTOOLINST) $(INSTALL) -m 4550 $(BACKUP_OPTION)
+ LI_XPRI		= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m 0550 $(BACKUP_OPTION)
+ LI_XPUB		= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m 0555 $(BACKUP_OPTION)
  
--CP_RPRI         = $(INSTALL) $(OWNER) -m 0640 -B .OLD
--CP_RPUB         = $(INSTALL) $(OWNER) -m 0644 -B .OLD
--CP_XPRI         = $(INSTALL) $(OWNER) -m 0550 -B .OLD
--CP_XPUB         = $(INSTALL) $(OWNER) -m 0555 -B .OLD
-+CP_RPRI         = $(INSTALL) -m 0640
-+CP_RPUB         = $(INSTALL) -m 0644
-+CP_XPRI         = $(INSTALL) -m 0550
-+CP_XPUB         = $(INSTALL) -m 0555
- 
- ##  Some additional definitions needed by some versions of make, to ensure a
- ##  consistant set of variables are available.
---- inn-2.4.4/site/Makefile.orig	2008-05-05 12:18:36.000000000 +0200
-+++ inn-2.4.4/site/Makefile	2008-06-12 23:06:18.100345504 +0200
-@@ -132,15 +132,10 @@
+--- inn-2.5.3/site/Makefile.orig	2013-06-11 18:02:09.357348733 +0200
++++ inn-2.5.3/site/Makefile	2013-06-11 18:05:13.754011556 +0200
+@@ -145,13 +145,9 @@
  $D$(PATH_NEWSGROUPS):	; $(CP_DATA) newsgroups.minimal $@
  $D$(PATH_ACTIVE_TIMES):
  	touch $@
--	chown $(NEWSUSER) $@
--	chgrp $(NEWSGROUP) $@
+-	chown $(RUNASUSER) $@
+-	chgrp $(RUNASGROUP) $@
  	chmod $(FILEMODE) $@
  $D$(PATH_HISTORY):
  	touch $@
--	chown $(NEWSUSER) $@
--	chgrp $(NEWSGROUP) $@
+-	chown $(RUNASUSER) $@
+-	chgrp $(RUNASGROUP) $@
  	chmod $(FILEMODE) $@
--	$(PATHBIN)/makedbz -i -o
- 
- ##  Remove files that are unchanged from the release version.
- clean:
---- ./Makefile.global.in.org	2008-08-06 16:08:48.930217979 +0200
-+++ ./Makefile.global.in	2008-08-06 16:13:01.126442273 +0200
-@@ -262,7 +262,7 @@ CP_RPUB         = $(INSTALL) -m 0644
- CP_XPRI         = $(INSTALL) -m 0550
- CP_XPUB         = $(INSTALL) -m 0555
- 
--CP_DATA	        = $(INSTALL) $(OWNER) -m $(FILEMODE) -B .OLD
-+CP_DATA	        = $(INSTALL) $(OWNER) -m $(FILEMODE)
- 
- ##  How to install man pages.  Pick one of SOURCE, BSD4.4, NROFF-PACK, or
- ##  NROFF-PACK-SCO.  Used by doc/man/putman.sh; read that script for more
---- ./doc/man/Makefile.org	2008-06-29 19:56:57.000000000 +0200
-+++ ./doc/man/Makefile	2008-08-06 16:07:29.703558914 +0200
-@@ -5,7 +5,7 @@ include ../../Makefile.global
- top	= ../..
- 
- ##  Edit these if you need to.
--MANFLAGS = -c $(OWNER) -m 0444 -B .OLD
-+MANFLAGS = 
+-	test -z "$D" && $(PATHBIN)/makedbz -i -o
++	test -z "$D" && $(PATHBIN)/makedbz -i -o || :
  
- SEC1	= convdate.1 fastrm.1 getlist.1 grephistory.1 inews.1 innconfval.1 \
- 	innfeed.1 innmail.1 nntpget.1 pgpverify.1 pullnews.1 rnews.1 \
diff --git a/inn-libdir.patch b/inn-libdir.patch
index 4baf4f2..7df3304 100644
--- a/inn-libdir.patch
+++ b/inn-libdir.patch
@@ -1,81 +1,133 @@
---- inn-2.4.3/history/Makefile.orig	2006-03-20 05:14:57.000000000 +0100
-+++ inn-2.4.3/history/Makefile	2006-03-25 17:54:30.522169000 +0100
-@@ -21,7 +21,7 @@
- 	$(MAKE) COPT='$(WARNINGS)' all
+--- inn-2.5.3/samples/innreport.conf.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/samples/innreport.conf.in	2013-06-14 19:59:36.165132651 +0200
+@@ -10,7 +10,7 @@
  
- install: all
--	$(LI_XPUB) libinnhist.$(EXTLIB) $(D)$(PATHLIB)/libinnhist.$(EXTLIB)
-+	$(LI_XPUB) libinnhist.$(EXTLIB) $(D)$(PATHSLIB)/libinnhist.$(EXTLIB)
+ # Default parameters
+ section default {
+-	libpath         "@libdir@";
++	libpath         "@innlibdir@";
+ 	logpath		"@LOGDIR@";
+ 	unknown		true;        # want unknown entries.
+         html-unknown    true;        # want unknown entries in HTML reports. 
+--- inn-2.5.3/scripts/innshellvars.tcl.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/scripts/innshellvars.tcl.in	2013-06-14 20:10:44.008452064 +0200
+@@ -23,7 +23,7 @@
  
- library: libinnhist.$(EXTLIB)
+ set inn_newsbin "${inn_pathbin}"
+ set inn_newsetc "${inn_pathetc}"
+-set inn_newslib "@libdir@"
++set inn_newslib "@innlibdir@"
+ set inn_innddir "${inn_pathrun}"
+ set inn_locks "${inn_pathrun}"
+ set env(NEWSBIN) "$inn_newsbin"
+--- inn-2.5.3/scripts/innshellvars.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/scripts/innshellvars.in	2013-06-14 20:30:54.805093495 +0200
+@@ -20,7 +20,7 @@
  
-@@ -44,7 +44,7 @@
- libinnhist.la: $(OBJECTS) $(LIBSTORAGE) $(LIBINN)
- 	$(LIBLD) $(LDFLAGS) -o $@ $(LOBJECTS) \
- 	    $(LIBSTORAGE) $(LIBINN) $(EXTSTORAGELIBS) $(LIBS) \
--	    -rpath $(PATHLIB) -version-info 2:0:0
-+	    -rpath $(PATHSLIB) -version-info 2:0:0
+ NEWSBIN=${PATHBIN}
+ NEWSETC=${PATHETC}
+-NEWSLIB=@libdir@
++NEWSLIB=@innlibdir@
+ INNDDIR=${PATHRUN}
+ LOCKS=${PATHRUN}
+ export NEWSBIN NEWSETC NEWSLIB INNDDIR LOCKS
+--- inn-2.5.3/scripts/innshellvars.pl.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/scripts/innshellvars.pl.in	2013-06-14 20:31:17.728426352 +0200
+@@ -28,7 +28,7 @@
  
- libinnhist.a: $(OBJECTS)
- 	ar r $@ $(OBJECTS)
---- inn-2.4.3/lib/Makefile.orig	2006-03-20 05:14:57.000000000 +0100
-+++ inn-2.4.3/lib/Makefile	2006-03-25 17:54:11.484979250 +0100
-@@ -33,7 +33,7 @@
- 	$(MAKE) COPT='$(WARNINGS)' all
+ $newsbin = $pathbin;
+ $newsetc = $pathetc;
+-$newslib = "@libdir@";
++$newslib = "@innlibdir@";
+ $innddir = $pathrun;
+ $locks = $pathrun;
+ $ENV{'NEWSBIN'} = $newsbin;
+--- inn-2.5.3/Makefile.global.in.orig	2013-06-14 15:36:10.805462084 +0200
++++ inn-2.5.3/Makefile.global.in	2013-06-14 21:05:53.935049745 +0200
+@@ -225,6 +225,7 @@
+ docdir		= @docdir@
+ includedir	= @includedir@
+ libdir		= @libdir@
++datadir		= @datadir@
+ mandir		= @mandir@
+ sysconfdir	= @sysconfdir@
+ tmpdir		= @tmpdir@
+@@ -237,6 +238,7 @@
+ PATHMAN		= $(mandir)
+ PATHINCLUDE	= $(includedir)
+ PATHLIB		= $(libdir)
++PATHINNLIB	= @innlibdir@
+ PATHLIBPERL	= @LIBPERLDIR@
+ PATHCONTROL	= @CONTROLDIR@
+ PATHFILTER	= @FILTERDIR@
+--- inn-2.5.3/perl/INN/Config.pm.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/perl/INN/Config.pm.in	2013-06-14 21:06:40.531715437 +0200
+@@ -37,7 +37,7 @@
+ $spooltemp $path);
+ our $newshome = $pathnews;
+ our $home = $pathnews;
+-our $newslib = "@libdir@";
++our $newslib = "@innlibdir@";
+ our $newsbin = $pathbin;
+ our $controlprogs = $pathcontrol;
+ our $newslbin = "$pathnews/local";
+--- inn-2.5.3/support/fixscript.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/support/fixscript.in	2013-06-14 21:08:38.721712975 +0200
+@@ -25,6 +25,7 @@
+ prefix="@prefix@"
+ exec_prefix="@exec_prefix@"
+ libdir="@libdir@"
++innlibdir="@innlibdir@"
+ libperldir="@LIBPERLDIR@"
  
- install: all
--	$(LI_XPUB) libinn.$(EXTLIB) $D$(PATHLIB)/libinn.$(EXTLIB)
-+	$(LI_XPUB) libinn.$(EXTLIB) $D$(PATHSLIB)/libinn.$(EXTLIB)
+ # We can probably just assume sed is on the path, but since we have it, we may
+@@ -60,7 +61,7 @@
+ case "$interpreter" in
+ */sh|*SH*)
+     path="@SHELL@"
+-    lib=". $libdir/innshellvars"
++    lib=". $innlibdir/innshellvars"
+     ;;
+ */perl*|*PERL*)
+     path=`echo "$interpreter" | sed 's%^#! *[^ ][^ ]*%'"$PERLPATH%"`
+--- inn-2.5.3/support/fixconfig.in.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/support/fixconfig.in	2013-06-14 21:09:38.871711720 +0200
+@@ -17,6 +17,7 @@
+ bindir=@bindir@
+ libexecdir=@libexecdir@
+ libdir=@libdir@
++innlibdir=@innlibdir@
+ sbindir=@sbindir@
+ sysconfdir=@sysconfdir@
  
- clobber clean distclean:
- 	rm -f *.o *.lo libinn.la libinn.a parsedate.c parsedate
-@@ -46,7 +46,7 @@
+@@ -59,6 +60,7 @@
+      -e "s, at bindir[@],$bindir,g" \
+      -e "s, at libexecdir[@],$libexecdir,g" \
+      -e "s, at libdir[@],$libdir,g" \
++     -e "s, at innlibdir[@],$innlibdir,g" \
+      -e "s, at sbindir[@],$sbindir,g" \
+      -e "s, at sysconfdir[@],$sysconfdir,g" \
+      -e "s, at CONTROLDIR[@],$CONTROLDIR,g" \
+--- inn-2.5.3/m4/paths.m4.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/m4/paths.m4	2013-06-14 21:13:15.238373880 +0200
+@@ -47,6 +47,9 @@
+ _INN_ARG_DIR([tmp], ['${prefix}/tmp'], [tmpdir],
+     [AS_HELP_STRING([--with-tmp-dir=PATH],
+         [Path for temporary files [PREFIX/tmp]])])
++_INN_ARG_DIR([innlib], ['${datadir}/news'], [innlibdir],
++    [AS_HELP_STRING([--with-innlib-dir=PATH],
++        [Path to inn library scripts [DATADIR/news]])])
  
- libinn.la: $(OBJECTS) $(LOBJECTS)
- 	$(LIBLD) $(LDFLAGS) -o $@ $(LOBJECTS) $(LIBS) \
--	    -rpath $(PATHLIB) -version-info 2:0:0
-+	    -rpath $(PATHSLIB) -version-info 2:0:0
- 
- libinn.a: $(OBJECTS)
- 	ar r $@ $(OBJECTS)
---- inn-2.4.3/storage/Makefile.orig	2006-03-20 05:14:57.000000000 +0100
-+++ inn-2.4.3/storage/Makefile	2006-03-25 17:53:58.652177250 +0100
-@@ -22,7 +22,7 @@
- 	$(MAKE) COPT='$(WARNINGS)' all
- 
- install: all
--	$(LI_XPUB) libstorage.$(EXTLIB) $D$(PATHLIB)/libstorage.$(EXTLIB)
-+	$(LI_XPUB) libstorage.$(EXTLIB) $D$(PATHSLIB)/libstorage.$(EXTLIB)
- 	for F in $(PROGRAMS) ; do \
- 	    $(LI_XPRI) $$F $D$(PATHBIN)/`basename $$F` ; \
+ dnl Some additional paths used by inn/paths.h.
+ eval PATH_CONFIG="$sysconfdir"
+--- inn-2.5.3/scripts/Makefile.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/scripts/Makefile	2013-06-14 21:14:08.268372773 +0200
+@@ -27,7 +27,7 @@
+ 	done
+ 	for F in innreport_inn.pm innshellvars innshellvars.pl \
+ 	         innshellvars.tcl ; do \
+-	    $(CP_RPUB) $$F $D$(PATHLIB)/$$F ; \
++	    $(CP_RPUB) $$F $D$(PATHINNLIB)/$$F ; \
  	done
-@@ -48,7 +48,7 @@
- libstorage.la: $(OBJECTS) $(LIBINN)
- 	$(LIBLD) $(LDFLAGS) -o $@ $(LOBJECTS) \
- 	    $(LIBINN) $(EXTSTORAGELIBS) $(LIBS) \
--	    -rpath $(PATHLIB) -version-info 2:0:0
-+	    -rpath $(PATHSLIB) -version-info 2:0:0
  
- libstorage.a: $(OBJECTS)
- 	ar r $@ $(OBJECTS)
---- inn-2.4.3/Makefile.orig	2006-03-25 17:41:17.840629000 +0100
-+++ inn-2.4.3/Makefile	2006-03-25 17:53:18.333657500 +0100
-@@ -6,7 +6,7 @@
- ##  different mode than the rest.
- INSTDIRS      = $(PATHNEWS) $(PATHBIN) $(PATHAUTH) $(PATHAUTHRESOLV) \
- 		$(PATHAUTHPASSWD) $(PATHCONTROL) $(PATHFILTER) \
--		$(PATHRNEWS) $(PATHDB) $(PATHDOC) $(PATHETC) $(PATHLIB) \
-+		$(PATHRNEWS) $(PATHDB) $(PATHDOC) $(PATHETC) $(PATHLIB) $(PATHSLIB) \
- 		$(PATHMAN) $(MAN1) $(MAN3) $(MAN5) $(MAN8) $(PATHSPOOL) \
- 		$(PATHTMP) $(PATHARCHIVE) $(PATHARTICLES) $(PATHINCOMING) \
- 		$(PATHINBAD) $(PATHTAPE) $(PATHOVERVIEW) $(PATHOUTGOING) \
---- inn-2.4.3/Makefile.global.in.orig	2006-03-25 17:41:17.924634000 +0100
-+++ inn-2.4.3/Makefile.global.in	2006-03-25 17:53:38.622925500 +0100
-@@ -202,6 +202,7 @@
- PATHMAN         = @mandir@
- PATHINCLUDE     = @includedir@
- PATHLIB         = @LIBDIR@
-+PATHSLIB	= @libdir@
- PATHCONTROL     = @CONTROLDIR@
- PATHFILTER      = @FILTERDIR@
- PATHRUN         = @RUNDIR@
+ bootstrap:
diff --git a/inn-setgid.patch b/inn-setgid.patch
index 29af511..652f994 100644
--- a/inn-setgid.patch
+++ b/inn-setgid.patch
@@ -1,162 +1,11 @@
-diff -durN inn-2.4.0.orig/expire/expire.c inn-2.4.0/expire/expire.c
---- inn-2.4.0.orig/expire/expire.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/expire/expire.c	Fri Dec  5 09:50:12 2003
-@@ -8,6 +8,7 @@
- #include <ctype.h>
- #include <errno.h>
- #include <pwd.h>
-+#include <grp.h>
- #include <sys/stat.h>
- #include <syslog.h>
- #include <time.h>
-@@ -496,12 +497,19 @@
- setuid_news(void)
- {
-     struct passwd *pwd;
-+    struct group *grp;
- 
-     pwd = getpwnam(NEWSUSER);
-     if (pwd == NULL)
-         die("can't resolve %s to a UID (account doesn't exist?)", NEWSUSER);
--    if (getuid() == 0)
-+    grp = getgrnam(NEWSGRP);
-+    if (grp == NULL)
-+        die("can't resolve %s to a GID (account doesn't exist?)", NEWSGRP);
-+    if (getuid() == 0) {
-+        setgid(grp->gr_gid);
-+	initgroups(pwd->pw_name,grp->gr_gid);
-         setuid(pwd->pw_uid);
-+    }
-     if (getuid() != pwd->pw_uid)
-         die("must be run as %s", NEWSUSER);
- }
-diff -durN inn-2.4.0.orig/expire/expireover.c inn-2.4.0/expire/expireover.c
---- inn-2.4.0.orig/expire/expireover.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/expire/expireover.c	Fri Dec  5 09:50:22 2003
-@@ -12,6 +12,7 @@
- #include "clibrary.h"
- #include <errno.h>
- #include <pwd.h>
-+#include <grp.h>
- #include <signal.h>
- #include <syslog.h>
- 
-@@ -53,12 +54,19 @@
- setuid_news(void)
- {
-     struct passwd *pwd;
-+    struct group *grp;
- 
-     pwd = getpwnam(NEWSUSER);
-     if (pwd == NULL)
-         die("can't resolve %s to a UID (account doesn't exist?)", NEWSUSER);
--    if (getuid() == 0)
-+    grp = getgrnam(NEWSGRP);
-+    if (grp == NULL)
-+        die("can't resolve %s to a GID (account doesn't exist?)", NEWSGRP);
-+    if (getuid() == 0) {
-+        setgid(grp->gr_gid);
-+	initgroups(pwd->pw_name,grp->gr_gid);
-         setuid(pwd->pw_uid);
-+    }
-     if (getuid() != pwd->pw_uid)
-         die("must be run as %s", NEWSUSER);
- }
-diff -durN inn-2.4.0.orig/expire/makedbz.c inn-2.4.0/expire/makedbz.c
---- inn-2.4.0.orig/expire/makedbz.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/expire/makedbz.c	Fri Dec  5 09:50:35 2003
-@@ -7,6 +7,7 @@
- #include "clibrary.h"
- #include <errno.h>
- #include <pwd.h>
-+#include <grp.h>
- #include <syslog.h>  
- 
- #include "dbz.h"
-@@ -238,17 +239,23 @@
- setuid_news(void)
- {
-     struct passwd *pwd;
-+    struct group *grp;
- 
-     pwd = getpwnam(NEWSUSER);
-     if (pwd == NULL)
-         die("can't resolve %s to a UID (account doesn't exist?)", NEWSUSER);
--    if (getuid() == 0)
-+    grp = getgrnam(NEWSGRP);
-+    if (grp == NULL)
-+        die("can't resolve %s to a GID (account doesn't exist?)", NEWSGRP);
-+    if (getuid() == 0) {
-+        setgid(grp->gr_gid);
-+	initgroups(pwd->pw_name,grp->gr_gid);
-         setuid(pwd->pw_uid);
-+    }
-     if (getuid() != pwd->pw_uid)
-         die("must be run as %s", NEWSUSER);
+--- inn-2.5.3/lib/newsuser.c.orig	2012-06-15 20:25:36.000000000 +0200
++++ inn-2.5.3/lib/newsuser.c	2013-06-13 15:36:33.750595785 +0200
+@@ -93,6 +93,8 @@
+     if (getegid() != gid || getgid() != gid) {
+         die ("must be run as %s group", innconf->runasgroup);
+     }
++    const char *runasuser = innconf != NULL ? innconf->runasuser : RUNASUSER;
++    initgroups(runasuser, gid);
  }
  
--
- int
- main(int argc, char **argv)
- {
-diff -durN inn-2.4.0.orig/expire/makehistory.c inn-2.4.0/expire/makehistory.c
---- inn-2.4.0.orig/expire/makehistory.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/expire/makehistory.c	Fri Dec  5 09:50:52 2003
-@@ -9,6 +9,7 @@
- #include <assert.h>
- #include <errno.h>
- #include <pwd.h>
-+#include <grp.h>
- #include <syslog.h>  
- 
- #include "inn/buffer.h"
-@@ -714,17 +715,23 @@
- setuid_news(void)
- {
-     struct passwd *pwd;
-+    struct group *grp;
- 
-     pwd = getpwnam(NEWSUSER);
-     if (pwd == NULL)
-         die("can't resolve %s to a UID (account doesn't exist?)", NEWSUSER);
--    if (getuid() == 0)
-+    grp = getgrnam(NEWSGRP);
-+    if (grp == NULL)
-+        die("can't resolve %s to a GID (account doesn't exist?)", NEWSGRP);
-+    if (getuid() == 0) {
-+        setgid(grp->gr_gid);
-+	initgroups(pwd->pw_name,grp->gr_gid);
-         setuid(pwd->pw_uid);
-+    }
-     if (getuid() != pwd->pw_uid)
-         die("must be run as %s", NEWSUSER);
- }
- 
--
- int
- main(int argc, char **argv)
- {
-diff -durN inn-2.4.0.orig/innd/inndstart.c inn-2.4.0/innd/inndstart.c
---- inn-2.4.0.orig/innd/inndstart.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/innd/inndstart.c	Fri Dec  5 09:49:45 2003
-@@ -308,6 +308,7 @@
-     /* Now, permanently drop privileges. */
-     if (setgid(news_gid) < 0 || getgid() != news_gid)
-         sysdie("can't setgid to %lu", (unsigned long)news_gid);
-+    initgroups(NEWSUSER,news_gid);
-     if (setuid(news_uid) < 0 || getuid() != news_uid)
-         sysdie("can't setuid to %lu", (unsigned long)news_uid);
- 
-diff -durN inn-2.4.0.orig/innfeed/startinnfeed.c inn-2.4.0/innfeed/startinnfeed.c
---- inn-2.4.0.orig/innfeed/startinnfeed.c	Fri May  9 06:25:27 2003
-+++ inn-2.4.0/innfeed/startinnfeed.c	Fri Dec  5 09:49:45 2003
-@@ -97,6 +97,9 @@
- #endif /* HAVE_SETRLIMIT */
- 
-     /* Permanently drop privileges. */
-+    if (setgid(news_gid) < 0 || getgid() != news_gid)
-+        sysdie("can't setgid to %lu", (unsigned long) news_gid);
-+    initgroups(NEWSUSER,news_gid);
-     if (setuid(news_uid) < 0 || getuid() != news_uid)
-         sysdie("can't setuid to %lu", (unsigned long) news_uid);
- 
+ /*
diff --git a/inn.init b/inn.init
index 804a52e..ccb7910 100644
--- a/inn.init
+++ b/inn.init
@@ -37,7 +37,7 @@ start() {
 		fi
 
 		msg_starting "INN"
-		daemon --pidfile /var/run/news/innd.pid --user news inndstart
+		daemon --pidfile /var/run/news/innd.pid --user news innd
 		RETVAL=$?
 		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/inn
 		if is_yes "$DOINNWATCH" ; then
@@ -45,7 +45,7 @@ start() {
 			busy
 			daemon --fork --pidfile /var/run/news/innwatch.pid --user news /usr/bin/innwatch
 			RETVAL=$?
-			[ $RETVAL -eq 0 ] && touch /var/lock/subsys/innwatch && ok || fail
+			[ $RETVAL -eq 0 ] && touch /var/lock/subsys/innwatch
 		fi
 	else
 		msg_already_running "INN"
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/inn.git/commitdiff/6a4c37285d1084f7aa49173f8c20086eb756ff7b



More information about the pld-cvs-commit mailing list