NNTPCache-2.3.3b1 shall find its way into daylight sometime over the next 48 hours. Despite the fact this is primarily a bugfix, not a feature release, this version will initially have that little "b1" (thats beta one, not cruddy sci-fi) tag on the end of the version number. Yes, a few features snuck in from the development tree, but the beta tag is primarily due to the quantity of bug fixes (and thus source code changes), some of which were user-contributed (meaning I'm a little unsure if they don't actually contribute other bugs in their own right). So if anyone is holding back with patches, now is the time to let loose. Below are the changes since 2.3.2.1. There likely to be only a handful of other changes other than what you can see here. If you are submitting a bug-fix try and make sure it hasn't already been fixed :) 2.3.3b1: * new: web-server / statistics substantially extended * bugfix: the introduction of 64 bit counters in nntpcache-2.3.2 caused headaches (e.g sigsegvs, in the nocem logging macros/statistics) for systems which didn't auto-demote 64bit - 64bit arithmetic into a 32bit int when used as an argument to *printf corresponding to a '%d' format specifier. * bugfix: src/nocem.c:nocem_scan_group() typo caused the last nocem update time to be miscalculated. * bugfix: missing flushes in src/ihave.c caused IHAVE to sometimes pause forever. * bugfix: more than maxXoverNodes * 512 (10240 by default) XOVER's being accessed in one hit resulted in XOVER's prior to this figure (in the same hit) not making it onto the disk. * bugfix: /* hpux */ comment in configure.in naturally tried to run the first thing in the root directory ;) * bugfix: don't believe a news-server when it says there are 0 0 articles in a group in response to a GROUP command - 0 0 means `undefined' according to RFC977. * bugfix: potential race condition for Update and Expire daemon reaping. * bugfix: gif images were not always presented correctly from the nntpcahce web-server (cache miss conditional blank line in the HTTP prelude). * change: clarify a few type definitions that egcs-2.91.50+1998071 took a disliking to. compiles with -O3 and -mpentium * bugfix: ARTICLE <stats@nntpcache> a sigsegv. this code is being phased out anyway (in favour of statistics as presented by the web-server), it now (mostly) works again. * bugfix: global (as opposed to per-server) byte counter statistics were not collected correctly. * bugfix: trivial typo (extra \r\n) for loginn macro in src/post.c * bugfix: add a dummy call calloc() to force linking with our calloc() replacement. some systems (e.g linux/libc6) don't over-ride libc calloc otherwise and thus suffer from interference between the nntpcahce shared memory [cm]alloc replacement library and libc calloc (the latter being called not from nntpcache, but directly from libc routines). * bugfix: tweak inn logging compatability macros for greater verismiltude. * bugfix: taskInfoPrivacy (concealing the current group of a client from ps(1)) wasn't obeyed everywhere. * bugfix: add a few missing closelog()'s (not important) * bugfix: trivial logging typo in src/nntpcache.c * bugfix: force `mode reader' for async ACTIVE/NEWSGROUPS (etc) updates. Some news-servers didn't refused to dish out active lists et al when not in reader mode. * new: adaptive LISTGROUP * new: smarter handling of high/low article counts * bugfix: "permissions" in src/http.c somehow ended up as "permimacroons". No-one caught this before. Like the peasents cheering the emperor's imaginary clothes, no one wanted to admit they were just too unhip to dig it.