Summary: The InterNetNews (INN) system, an Usenet news server. Name: inn Version: 2.4.3 Release: 0vl1 License: GPL Group: System Environment/Daemons Source0: ftp://ftp.isc.org/isc/inn/inn-%{version}.tar.gz Source2: inn-default-distributions Source4: inn-cron-expire Source5: inn-cron-rnews Source7: inn-cron-nntpsend Source8: innd.init Source10: inn-faq.tar.gz Patch: inn-2.4.3.rh.patch Patch2: inn-2.4.1.perl.patch Patch3: inn-2.4.1.headusage.patch Patch4: inn-2.4.1.pie.patch Patch6: inn-2.4.1.posix.patch Patch7: inn-2.4.3.warn.patch Patch8: inn-2.4.2-makedbz.patch Buildroot: %{_tmppath}/%{name}-%{version}-root BuildRequires: perl python db4-devel byacc pam-devel e2fsprogs-devel Prereq: /sbin/chkconfig, grep, coreutils, sed Requires: bash >= 2.0, cleanfeed, inews %description INN (InterNetNews) is a complete system for serving Usenet news and/or private newsfeeds. INN includes innd, an NNTP (NetNews Transport Protocol) server, and nnrpd, a newsreader that is spawned for each client. Both innd and nnrpd vary slightly from the NNTP protocol, but not in ways that are easily noticed. Install the inn package if you need a complete system for serving and reading Usenet news. You may also need to install inn-devel, if you are going to use a separate program which interfaces to INN, like newsgate or tin. %package devel Summary: The INN (InterNetNews) library. Summary(ja): インターネットニュースライブラリ Group: Development/Libraries Requires: inn = %{version} %description devel The inn-devel package contains the INN (InterNetNews) library, which several programs that interface with INN need in order to work (for example, newsgate and tin). If you are installing a program which must interface with the INN news system, you should install inn-devel. %package -n inews Summary: Sends Usenet articles to a local news server for distribution. Group: Applications/Internet %description -n inews The inews program is used by some news programs (for example, inn and trn) to post Usenet news articles to local news servers. Inews reads an article from a file or standard input, adds headers, performs some consistency checks and then sends the article to the local news server specified in the inn.conf file. Install inews if you need a program for posting Usenet articles to local news servers. %prep %setup -q -a 10 %patch -p1 -b .rh %patch2 -p1 -b .perl %patch3 -p1 -b .headusage %patch4 -p1 -b .pie %patch6 -p1 -b .posix %patch7 -p1 -b .warn %patch8 -p1 -b .makedbz perl -pi -e 's/LOCK_READ/LLOCK_READ/' `find . -type f` perl -pi -e 's/LOCK_WRITE/LLOCK_WRITE/' `find . -type f` %build export DEFINE_INN_FLAGS="-D_XOPEN_SOURCE=600 -D_BSD_SOURCE -DHAVE_ET_COM_ERR_H" %ifarch s390 s390x export CFLAGS="$RPM_OPT_FLAGS $DEFINE_INN_FLAGS -fPIC -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" %else export CFLAGS="$RPM_OPT_FLAGS $DEFINE_INN_FLAGS -fpic -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" %endif #export CFLAGS="$RPM_OPT_FLAGS -I/usr/include/db1" with_tmp_path=/var/lib/news/tmp ./configure --prefix=/usr/lib/news \ --sysconfdir=/etc/news --mandir=%{_mandir} \ --with-log-dir=/var/log/news --with-spool-dir=/var/spool/news\ --with-db-dir=/var/lib/news --with-run-dir=/var/run/news \ --with-etc-dir=/etc/news --with-tmp-dir=/var/lib/news/tmp \ --with-perl --with-python --enable-shared --enable-uucp-rnews \ --enable-pgp-verify --with-sendmail=/usr/sbin/sendmail \ --with-news-user=news --with-news-group=news --with-news-master=news \ --enable-ipv6 \ %{_target_platform} # XXX don't include to avoid linking with -ldb1. perl -pi -e 's/HAVE_DB1_NDBM_H/XXX_HAVE_DB1_NDBM_H/' ./include/config.h make %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT #Shift libs to the right place if [ "/usr/lib" != "%{_libdir}" ]; then mkdir -p $RPM_BUILD_ROOT%{_libdir}/news/lib mv $RPM_BUILD_ROOT/usr/lib/news/lib/*.a $RPM_BUILD_ROOT%{_libdir}/news/lib fi # -- Install man pages needed by suck et al. mkdir -p $RPM_BUILD_ROOT/usr/include/inn for f in clibrary.h config.h dbz.h libinn.h storage.h do install -c -m 0644 ./include/$f $RPM_BUILD_ROOT/usr/include/inn done for f in defines.h system.h do install -c -m 0644 ./include/inn/$f $RPM_BUILD_ROOT/usr/include/inn done #for f in clibrary.h configdata.h config.h dbz.h libinn.h autoconfig.h storage.h #do # install -c -m 0644 ./include/$f $RPM_BUILD_ROOT/usr/include/inn #done mkdir -p $RPM_BUILD_ROOT/etc mv $RPM_BUILD_ROOT/usr/lib/news/bin/rc.news $RPM_BUILD_ROOT/etc touch $RPM_BUILD_ROOT/var/lib/news/subscriptions chmod 644 $RPM_BUILD_ROOT/var/lib/news/subscriptions install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/var/lib/news/distributions mkdir -p $RPM_BUILD_ROOT/etc/cron.{hourly,daily} install %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.daily/inn-cron-expire install %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.hourly/inn-cron-rnews install %{SOURCE7} $RPM_BUILD_ROOT/etc/cron.hourly/inn-cron-nntpsend mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d install %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/innd touch $RPM_BUILD_ROOT/var/lib/news/history #LD_LIBRARY_PATH=$RPM_BUILD_ROOT/usr/lib $RPM_BUILD_ROOT/usr/bin/makedbz -i \ # -f $RPM_BUILD_ROOT/var/lib/news/history #chmod 644 $RPM_BUILD_ROOT/var/lib/news/* cat > $RPM_BUILD_ROOT/etc/news/.profile < files.list find $RPM_BUILD_ROOT -type f -or -type l | \ sed -e "s|$RPM_BUILD_ROOT||g" | \ sed 's|^/etc/cron|%config(noreplace) %attr(-,root,root) &|' | \ sed 's|^/etc/rc.d|%config(noreplace) %attr(-,root,root) &|' | \ sed 's|^/etc|%config(noreplace) &|' | \ sed 's|^/etc/news|%config(noreplace) %attr(0640,news,news) &|' | \ sed 's|^/var/lib/news/|%config(noreplace) &|' | \ sed 's|.*innshellvar|%config &|' | \ sed 's|/var/log/news|%ghost &|' | \ sed 's|/usr/lib/news/bin/inndstart$|%attr(4550,root,news) /usr/lib/news/bin/inndstart|' | \ sed 's|/usr/lib/news/bin/startinnfeed$|%attr(4550,root,news) /usr/lib/news/bin/startinnfeed|' | \ sed 's|/usr/lib/news/bin/rnews$|%attr(4550,uucp,news) /usr/lib/news/bin/rnews|' > files.list # echo "/usr/lib/news/bin/filter/*.pyc" >> files.list # echo "/usr/lib/news/bin/filter/*.pyo" >> files.list (echo "%defattr(-,news,news)" ; grep -v inews files.list | \ egrep -v "\.(h|so|a|la)$" | \ grep -v "news/inn.conf" | \ grep -v "/man/") > files.main echo "%defattr(-,root,root)" > files.devel egrep "\.(h|so|a|la)$" files.list >> files.devel %clean rm -rf $RPM_BUILD_ROOT rm -f files.list files.main files.devel files.inews %post /sbin/chkconfig --add innd su news -c '/usr/lib/news/bin/makedbz -i -o' umask 002 touch /var/log/news/news.notice touch /var/log/news/news.crit touch /var/log/news/news.err chown -R news:news /var/log/news* %triggerpostun -- inn < 2.3.0 service innd stop > /dev/null 2>&1 exit 0 %triggerin -- sysklogd if [ -f /etc/syslog.conf ]; then if ! grep -q INN /etc/syslog.conf; then sed 's/mail.none;/mail.none;news.none;/' < /etc/syslog.conf > /etc/syslog.conf.inn mv /etc/syslog.conf.inn /etc/syslog.conf echo '' \ >> /etc/syslog.conf echo '#' \ >> /etc/syslog.conf echo '# INN' \ >> /etc/syslog.conf echo '#' \ >> /etc/syslog.conf echo 'news.=crit /var/log/news/news.crit' >> /etc/syslog.conf echo 'news.=err /var/log/news/news.err' >> /etc/syslog.conf echo 'news.notice /var/log/news/news.notice' >> /etc/syslog.conf fi if [ -f /var/run/syslog.pid ]; then kill -HUP `cat /var/run/syslog.pid` 2> /dev/null ||: fi fi %preun if [ $1 = 0 ]; then service innd stop > /dev/null 2>&1 /sbin/chkconfig --del innd if [ -f /var/lib/news/history.dir ]; then rm -f /var/lib/news/history.* fi fi %postun if [ "$1" -ge 1 ]; then service innd condrestart > /dev/null 2>&1 fi exit 0 %files -f files.main %defattr(-,news,news) %dir /usr/lib/news/bin/control %dir /usr/lib/news/bin/filter %dir /usr/lib/news/bin/rnews.libexec %dir /usr/lib/news/bin/auth %dir /etc/news %dir /var/spool/news %dir /var/spool/news/archive %dir /var/spool/news/articles %dir /var/spool/news/incoming %dir /var/spool/news/incoming/bad %dir /var/spool/news/innfeed %dir /var/spool/news/outgoing %dir /var/spool/news/overview %dir /var/log/news %dir /var/log/news/OLD %dir /var/lib/news %dir /var/lib/news/tmp %dir /var/run/news %defattr(-,root,root) %{_mandir}/man1/c*.1.gz %{_mandir}/man1/f*.1.gz %{_mandir}/man1/g*.1.gz %{_mandir}/man1/inn*.1.gz %{_mandir}/man1/n*.1.gz %{_mandir}/man1/p*.1.gz %{_mandir}/man1/r*.1.gz %{_mandir}/man1/s*.1.gz %{_mandir}/man[58]/* %doc NEWS README* ChangeLog CONTRIBUTORS LICENSE INSTALL %doc %dir samples %files devel -f files.devel %defattr(-,root,root) %{_mandir}/man3/* %files -n inews %defattr(-,root,root) %config(noreplace) /etc/news/inn.conf /usr/bin/inews %attr(0755,root,root) /usr/lib/news/bin/inews %{_mandir}/man1/inews* %changelog * Mon Oct 22 2007 Ryoichi INAGAKI - 2.4.3-7vl1 - s/Copyright/License/ - updated to 2.4.3 based on FC package - rebuilt with new toolchain - updated BuildRequires and Requires - changed inews Group to Applications/Internet * Sat Aug 18 2001 - 2.3.2-5vl1: sync with 2.3.2-5 from 2.3.1-2vl1 :-) - changed back Requires: bash * Mon Jul 02 2001 Shoji Matsumoto - rebuild for Vine ( from RH7.1 ) - change Requires: bash * Wed Feb 14 2001 Florian La Roche - add startup script patch by kevin@labsysgrp.com #27421 - inews subpackage does not depend on inn anymore #24439 - fix reload and make some cleanups to the startup script #18076 * Wed Feb 07 2001 Florian La Roche - add a "exit 0" to the postun script * Wed Jan 24 2001 Florian La Roche - update to 2.3.1 - do not use --enable-tagged-hash - move tmp dir to /var/lib/news/tmp - add more docu - do not call "strip" directly - remove some of the default files as the ones in INN are ok - do not req /etc/init.d - do not attempt an automatic update from previous versions as we have to deal with different storage methods - prepare startup script for translations - add minimal check into startup for a history file * Mon Jan 22 2001 Florian La Roche - innreport had wrong perms - files for the cron-jobs must be owned by root:root * Tue Aug 29 2000 Florian La Roche - remove cleanfeed sources * Mon Jul 24 2000 Florian La Roche - fix some perms * Mon Jul 24 2000 Florian La Roche - update to 2.2.3 - fixed many perms - cleaned up complete build process * Sat Jul 15 2000 Bill Nottingham - move initscript back * Thu Jul 13 2000 Prospector - automatic rebuild * Sun Jul 10 2000 Bill Nottingham - add fix for the verifycancels problem fron Russ Allbery - turn them off anyways - fix perms on inews * Sat Jul 8 2000 Florian La Roche - prereq init.d * Tue Jun 27 2000 Than Ngo - /etc/rc.d/init.d -> /etc/init.d - fix initscript * Sun Jun 25 2000 Matt Wilson - defattr root * Wed Jun 21 2000 Preston Brown - fix up some issues with our new gcc compiler (patch 6) - don't do chown in the install script so we can build as nonroot * Mon Jun 19 2000 Preston Brown - FHS mandir * Tue May 23 2000 Florian La Roche - add inn-2.2.2-rnews.patch which is also accepted in current cvs * Mon May 22 2000 Florian La Roche - fix stupid bug in rnews cronjob - enable controlchan in default newsfeeds config - run "rnews -U" hourly instead of daily * Fri May 19 2000 Florian La Roche - add bug-fix to batcher from cvs version - "su news" before starting rnews from cron * Mon Apr 3 2000 Bill Notttingham - arrgh, there is no /usr/lib/news anymore. (#10536) - pppatch ppport for ppproper ppperl * Thu Mar 02 2000 Cristian Gafton - remove useless filter_innd.pl so that we will get the cleanfeed one instead * Mon Feb 7 2000 Bill Nottingham - handle compressed manpages - other minor fixes * Tue Dec 14 1999 Bill Nottingham - update to 2.2.2 * Sun Aug 29 1999 Cristian Gafton - version 2.2.1 to fix security problems in previous inn versions - add the faq back to the source rpm * Mon Aug 16 1999 Bill Nottingham - initscript munging * Tue Jun 22 1999 Jeff Johnson - fix syntax error in reload (#3636). * Fri Jun 18 1999 Bill Nottingham - don't run by default * Sun Jun 13 1999 Jeff Johnson - mark /var/lib/news/* as %config(noreplace) (#3425) * Thu Jun 10 1999 Dale Lovelace - change su news to su - news (#3331) * Wed Jun 2 1999 Jeff Johsnon - complete trn->inews->inn dependency (#2646) - use f_bsize rather than f_frsize when computing blocks avail (#3154). - increase client timeout to 30 mins (=1800) (#2833). - add missing includes to inn-devel (#2904). * Mon May 31 1999 Jeff Johnson - fix owner and permissions on /var/lib/news/.news.daily (#2354). * Tue Mar 30 1999 Preston Brown - fixed paths in cron jobs, check to see that innd is enabled * Fri Mar 26 1999 Preston Brown - path to makehistory corrected. * Mon Mar 22 1999 Preston Brown - fixed permissions on rnews for uucp * Fri Mar 19 1999 Preston Brown - make sure init scripts get packaged up, fix other minor bugs - major fixups to innd.conf for denial of service attacks, sanity, etc. - make sure history gets rebuilt in an upgrade (added to post section) - many thanks go out to mmchen@minn.net for these suggestions. * Fri Feb 19 1999 Cristian Gafton - prereq all the stuff we need in the postinstall scripts * Sat Feb 6 1999 Bill Nottingham - strip -x bits from docs/samples (bogus dependencies) * Thu Sep 03 1998 Cristian Gafton - updated to version 2.1 * Fri Aug 21 1998 Jeff Johnson - innd.init chkconfig entry was incorrect (problem #855) * Tue Jun 30 1998 Jeff Johnson - susbsys name must be identical to script name (problem #700) * Mon Jun 29 1998 Bryan C. Andregg - fixed startinnfeed paths * Tue May 05 1998 Prospector System - translations modified for de, fr, tr * Sat May 02 1998 Cristian Gafton - enhanced initscript * Fri May 01 1998 Cristian Gafton - fixed innfeed patched to be perl-version independent * Wed Apr 15 1998 Bryan C. Andregg - fixed sfnet.* entries in control.ctl * Mon Apr 13 1998 Bryan C. Andregg - moved cleanfeed to its own package * Thu Apr 09 1998 Bryan C. Andregg - added insync patches - added cleanfeed - added innfeed * Thu Apr 09 1998 Cristian Gafton - abuse buildroot to simplify the file list - built against Manhattan * Tue Mar 24 1998 Bryan C. Andregg - updated to inn 1.7.2 - Added REMEMBER_TRASH and Poison patch * Sun Oct 19 1997 Erik Troan - updated to inn 1.7 - added chkconfig support to the initscripts - orginally released as release 2, leving release 1 if a 4.2.x upgrade is ever necessary - don't start it in any runlevel (by default) - added inndcomm.h * Thu Oct 09 1997 Erik Troan - built against glibc * Tue Aug 05 1997 Elliot Lee - Applied the 1.5.1sec and 1.5.1sec2 patches - Applied 3 more unoff patches. - Removed insanity in /etc/cron.hourly/inn-cron-nntpsend, it now just runs nntpsend as news. * Wed Apr 02 1997 Erik Troan - Patch from CERT for sh exploit. - Changed /usr/ucb/compress reference to /usr/bin/compress * Mon Mar 17 1997 Erik Troan - Removed inews.1 from main inn package (it's still in the inews packaeg) - Fixed references to /usr/spoo in sendbatch - added "-s -" to crosspost line in newsfeeds - /var/lib/news/active.time is now created as news.news - /etc/news/nnrp.access and /etc/news/nntpsend.ctl are mode 0440 - included a better rc script which does a better job of shutting down news - updated /etc/rc.d/rc.news output look like the rest of our initscripts - hacked sendbatch df stuff to work on machines w/o a separate /var/spool/news * Tue Mar 11 1997 Erik Troan - added chmod to make sure rnews is 755 - /etc/news/nnrp.access and /etc/news/nntpsend.ctl are news.news not root.news or root.root - install an empty /var/lib/news/.news.daily as a config file - added dbz/dbz.h as /usr/include/dbz.h - added /usr/bin/inews link to /usr/lib/news/inews - changed INEWS_PATH to DONT -- I'm not sure this is right though - turned off MMAP_SYNC - added a ton of man pages which were missing from the filelist - increased CLIENT_TIMEOUT to (30 * 60) - added a postinstall to create /var/lib/news/active.times if it doesn't already exist - patched rc.news to start inn w/ -L flag - pulled news.init into a separate source file rather then creating it through a patch - added /etc/rc.d/rc5.d/S95news to the file list - remove pid files from /var/lock/news/* on shutdown - use /var/lock/subsys/news rather then /var/lock/subsys/inn or things don't shutdown properly * Mon Mar 10 1997 Christian 'Dr. Disk' Hechelmann - changed devel package description to include tin. - the devel package missed libinn.h - moved libinn.3 man-page to the devel package - moved changelog up - in %post some echo statements were messed up. if we put the redirection staements in a different line than the echo command we really should use a backslash to thell the shell :-) - in %install a chmod line referenced the same directory twice. - changed inn-1.5.1-redhat.patch: The patch for news.daily had a side effect. as EXPIREOVERFLAGS was set to '-a', expireover would break if there were articles to be removed, as '-a' can't be used if '-z' is specified... Now there is a separate 'eval expireover -a' after the first eval. Dirty but works. * Wed Feb 26 1997 Erik Troan - Added a /usr/bin/rnews symlink to /usr/lib/news/rnews as other programs like to use it. * Tue Feb 25 1997 Elliot Lee - Fixed rnews path in /etc/cron.daily/inn-cron-rnews - Added overview! and crosspost lines to /etc/news/newsfeeds - Fixed nntpsend.ctl path in /usr/lib/news/bin/nntpsend, and set a saner nntpsend.ctl config file. - Added automated inn.conf 'server: ' line creation in %post - Added misc. patches from ftp.isc.org/isc/inn/unoff-patches/1.5 - Removed -lelf from config.data LIBS - Made RPM_OPT_FLAGS work. - Bug in rpm meant that putting %post after %files made it not run. Moved %post up. - Added /etc/cron.hourly/inn-cron-nntpsend to send news every hour. - Fixed most of the misc permissions/ownership stuff that inncheck complained about. * Wed Feb 19 1997 Erik Troan - Incorporated changes from which fixed some paths and restored the cron jobs which disappeared in the 1.5.1 switch. He also made the whole thing use a buildroot and added some files which were missing from the file list.