diff options
author | spz <spz@pkgsrc.org> | 2009-12-16 22:10:25 +0000 |
---|---|---|
committer | spz <spz@pkgsrc.org> | 2009-12-16 22:10:25 +0000 |
commit | 51e09269ee135921e8afef8072c0af3212f9b1a9 (patch) | |
tree | cbc26cde84047c7f96fb16cc8c3a98f504c85c50 | |
parent | c2120643b888f40a5c31cd98749d16ee76c4816d (diff) | |
download | pkgsrc-51e09269ee135921e8afef8072c0af3212f9b1a9.tar.gz |
The next minor version of INN. From the release announcement:
Major changes from 2.5.0 to 2.5.1
* Fixed a segfault in imap_connection which could occur when SASL was
used.
* Fixed a segfault in the keyword generation code which was assuming
that an article was nul-terminated. Fixed another segfault in the
keyword generation code when an article already contained a Keywords:
header. Thanks to Nix for the bug reports.
* Owing to the US-CERT vulnerability note VU#238019, Cyrus SASL library
has slightly changed. imap_connection and nnrpd now handle that
change. Otherwise, some answers are too long to be properly computed
during SASL exchanges.
* Fixed a memory allocation problem which caused nnrpd to die when
retrieving via HDR/XHDR/XPAT the contents of an extra overview field
absent from the headers of an article. The NEWNEWS command was also
affected on very rare cases. Thanks to Tim Woodall for the bug
report.
* HDR/XHDR/XPAT answers are now robust when the overview database is
inconsistent. When the overview schema was modified without the
overview database being rebuilt, wrong results could be returned for
extra fields (especially a random portion of some other header). The
desired header name is now explicitly searched for in the overview
information.
* Fixed the source which is logged to the news log file for local
postings when the local server is not listed in incoming.conf. A
wrong name was used, taken amongst known peers. The source is now
logged as "localhost".
* Fixed a bug in the timecaf storage method: only the first 65535
articles could be retrievable in a CAF, though everything was properly
stored. (A Crunched Article File contains all the articles that
arrive to the news server during 256 seconds.)
The storage token now uses 4 bytes to store the article sequence
number for timecaf, instead of only 2 bytes. Thanks to Kamil Jonca
for the bug report and also the patch.
* Fixed a bug in both timecaf and timehash which prevented them from
working on systems where short ints were not 16-bit integers.
* When there is not enough space to write an entire CAF header, the
timecaf storage manager now uses a larger blocksize. On 32-bit
systems, the CAF header is about 300 bytes, leaving about 200 bytes
for the free bitmap index (the remaining of a 512-byte blocksize). On
64-bit systems, the size of the CAF header could exceed 512 bytes,
thus leaving no room for the free bitmap index. A 1 KB blocksize is
then used, or a larger size if need be.
* A new CNFS version has been introduced by Miquel van Smoorenburg in
the CNFS header. CNFSv4 uses 4 KB blocks instead of 512 bytes, which
more particularly makes writes faster. CNFSv4 supports
files/partitions up to 16 TB with a 4 KB blocksize.
Existing CNFS buffers are kept unchanged; only new CNFS buffers are
initialized with that new version.
* grephistory -l now returns the contents of the expires history field
as well as the hash of the message-ID. Besides, when the storage API
token does not exist, grephistory -v now also returns the hash of the
requested message-ID.
* The check on cancel messages when *verifycancels* is set to true in
inn.conf has been changed to verify that at least one newsgroup in the
cancel message can be found in the article to be cancelled. This new
feature is from Christopher Biedl.
The previous behaviour was to check whether the cancel message is from
the same person as the original post, which is extremely easy to
spoof; besides, RFC 5537 (USEPRO) mentions that "cancel control
messages are not required to contain From: and Sender: header fields
matching the target message. This requirement only encouraged cancel
issuers to conceal their identity and provided no security".
* The way the "/remember/" line in expire.ctl works has changed.
History retention for an article was done according to its original
arrival time; it is now according to its original posting date.
Otherwise, unnecessary data may be kept too long in the history file.
To achieve that, the HISremember() function in history API now expects
a fourth parameter: the article posting time.
Note that article expiration has not changed and is still based on
arrival time, unless the -p flag is passed to expire or expireover, in
which case posting time is used.
* The default value for "/remember/" has changed from 10 to 11 because
it should be one more than the *artcutoff* parameter in inn.conf, so
that articles posted one day into the future are properly retained in
history.
* auth_krb5 has been rewritten by Russ Allbery to use modern Kerberos
APIs. Note that using ckpasswd with PAM support and a Kerberos PAM
module instead of this authenticator is still recommended.
* A new -L flag has been added by Jonathan Kamens to makehistory so as
to specify a load average limit. If the system load average exceeds
the specified limit, makehistory sleeps until it goes below the limit.
* As UTF-8 is the default character set in RFC 3977, "ctlinnd pause",
"ctlinnd readers", "ctlinnd reject", "ctlinnd reserve", "ctlinnd
throttle" and "nnrpd -r" commands now require the given reason to be
encoded in UTF-8, so that it can be properly sent to news readers.
The creator's name given to "ctlinnd newgroup" is also expected to be
encoded in UTF-8.
* The output of consistency checks for article storage and the history
file no longer appears by default when "cnfsstat -a" is used. A new
-v flag has been added to cnfsstat so as to see it.
* The default path for TLS certificates has changed from *pathnews*/lib
to *pathetc*. It only affects new INN installations or generations of
certificates with "make cert". Besides, a default value has been
added to *tlscapath* because it is required by nnrpd when TLS is used.
* gzip(1) is now the default UUCP batcher in send-uucp instead of
compress(1) because gzip is more widely available than compress, due
to old patent issues. Note that there is no impact on decompression
as it is handled by rnews.
* cnfsheadconf now uses the Perl core module "Math::BigInt" rather than
the deprecated bigint.pl library. When used without specifying a CNFS
buffer, it now properly displays the status of all CNFS buffers.
-rw-r--r-- | news/inn/Makefile | 19 | ||||
-rw-r--r-- | news/inn/Makefile.common | 4 | ||||
-rw-r--r-- | news/inn/PLIST | 3 | ||||
-rw-r--r-- | news/inn/distinfo | 14 | ||||
-rw-r--r-- | news/inn/options.mk | 3 | ||||
-rw-r--r-- | news/inn/patches/patch-ab | 25 | ||||
-rw-r--r-- | news/inn/patches/patch-ah | 8 | ||||
-rw-r--r-- | news/inn/patches/patch-ai | 6 |
8 files changed, 53 insertions, 29 deletions
diff --git a/news/inn/Makefile b/news/inn/Makefile index 7cbe1571775..491a7b2beb1 100644 --- a/news/inn/Makefile +++ b/news/inn/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.99 2009/10/03 16:20:39 spz Exp $ +# $NetBSD: Makefile,v 1.100 2009/12/16 22:10:25 spz Exp $ -DISTNAME= inn-2.5.0 +DISTNAME= inn-2.5.1 CATEGORIES= news -PKGREVISION= 2 MASTER_SITES= ftp://ftp.isc.org/isc/inn/ \ ftp://ftp.fu-berlin.de/unix/news/inn/ @@ -56,14 +55,19 @@ CONFIGURE_ENV+= _PATH_SORT=${TOOLS_SORT:Q} CONFIGURE_ENV+= GZIP=${TOOLS_GZIP_CMD:Q} USE_TOOLS+= awk egrep gzip perl:run sed sh sort yacc +LDFLAGS.SunOS+= -lsocket -lnsl + DEPENDS+= p5-MIME-tools>0:../../mail/p5-MIME-tools DEPENDS+= p5-GD>0:../../graphics/p5-GD -PKG_GROUPS_VARS+= INN_GROUP +## Please note that USE_DESTDIR=yes only works for this package if the user +## and group already exist + PKG_USERS_VARS+= INN_USER +PKG_GROUPS_VARS+= INN_GROUP -PKG_GROUPS= ${INN_GROUP} -PKG_USERS= ${INN_USER}:${INN_GROUP} +PKG_GROUPS+= ${INN_GROUP} +PKG_USERS+= ${INN_USER}:${INN_GROUP} PKG_GECOS.${INN_USER}= Internet\ News PKG_HOME.${INN_USER}= ${INN_DATA_DIR} PKG_SHELL.${INN_USER}= ${SH} @@ -161,11 +165,14 @@ pre-install: post-install: for FILE in cnfsstat ctlinnd makehistory innbind; do \ + ${RM} -f ${DESTDIR}${PREFIX}/sbin/$$FILE ; \ ${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/$$FILE \ ${DESTDIR}${PREFIX}/sbin ; \ done + ${RM} -f ${DESTDIR}${PREFIX}/sbin/inews ; ${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/inews \ ${DESTDIR}${PREFIX}/bin + ${RM} -f ${DESTDIR}${PREFIX}/sbin/rnews ; ${LN} -s ${DESTDIR}${PREFIX}/${INN_PATHBIN}/rnews \ ${DESTDIR}${PREFIX}/bin for FILE in libinn.a libstorage.a libinnhist.a ; do \ diff --git a/news/inn/Makefile.common b/news/inn/Makefile.common index 816ea53c51d..fb41a2b6168 100644 --- a/news/inn/Makefile.common +++ b/news/inn/Makefile.common @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.common,v 1.5 2008/12/21 11:55:25 spz Exp $ +# $NetBSD: Makefile.common,v 1.6 2009/12/16 22:10:25 spz Exp $ # INN_PREFIX?= ${PREFIX} @@ -8,3 +8,5 @@ INN_SPOOL?= ${INN_DATA_DIR}/spool BUILD_DEFS+= INN_DATA_DIR BUILD_DEFS+= VARBASE +BUILD_DEFS+= INN_USER +BUILD_DEFS+= INN_GROUP diff --git a/news/inn/PLIST b/news/inn/PLIST index 726f2063507..ef969688eeb 100644 --- a/news/inn/PLIST +++ b/news/inn/PLIST @@ -1,8 +1,9 @@ -@comment $NetBSD: PLIST,v 1.20 2009/09/25 11:06:00 spz Exp $ +@comment $NetBSD: PLIST,v 1.21 2009/12/16 22:10:25 spz Exp $ bin/inews bin/rnews include/inn/buffer.h include/inn/confparse.h +include/inn/dbz.h include/inn/defines.h include/inn/dispatch.h include/inn/hashtab.h diff --git a/news/inn/distinfo b/news/inn/distinfo index 57a5cda3d3c..198524de6fb 100644 --- a/news/inn/distinfo +++ b/news/inn/distinfo @@ -1,13 +1,13 @@ -$NetBSD: distinfo,v 1.23 2009/10/03 16:20:39 spz Exp $ +$NetBSD: distinfo,v 1.24 2009/12/16 22:10:25 spz Exp $ -SHA1 (inn-2.5.0.tar.gz) = f009da670e2594d9079e7fb26f32d10c640d24e6 -RMD160 (inn-2.5.0.tar.gz) = 0b9583eef8fe86131297d403323ab6ff2906fe06 -Size (inn-2.5.0.tar.gz) = 2380748 bytes +SHA1 (inn-2.5.1.tar.gz) = e49a58a3484bbb7fd230b37ca17cc34eb10c10f1 +RMD160 (inn-2.5.1.tar.gz) = 8cb24ac4fcea299b02b2b0b043a4f5506b902c47 +Size (inn-2.5.1.tar.gz) = 2305406 bytes SHA1 (patch-aa) = 8ed86de4d20ab8510c7521528a9979c1d3e6d9e8 -SHA1 (patch-ab) = bf840b80b30d26abba4971e5ba837f9e43576052 +SHA1 (patch-ab) = c48e442cc710f0655904c10031c2402e9dea7560 SHA1 (patch-ac) = 2b801b9b8c5eae1feacaa3532e78b4c46210f755 SHA1 (patch-ad) = d36131ad21a1d8ea0edb463dfff6f1800dc8291d SHA1 (patch-ag) = 8041d7d78c26fd7b505d9955dbdb91f2b8cb8ab2 -SHA1 (patch-ah) = bf0a72348958a89dc28d08dd324e5ee9acfae2c8 -SHA1 (patch-ai) = 28ab36f22920a3bcd2c99578a5b75db3012cf106 +SHA1 (patch-ah) = 48c2440ed361668c934194e53dc91fe0fa24dc2f +SHA1 (patch-ai) = cf0af9de01dc7e06c5f9f7f1dd91ac2201e8c212 SHA1 (patch-ak) = 1b92f93a78a08b570c2f9b5360982644d6d2d065 diff --git a/news/inn/options.mk b/news/inn/options.mk index d7a156e9bf9..374283872f1 100644 --- a/news/inn/options.mk +++ b/news/inn/options.mk @@ -1,4 +1,4 @@ -# $NetBSD: options.mk,v 1.4 2008/06/23 09:10:53 spz Exp $ +# $NetBSD: options.mk,v 1.5 2009/12/16 22:10:25 spz Exp $ PKG_OPTIONS_VAR= PKG_OPTIONS.inn PKG_SUPPORTED_OPTIONS= inet6 perl python uucp @@ -18,6 +18,7 @@ CONFIGURE_ARGS+= --enable-ipv6 ### .if !empty(PKG_OPTIONS:Muucp) CONFIGURE_ARGS+= --enable-uucp-rnews +PKG_GROUPS+= uucp .else CONFIGURE_ARGS+= --disable-uucp-rnews .endif diff --git a/news/inn/patches/patch-ab b/news/inn/patches/patch-ab index 71358c681a4..b1d13a77a00 100644 --- a/news/inn/patches/patch-ab +++ b/news/inn/patches/patch-ab @@ -1,17 +1,30 @@ -$NetBSD: patch-ab,v 1.8 2009/10/03 16:20:39 spz Exp $ +$NetBSD: patch-ab,v 1.9 2009/12/16 22:10:25 spz Exp $ --- scripts/news.daily.in.orig 2009-05-21 22:08:33.000000000 +0200 +++ scripts/news.daily.in -@@ -233,7 +233,7 @@ then +@@ -232,17 +232,17 @@ then + cd "${PATHSPOOL}/${INNFEEDSPOOL}" + + # Find the PIDs of innfeed. +- LOCKS=`cat *.lock 2>/dev/null | ${SORT} -u` ++ INNFEEDLOCKS=`cat *.lock 2>/dev/null | ${SORT} -u` # Process files like "innfeed-dropped.A001703" where - # 1703 is not in $LOCKS. -- for file in `find -name "innfeed-dropped*"` -+ for file in `find . -name "innfeed-dropped*" -print` +- # 1703 is not in $LOCKS. ++ # 1703 is not in $INNFEEDLOCKS. + for file in `find . -name "innfeed-dropped*" -print` do PID=`echo "$file" | ${SED} 's/^.*[A-Z]0*//'` FOUND=false -@@ -253,6 +253,10 @@ fi +- for LOCK in $LOCKS ++ for INNFEEDLOCK in $INNFEEDLOCKS + do +- if [ "$PID" = "$LOCK" ] ++ if [ "$PID" = "$INNFEEDLOCK" ] + then + FOUND=true + fi +@@ -256,6 +256,10 @@ fi cd ${PATHETC} diff --git a/news/inn/patches/patch-ah b/news/inn/patches/patch-ah index e8b0599363c..83d1cb7b95f 100644 --- a/news/inn/patches/patch-ah +++ b/news/inn/patches/patch-ah @@ -1,8 +1,8 @@ -$NetBSD: patch-ah,v 1.12 2009/09/22 13:17:00 spz Exp $ +$NetBSD: patch-ah,v 1.13 2009/12/16 22:10:25 spz Exp $ --- site/Makefile.orig 2009-05-21 20:08:33.000000000 +0000 +++ site/Makefile -@@ -73,32 +73,17 @@ REST = \ +@@ -73,32 +73,17 @@ ALL = $(MOST) $(REST) REST_INSTALLED = \ @@ -13,7 +13,7 @@ $NetBSD: patch-ah,v 1.12 2009/09/22 13:17:00 spz Exp $ - $D$(PATHETC)/nntpsend.ctl \ - $D$(PATHETC)/innreport.conf $D$(PATHHTTP)/innreport.css \ - $D$(PATHETC)/localgroups \ -- $D$(PATH_CTLWATCH) $D$(PATH_DISTPATS) \ +- $D$(PATH_CTLWATCH) $D$(PATH_DISTPATS) $D$(PATH_DISTRIBUTIONS) \ - $D$(PATH_ACTSYNC_CFG) $D$(PATH_ACTSYNC_IGN) \ - $D$(PATH_MOTD) $D$(PATH_STORAGECONF) \ - $D$(PATH_CYCBUFFCONFIG) $D$(PATH_BUFFINDEXED) \ @@ -35,7 +35,7 @@ $NetBSD: patch-ah,v 1.12 2009/09/22 13:17:00 spz Exp $ -SPECIAL = $D$(PATH_ACTIVE) $D$(PATH_ACTIVE_TIMES) \ - $D$(PATH_NEWSGROUPS) $D$(PATH_HISTORY) -+SPECIAL = ++SPECIAL = ## Get new versions of everything from samples directory. all: $(ALL) config diff --git a/news/inn/patches/patch-ai b/news/inn/patches/patch-ai index a48ae115d3e..49d3b4235d0 100644 --- a/news/inn/patches/patch-ai +++ b/news/inn/patches/patch-ai @@ -1,7 +1,7 @@ -$NetBSD: patch-ai,v 1.6 2009/09/22 13:17:00 spz Exp $ +$NetBSD: patch-ai,v 1.7 2009/12/16 22:10:25 spz Exp $ ---- include/dbz.h.orig 2009-05-21 20:08:33.000000000 +0000 -+++ include/dbz.h +--- include/inn/dbz.h.orig 2009-05-21 20:08:33.000000000 +0000 ++++ include/inn/dbz.h @@ -38,7 +38,7 @@ typedef struct { bool nonblock; } dbzoptions; |