Hello community, here is the log from the commit of package leafnode for openSUSE:Factory checked in at 2013-01-17 09:44:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/leafnode (Old) and /work/SRC/openSUSE:Factory/.leafnode.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "leafnode", Maintainer is "[email protected]" Changes: -------- New Changes file: --- /dev/null 2013-01-09 19:40:42.352580873 +0100 +++ /work/SRC/openSUSE:Factory/.leafnode.new/leafnode.changes 2013-01-17 09:44:42.000000000 +0100 @@ -0,0 +1,433 @@ +------------------------------------------------------------------- +Mon Jan 14 23:07:57 UTC 2013 - [email protected] + +- reformat spec file, licence is LGLP-2.1+, remove INSTALL + +------------------------------------------------------------------- +Sun Sep 25 12:42:25 UTC 2011 - [email protected] + +- update list of authors to include current maintainer + +------------------------------------------------------------------- +Thu Aug 18 23:31:16 UTC 2011 - [email protected] + +- add patch for getaddrinfo + +------------------------------------------------------------------- +Sat Jul 30 12:50:58 UTC 2011 - [email protected] + +- update to upstream 1.11.18 + +* 1.11.8, 2010-06-12 + +### BUGFIXES +- Performance optimization, reported by Gary R. Schmidt. +- Fix a compiler warning on computers where "long" is a wider type than "int", + such as many 64-bit computers. +- Fix compiler warnings on computers where "long" is a wider type than + "time_t", such as NetBSD 5.X on 64-bit computers. +- Fix compiler warning "dereferencing type-punned pointer will break + strict-aliasing rules" +- Fix a file descriptor leak in fetchnews.c's getbody_newno function; reported + to Debian BTS by Helmut Grohne, fix by Robert Grimm. + +### CHANGES +- Leafnode now enables IPv6 support by default. Use --without-ipv6 to disable. +- Leafnode now supports detecting if a peer is in a local network also + for IPv6 global addresses, providing that the host OS provides getifaddrs(). + This comprises Linux, NetBSD, FreeBSD, but not, for instance, Solaris 10. + Reported missing by M. G. Berberich. +- Leafnode is now always compiled in maintainer mode. + This has no impact on run-time behaviour. +- Leafnode now assumes that handlers for signal() do not return a value. + +### WORKAROUND +- Skip arbitrary amounts of contiguous CR right before LF. Reported by John R. + Myers. + +### DOCUMENTATION +- Remove the long-obsoleted README.FIRST file. +- The FAQ has information on how to copy the spool. +- FAQ: The MAC OS X two-level namespace documentation for PCRE was removed, + PCRE is no longer part of the leafnode distribution. +- FAQ: mention how to fix losing unsubscriptions of low-traffic groups in slrn +- config.example: The expire documentation should now be clearer and closer to + the one in the leafnode(8) manual page. Along the lines discussed by Chris G + and Whiskers on the leafnode mailing list. + +* 1.11.7, 2009-04-20 + +### WORKAROUND +- fetchnews: If the LN_SUPPRESS_DATE environment variable is defined and set + to any value or empty, fetchnews will not test the upstream server's time by + means of the "DATE" NNTP command. + This can be used to quench related log messages. + +### BUGFIXES +- Fix logging if texpire unlinks files without further hardlinks from + message.id/NNN/ +- Fix potential segfault on libcs that do not catch NULL for %s formatting + (several GNU libc versions do) when trying to retrieve delayed bodies from + corrupt article headers. Pretend success, to purge article number from + subscription file. Bug reported by Chris Carr. +- Fix & change "noactive" so that it can be overridden by "fetchnews -f", as + documented in config.example. + Regression as side effect of 1.9.50 fix, reported by Jesse F. Hughes. +- Fix logged IP address in "connected to..., reply:" message when compiled + without IPv6 support. + Fixes Mandriva Bug #45605, reported by David W. Hodgins. +- Print connected to... to console as well at proper verbosity level, found + by maintainer while debugging aforementioned bug. +- Only emit warning that no server with posting permission was found if that's + actually needed. Reported by Christian Weiske. +- If corrupted articles had been detected, fetchnews -x NNN would not be able + to re-fetch the said article because a 0-sized file remained in message.id, + making fetchnews believe the article was in the spool. + 0-sized message.id/NNN/ files are now purged when checking if the article is + already in the spool. + Reported by Peter Bauernfeind. (de.comm.software.newsserver post, May 2008) +- Change interface enumeration to track incompatible NetBSD 5 changes. The + latter led to bogus connection refusals in NNTPD. SourceForge Bug #2700756, + by Aleksey Cheusov, fix suggested by Roy Marples. +- Add support for SIOCGIFALIAS where available (BSD) in order to obtain + netmasks for 4.4BSD-style IP aliases. + getifaddrs() has been suggested as well, but it isn't available everywhere, + so we would have to keep the old code around anyways, and we can just fix + that rather than introduce alternative code branches. + +### BUGFIXES BACKPORTED FROM LEAFNODE 2 +- lsort (used by make update) now detects and report errors. +- "make update" handles the lockfile properly now: it records its PID and + removes the lock also in cases of failure. +- "make update" restores the old groupinfo file if lsort fails. +- "make update" now builds an up-to-date lsort first. +- "make update" now uses the configured NEWS_USER and _GROUP. +- "make update" is now a phony Makefile target, i. e. it will work even + if there is a file "update" in the build directory. + +### CHANGES +- When creating a Path: header (because the newsreader did not do that), use + "not-for-mail" instead of NEWS_USER (usually "news") as the user component. + This seems to resolve propagation issues with 2nd-hop-upstreams, as reported + in Debian Bug#459980 by Michael Weitzel, with Universität Siegen, Germany. +- When writing to client fails, log decoded errno, too. + This can help debugging certain firewall misconfigurations more easily. +- Undoing a wordwrap in configure.ac allows for bootstrapping on Cygwin. +- Drop obsolete mysetvbuf(). +- leafnode-version now supports an additional "-v" mode to print more + information on the installation. The output then is similar, but not + identical - due to different feature sets - to the way leafnode-2 prints it. + +### DOCUMENTATION +- Add some comments to UNINSTALL-daemontools +- Put README-FQDN* under leafnode's license. Found to be in conflict with + Debian's DFSG by Mark Brown. + +------------------------------------------------------------------- +Sat Jul 30 12:00:42 UTC 2011 - [email protected] + +- resurrect package from discontinued 11.1 +- move make check to %check section to fix rpmlint warning +- adjust %install section to not clean out doc_german too much to make %check work +- adjust %files section to name files in doc_german individually +- add %config to config.example to fix rpmlint warning + +------------------------------------------------------------------- +Thu May 8 10:31:15 CEST 2008 - [email protected] + +- add an example crontab to fetch news every hour (bnc #382542) + +------------------------------------------------------------------- +Wed Apr 9 23:21:50 CEST 2008 - [email protected] + +- leafnode does not remove old news threads without cron which is + not installed by default now + +------------------------------------------------------------------- +Tue Jun 5 23:56:14 CEST 2007 - [email protected] + +- add leafnode-1.11.6-spooldir-permissions.diff, bug 273929 +- add some tricks to get the package past the rpmlint censors + +------------------------------------------------------------------- +Wed Mar 21 12:28:52 CET 2007 - [email protected] + +- Update to version 1.11.6: + * do not delete articles if References: lines are malformatted + * fix compilation with SGI IDO cc + * reject *.site fqdn. + * documentation fixes + * support autoconf 2.60, fixing datarootdir-related warnings + +------------------------------------------------------------------- +Tue Nov 7 13:18:24 CET 2006 - [email protected] + +- fixed use of RPM_OPT_FLAGS + +------------------------------------------------------------------- +Mon Sep 4 17:31:37 CEST 2006 - [email protected] + +- Update to version 1.11.5: + * applyfilter overhaul + * fetchnews: Keep non-expiring groups (negative groupexpire date) + active, even if they expired upstream. sf.net bug#1230256 + * some loglevel adjustments + * fetchnews: Do not mark the active for refetch when the failed + server has "noread" set or fetchnews is in -P (post only) mode. + * fetchnews: Skip to next server if posting fails. + * fetchnews: Don't POST if the server goes away after STAT. + * various documentation fixes +- clean up pakaged documentation + +------------------------------------------------------------------- +Wed Jan 25 21:37:20 CET 2006 - [email protected] + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Fri Jan 20 23:11:21 CET 2006 - [email protected] + +- Don't strip binaries. + +------------------------------------------------------------------- +Fri Oct 28 02:15:41 CEST 2005 - [email protected] + +- work around strange behaviour of "mkdir -p .../." + +------------------------------------------------------------------- ++++ 236 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:Factory/.leafnode.new/leafnode.changes New: ---- README.SuSE filters leafnode-1.11.6-spooldir-permissions.diff leafnode-1.11.8-gethostbyname-2-getaddrinfo.patch leafnode-1.11.8.tar.bz2 leafnode-fetch.cron leafnode.changes leafnode.cron.daily leafnode.spec leafnode.xinetd ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ leafnode.spec ++++++ # # spec file for package leafnode # # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: leafnode BuildRequires: pcre-devel Provides: nntp_daemon Conflicts: inn cnews Version: 1.11.8 Release: 0 PreReq: /bin/mkdir /bin/cat Summary: A Leaf Site NNTP Server License: LGPL-2.1+ and SUSE-Public-Domain and MIT Group: Productivity/Networking/News/Servers Url: http://sourceforge.net/projects/leafnode/ Source0: http://switch.dl.sourceforge.net/sourceforge/leafnode/leafnode-%{version}.tar.bz2 Source1: README.SuSE Source2: leafnode.cron.daily Source3: filters Source4: leafnode.xinetd Source5: leafnode-fetch.cron Patch0: leafnode-1.11.6-spooldir-permissions.diff Patch1: leafnode-1.11.8-gethostbyname-2-getaddrinfo.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: cron %description Leafnode is a small NNTP server for leaf sites without permanent connections to the Internet. It supports a subset of NNTP and is able to automatically fetch the newsgroups the user reads regularly from the ISP's news server. Authors: -------- Matthias Andree <[email protected]> (maintainer since 1.9.19) Arnt Gulbrandsen <[email protected]> Cornelius Krasel <[email protected]> Kent Robotti <[email protected]> Markus Enzenberger <[email protected]> Randolf Skerka <[email protected]> Alexander Reinwarth <[email protected]> Alexander Stielau <[email protected]> Ralf Wildenhues <[email protected]> %prep %setup -q -n %{name}-%{version} %patch0 %patch1 %build CFLAGS="-Wall $RPM_OPT_FLAGS" %configure --with-ipv6 \ --sysconfdir=%{_sysconfdir}/%{name} \ --with-spooldir=/var/spool/news %__make %check %__make check %install make DESTDIR=$RPM_BUILD_ROOT install mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily $RPM_BUILD_ROOT/%{_sysconfdir}/xinetd.d install -m 755 %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily/%{name} install -m 644 %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir}/xinetd.d/%{name} cp $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/config.example $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/config install -m 644 %{SOURCE1} . install -m 640 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/%{name} install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/de/man1 install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/de/man8 # Get rid of files we don't want to package or package with doc below rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/*.dist rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/UNINSTALL-daemontools rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/filters.example mkdir examples cp -a update.sh tools examples cp %{S:5} examples %clean # Clear up the mess rm -rf $RPM_BUILD_ROOT; %files %defattr(-,root,root) %attr(640,root,news) %config(noreplace) %{_sysconfdir}/%{name}/config %attr(440,root,news) %config %{_sysconfdir}/%{name}/config.example %attr(640,root,news) %config(noreplace) %{_sysconfdir}/%{name}/filters %attr(755,root,root) %config(noreplace) %{_sysconfdir}/cron.daily/%{name} %attr(644,root,root) %config(noreplace) %{_sysconfdir}/xinetd.d/%{name} %attr(750,root,news) %dir %{_sysconfdir}/%{name} %doc ChangeLog COPYING CREDITS NEWS FAQ.txt FAQ.pdf %doc README README.SuSE README-FQDN %doc filters.example %doc ADD-ONS KNOWNBUGS %doc doc_german/INSTALL_de %doc doc_german/LIESMICH-daemontools %doc doc_german/README %doc doc_german/README_de %doc examples/ %doc %{_mandir}/man1/newsq.1.gz %doc %{_mandir}/man1/leafnode-version.1.gz %doc %{_mandir}/man8/applyfilter.8.gz %doc %{_mandir}/man8/checkgroups.8.gz %doc %{_mandir}/man8/fetchnews.8.gz %doc %{_mandir}/man8/leafnode.8.gz %doc %{_mandir}/man8/texpire.8.gz /usr/bin/newsq /usr/bin/leafnode-version /usr/sbin/applyfilter /usr/sbin/checkgroups /usr/sbin/fetchnews /usr/sbin/leafnode /usr/sbin/texpire %attr(775,news,news) /var/spool/news %changelog ++++++ README.SuSE ++++++ Installation notes for Package leafnode --------------------------------------- Last change: 2005-06-13 Authors: Lenz Grimmer <[email protected]> Heiko Rommel <[email protected]> In order to use leafnode on your system, you have to configure some things correctly: o Please note that starting with leafnode 1.11.0 the parser for the configuration and filter files now understands quoted strings on the right hand side of the configuration or filter lines, with simple backslash (\) escapes. This might affect existing filters. For details, see man 8 leafnode. o If you want remote users (that are not in your LANs) to have access to your server, you would only need to allow them in hosts.allow previously. Since leafnode 1.9.23, an additional parameter is required to be set to allow users outside of your LAN access to your leafnode. The config.example file has documentation on how to set this parameter. This is meant as additional security measure when some novice user hoses his access control configuration. o If you are updating from a previous release (< 1.6) run the shell script /usr/share/doc/packages/leafnode/update.sh first: cd /usr/share/doc/packages/leafnode ./update.sh /var/spool/news/ /etc/leafnode /var/lock/news/fetchnews.lck Your groupinfo file will be reformatted and some other files will be moved around. In case something goes wrong, you will find your old groupinfo file in /var/spool/news/leaf.node/groupinfo.old. If everything works out correctly, you can delete this file (it is not needed any more). Note: /usr/bin/fetch has been renamed to /usr/bin/fetchnews! o Set the variable NNTPSERVER in /etc/sysconfig/news to point to your local host: NNTPSERVER="localhost" Be sure to run "SuSEconfig --nonewpackage" afterwards, this will create the necessary entry in the file /etc/nntpserver. o edit /etc/leafnode/config to fit your needs. As a minimum, you have to insert your preferred News Server in Line 3: server = <Your server> This is the name or IP address of your provider's newsfeed. See the manual page for leafnode(8) for more info about specific configuration issues. Since the leafnode deamon runs with the user and group id "news", make sure, that the configuration file /etc/leafnode/config and /etc/leafnode/filters have the proper permissions so leafnode can read them! o to start leafnode when connecting with your newsreader, you must have inetd enabled and make sure that the following line in /etc/inetd.conf is uncommented: nntp stream tcp nowait news /usr/sbin/tcpd /usr/sbin/leafnode This starts leafnode for all connections on the nntp port, subject to /etc/hosts/allow and /etc/hosts.deny screening. Make sure, that this is the only line beginning with "nntp" in /etc/inetd.conf! After these changes, force inetd to reread the changed configuration file To achieve this in SuSE Linux, issue the following command (as root): rcinetd reload Alternatively, you may use the following command: killall -HUP inetd To make sure, that inetd is being started on bootup, please use either the YaST2 inetd editor or by running "insserv /etc/init.d/inetd" o Alternatively - if you use xinetd instead of inetd - set "disable = no" in /etc/xinetd.d/leafnode and restart xinetd with "rcxinetd restart". To make sure, that xinetd is being started on bootup, please use either the YaST2 inetd editor or by running "insserv /etc/init.d/xinetd" o Now run fetchnews. The first run will take some time since fetchnews reads a list of all newsgroups from your upstream server. With an 28.8 modem, it can take as long as 60 minutes (depending on how many newsgroups your provider offers and how fast your connection is). To see fetch working, run it with the Option "-vvv". o Read news using an NNTP client (with $NNTPSERVER or /etc/nntpserver pointing to your own host). Select the groups you want to read in the future. You will find them empty except for a default article. Reading this article is necessary with some newsreaders to select the groups for further fetching. After this, you should have empty files in /var/spool/news/interesting.groups/ for every group you want to read. o Run fetchnews again. This run should pick up all the groups you want to read. You can now read these messages or post new ones with your newsreader, fetch will deliver your posted messages during the next run. o If you want to fetch new news every time you go online, you could run fetchnews from /etc/ppp/ip-up.local, for example. o To clean up old threads, you should run texpire in regular intervals. For this purpose, the file /etc/cron.daily/leafnode will be executed once a day. The value of the "expire" variable in /etc/leafnode/config defines, after how many days old threads will be deleted. Have a lot of fun, Your SuSE-Team. ++++++ filters ++++++ # Leafnode filter configuration file (see the applyfilter(8) manual page # and /usr/share/doc/packages/leafnode/filters.example) # # this file contains the set of filtering rules that are applied # to the newsspool. Each rule must be on a separate line. Empty lines # and comments (marked by a # at the beginning of the line) are allowed. # # Each rule is a regular expression. For example, the following set of # rules will delete all crosspostings to alt.flame. # ^Newsgroups:.*[, ]alt.flame$ # ^Newsgroups:.*[, ]alt.flame, ++++++ leafnode-1.11.6-spooldir-permissions.diff ++++++ Novell bug #273929 Index: miscutil.c =================================================================== --- miscutil.c.orig 2011-08-18 23:40:15.575080107 +0200 +++ miscutil.c 2011-08-18 23:40:19.209833834 +0200 @@ -121,7 +121,7 @@ createmsgiddir(void) { } static struct { const char* name; mode_t mode; } dirs[] = { - {"", 04755 }, + {"", 0775 }, {"interesting.groups", 02775 }, {"leaf.node", 0755 }, {"failed.postings", 02775 }, ++++++ leafnode-1.11.8-gethostbyname-2-getaddrinfo.patch ++++++ Index: miscutil.c =================================================================== --- miscutil.c.orig 2011-08-18 23:46:27.000000000 +0200 +++ miscutil.c 2011-08-19 01:30:14.948752733 +0200 @@ -491,34 +491,33 @@ chdirgroup(const char *group, int creatd static void whoami(void) { - struct hostent *he; + struct addrinfo hints, *res, *p; int debugqual = 0; char *x; if ((x = getenv("LN_DEBUG_QUALIFICATION")) != NULL && *x) debugqual = 1; + memset(&hints, 0, sizeof hints); + hints.ai_flags = AI_CANONNAME; - if (!gethostname(fqdn, sizeof(fqdn)) && (he = gethostbyname(fqdn)) != NULL) { - xstrlcpy(fqdn, he->h_name, sizeof(fqdn)); - if (debugqual) syslog(LOG_DEBUG, "canonical hostname: %s", fqdn); - if (!is_validfqdn(fqdn)) { - char **alias; - alias = he->h_aliases; - while (alias && *alias) { - if (debugqual) { - syslog(LOG_DEBUG, "alias for my hostname: %s", *alias); - } - if (is_validfqdn(*alias)) { - xstrlcpy(fqdn, *alias, sizeof(fqdn)); - break; - } else { - alias++; - } - } - } - endhostent(); + if (!gethostname(fqdn, sizeof(fqdn)) && !getaddrinfo(fqdn, NULL, &hints, &res)) { + xstrlcpy(fqdn,res->ai_canonname, sizeof(fqdn)); + if (debugqual) syslog(LOG_DEBUG, "canonical hostname: %s", fqdn); + if (!is_validfqdn(fqdn)) { + for (p = res; p != NULL; p = p->ai_next) { + if (debugqual) { + syslog(LOG_DEBUG, "alias for my hostname: %s", p->ai_canonname); + } + if (is_validfqdn(p->ai_canonname)) { + xstrlcpy(fqdn, p->ai_canonname, sizeof(fqdn)); + break; + } + } + } + freeaddrinfo(res); } + } /* ++++++ leafnode-fetch.cron ++++++ #!/bin/sh # # copy this script to /etc/cron.d/leafnode-fetch and make it executable # with "chmod 0755 /etc/cron.d/leafnode-fetch" to fetch news every hour # # suggested by Ritesh Sarraf <[email protected]> # https://bugzilla.novell.com/show_bug.cgi?id=382542 # # Fetch news every hour @hourly news test -x /usr/sbin/fetchnews && /usr/sbin/fetchnews -q ++++++ leafnode.cron.daily ++++++ #!/bin/sh # # /etc/cron.daily/leafnode # # Copyright (c) 2001-2002, SuSE Linux AG, Nuernberg. Germany # # remove old news threads from the leafnode cache according to # the value of the "expire" variable in /etc/leafnode/config # # Remove the "-v" parameter, if you want texpire to run quietly in # the background if [ -f /var/spool/news/leaf.node/groupinfo ] ; then test -x /usr/sbin/texpire && su - news -c "/usr/sbin/texpire -v" else exit 0 fi ++++++ leafnode.xinetd ++++++ service nntp { disable = yes socket_type = stream protocol = tcp wait = no user = news server = /usr/sbin/leafnode } -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
