1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494
|
==============================================================================
* 1.12.0, 2022-05-26
### CHANGES
- leafnode now requires the PCRE2 library instead of PCRE.
PCRE2 has been around for a few years and is maintained,
while PCRE is end of life, no longer supported,
and is being phased out by distributions.
See its home page, https://github.com/PhilipHazel/pcre2
Fixes Debian Bug#1000110 reported by Matthew Vernon via Moritz Mühlenhoff.
- Documentation for running under daemontools/ucspi-tcp (tcpserver)
has been removed, only UNINSTALL-daemontools remains as documentation.
- leafnode 1 is now distributed in gzip and xz formats.
bzip2 will no longer be used because xz performs better overall.
- All files have been converted from ISO-8859-1 to UTF-8 encoding.
- Added leafnode@.service and leafnode.socket as examples for how to launch
the network-based leafnode listening on port 119.
==============================================================================
* 1.11.12, 2021-03-28
### CHANGES
- The sourceforge.net hosting was reconfigured to serve HTTPS, thus, the
leafnode website is now at https://leafnode.sourceforge.io/
- https://www.leafnode.org/ is now being served by an external nginx-based
web server so it can use a proper TLS certificate.
- The GMANE links and last modified tag have been removed from the
website.
- The web site has been updated to use newer https:// links where available.
- The mailing list has been moved to the leafnode.org domain. See README.
### BUGFIXES
- A configuration --without-ipv6 now compiles again. Patch by Michael Bäuerle.
- Leafnode recognizes an EEXIST error to rmdir() the same as ENOTEMPTY.
Patch by Gary R. Schmidt.
- Leafnode no longer trashes the stack if it, while scanning the message.id
directory, finds a directory with an all-numeric name that is 1000 or higher.
Reported by Matthias Gerstner.
==============================================================================
* 1.11.11, 2015-08-24
### BUGFIXES
- The configfile parser now strips whitespace between a configuration
parameter's value and a trailing comment. Found by Cecil Westerhof.
- The roff manual page sources now render proper hyphens (-), minus characters
(\-) and en-dashes (\[en]) depending on their context. This is so that
copying-and-pasting from the manual page works properly.
- The code that checks if the peer is local now properly deals with IPv4
mapped IPv6 addresses.
==============================================================================
* 1.11.10, 2013-06-11
### BUGFIXES
- Some more format strings that used the 'h' width specifier have been
changed to remove it, and cast the argument instead, in case we must use
our snprintf.c replacement.
Fixes FreeBSD PR#179483 and https://sourceforge.net/p/leafnode/bugs/19/,
debugged and reported by Alexey Markov.
- The configure.ac updates broke detection of a working snprintf, so that
the bug above was exposed on many systems.
### CHANGES
- When cross-compiling, leafnode now assumes that the target has a proper
snprintf implementation, and will not provide its own.
==============================================================================
* 1.11.9, 2013-06-10
### BUGFIXES
- The whoami() function is now IPv6 enabled. Code contributed to openSUSE by
Boris Manojlovic and submitted by Andreas Stieger, with additional bugfixes
by Robert Grimm, fixing Debian Bug #667998, reported by Jose Antonio Ortega
Ruiz <jao@gnu.org>.
- Do not delete news spool on "make uninstall" (which would lose all data),
but instead only print instructions how the user could do that.
Reported by Pasi Kallinen, fixes SourceForge bug #3520120.
- The --with-user= now propagates to leafnode.xinetd.
Inspired by a bug report sent by Ken Robinson.
- When complaining that we are unable to switch the user ID, report the
current real and effective user IDs to ease debugging.
Inspired by a bug report sent by Ken Robinson.
### CHANGES
- Leafnode no longer supports PCRE versions before 2.06.
- Leafnode now lets autoconf look for a good sed command, and runs it
instead of a hard-coded "sed" (first from the $PATH) from "subst".
- Leafnode's subst program (run during build) now runs sed under LC_ALL=C.
This might fix SourceForge Bug#3575233 reported by Martin Krischik,
where leafnode failed to compile under macports for MacOS X 10.8.
- Work around compilation failures in ma_sock2name.c due to broken
IN6_IS_ADDR_V4MAPPED macro on Linux eglibc (Ubuntu 12.04) when
compiling in strict conformance mode.
- configure.ac updates to avoid autoconf warnings on newer autoconf versions.
- Remove some compiler warnings that were enabled during development, but
are not terribly useful on code that is not going to change much.
==============================================================================
* 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.
==============================================================================
* 1.11.6, 2007-03-17
### BUGFIXES
- .site TLDs are refused in FQDN.
- apply patch from Georg Schwarz to fix compilation with SGI IDO cc.
- do not delete articles if the References: lines are malformatted.
Reported by Adam Funk.
- support autoconf 2.60, fixing datarootdir-related warnings.
- do not log authentication success unless in verbose mode.
### DOCUMENTATION
- fix minor typos in README-FQDN.
- minor changes to INSTALL.
==============================================================================
* 1.11.5, 2006-04-09
### BUGFIXES
- Fix logging of invalid FQDH/FQDN.
- Do not trash delaybody download markers if the interesting.group/* files
are writeable by NEWS_USER ("news") but owned by somebody else. Found
debugging a problem described by David Aldred.
- Some syslog messages were still logged at LOG_DEBUG priority without
debugmode set.
- Support noactive = 0. Reported by Rafal Maj, Debian Bug #329760.
- Support nodesc = 0.
- Keep non-expiring groups (negative groupexpire date) in active file even if
they have expired upstream. Sourceforge Bug #1230256, Thomas Zajic.
- INSTALL: leafnode needs a "news" group as well. Found by Julien Sansonnens.
- Allow unterminated lines in regular files. Found by Ivo Maintz.
- Applyfilter unfolds headers before matching, to match fetchnews behavior.
- Applyfilter no longer unconditionally removes messages without body
if delaybody is off. The interesting.groups/group.name file might still
have pointers so that fetchnews will download the bodies later.
### CHANGES
- "killed nnn (<mess@ge.id>), already fetched before" messages have been
demoted to debug priority, to avoid syslog spamming with multiple upstream
servers or after crashes. Reported by Adam Funk.
- The RPM is now accompanied by a -debuginfo package.
- Build "grouplist" program in "make check".
- The fetchnews manual page states that -f is not to be used in cron jobs.
- The filtering documentation (applyfilter(8) man page and filters.example)
was overhauled, at the suggestion of Michael R. McCarrey.
Mike also courteously provided additional filter examples with documentation.
### WEBSITE
- http://www.leafnode.org/ is now served by SourceForge's VHOST service and
thus serves the same content as http://leafnode.sourceforge.net/
==============================================================================
* 1.11.4, 2005-11-23
### BUGFIXES
- Skip server processing when posting articles fails, for instance,
because of a protocol error or server disconnect/timeout.
Bug found when analyzing Debian #318644.
- Do not mark the active for refetch when the failed server has "noread" set
or fetchnews is in -P (post only) mode. Patch by Brian Sammon.
### COMPATIBILITY CHANGE
- GNU coreutils 5.92 are broken and can no longer create a missing directory
with "mkdir -p missing/." Work around the bug. Reported by Michael Shigorin.
### DOCUMENTATION
- Switch FAQ.pdf formatting back to XSL stylesheets and RenderX XEP 4.4,
now that a personal license for OpenSource documentation is available.
- Renamed all CAN-YYYY-NNNN to CVE-YYYY-NNNN in leafnode-SA-*.txt, ChangeLog,
NEWS and OLDNEWS to chase the CVE database change of 2005-10-19.
==============================================================================
* 1.11.3, 2005-06-08
### SECURITY BUGFIXES
- Fetchnews did not detect timeouts while it was downloading an article
header, which malicious upstream servers could exploit to mount a denial of
service attack against the fetchnews client. See leafnode-SA-2005-02.txt.
CVE Name: CVE-2005-1911
### BUGFIXES
- Bugfix sed expression in makesubst script. (Reported by Jeff Zacharias.)
### CHANGES
- texpire now tags the message.id expired count with "message.id" rather than
"total:" to avoid misleading the user who assumes that "total:" would have
to be the sum of the group counts. See also the FAQ change below.
SourceForge bug #1215453.
- When debugmode and verbose mode are set, leafnode programs now print a
warning to stdout that the user should check syslog.conf and the syslog
output rather than the screen print for debugging and sleeps for three
seconds.
### DOCUMENTATION
- Add FAQ entry to explain discrepancies between texpire group counts and
message.id expired articles counts.
- Add FAQ entry to explain influence of Gnus' gnus-read-active-file setting
on lost subscriptions, and extend stop fetchnews from unsubscribing FAQ.
Debian bug #307685.
- Drop FAQ entry on license issues as some parts of leafnode are in fact GPLd.
- Drop FAQ entry on why old articles aren't posted, obsolete since 1.9.33.
- INSTALL and INSTALL_de have been polished.
- Add a hint that syslog.conf must be edited to config.example.
- leafnode(8) mentions that LIST ACTIVE keeps an existing subscription fresh.
==============================================================================
* 1.11.2, 2005-05-04
### SECURITY BUGFIXES
For these two bugs together, the CVE Name is CVE-2005-1453.
For further cross-references, see
<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2005-1453>
- Fix fetchnews segfault when connection to server dies while fetchnews is
reading an article body (use-after-free bug). Regression introduced into
leafnode v1.9.52. Denial of service possible, see leafnode-SA-2005-01.txt.
- Fix fetchnews segfault when connection to server dies while fetchnews is
reading an article header. Regression in security fix of leafnode v1.9.48.
Denial of service possible, see leafnode-SA-2005-01.txt
### BUGFIXES
- fetchnews will no longer re-fetch the active file for a server if it has been
completely received even if fetching articles from this server encounters a
problem. Long-standing bug. Debian bug #70052.
- fetchnews will now properly mark the active for complete re-fetch if it says
so. Previously, it forgot the mark in some circumstances.
- A problem fetching the active file or descriptions for a newly added server
will now mark the active for re-fetch even if articles have successfully
been retrieved from the same server.
### DOCUMENTATION
- Repair two lines in the German leafnode(8) manual page that became invisible
as they ran together with a .PP macro.
==============================================================================
* 1.11.1, 2005-04-25
### BUGFIXES
- Fix pluralization bug in "n article[s] posted" message, Debian bug #303157.
- Fix other pluralization bugs.
- Update address of web site in pseudo article, reported by Daniel Zwick.
### PORTABILITY
- Backport leafnode-2 code to prefer /usr/xpg4/bin/id (if present) to
/usr/bin/id, to improve portability to Solaris and avoid bogus warnings
during ./configure.
### DOCUMENTATION
- Remove TODO file.
- Update documentation and addresses of mailing lists and web sites,
there have been obsolete links around in code, pseudo article and
documentation.
- Add missing IPv6 hints to README files.
- Add incompatibility hint WRT configuration parser to README files.
- Clarify differences between global and server-specific parameters
in leafnode(8) manual pages.
==============================================================================
* 1.11.0, 2005-03-16
### INCOMPATIBLE BUGFIXES
- fetchnews now supports IPv6 (this causes the version bump to 1.11)
- the configuration parser now supports quoted strings on the right-hand
side, so that "#" can be used in passwords. See the section
CONFIGURATION in leafnode(8) for details.
### BUGFIX
- Fix snprintf test that caused leafnode to always use the local
snprintf rather than the system's. Bug found by Bruno Rohee.
Regression in leafnode-1.10.7, though with no user-visible effect.
==============================================================================
* 1.10.8, 2005-01-21
### BUGFIX
- Keep interesting groups interesting on LIST ACTIVE and GROUP even if
they have no articles. Reported by Brian Sammon.
==============================================================================
* 1.10.7, 2004-11-22
### BUGFIX
- The shipped snprintf function didn't report the proper size for
literals. It now does. Report by Michael Bäuerle.
- Pull snprintf/vsnprintf replacements from the libc's name space,
prefixing them with ln_ on linker level. This avoids our overriding
libc's snprintf/vsnprintf which may cause bogus aborts when other
parts of the libc (syslog for instance) use formatting characters that
our minimal vsnprintf implementation does not support.
Fixes an abort reported by Michael Bäuerle on a system that had
a non-working snprintf function.
### CHANGE
- The "GROUP.NAME not found in groupinfo file" message will now only
appear at verbose levels 2 and higher, to avoid uninteresting output
when a group has just been deleted but is still in interesting.groups.
Reported by Berthold Höllmann.
### INTERNAL
- The use of the shipped snprintf function for testing purposes can now
be forced by running: env FORCE_SHIPPED_SNPRINTF=yes ./configure --opts
==============================================================================
* 1.10.6, 2004-09-22
### BUGFIX
- If a server that was configured with "noactive" was unavailable,
fetchnews would still mark the active file for download. Patch by
Brian Sammon.
### DOCUMENTATION
- History up to and including 1.9.54 has been split off into an OLDNEWS file.
==============================================================================
* 1.10.5, 2004-08-26
### BUGFIX
- classic delaybodymode (delaybody set, delaybody_in_situ unset) stored
articles with inaccessible Message-ID file and caused duplicates.
Reported by Til Schubbe.
==============================================================================
* 1.10.4, 2004-08-15
### CRITICAL BUGFIX
- Only texpire will now delete the message.id/DDD/mids files and only after it
has the lock, to prevent premature (but reversible) expiry of message.id
files followed by gazillions of relinks at the next texpire run.
Bug located and fix tested by Rein Klazes, thanks a lot.
### CHANGES
- Make debug mode logging of texpire a bit more verbose, log the reason why a
message.id file was unlinked.
- Minor internal cleanups to make the code a bit more efficient, reduced
memory use in texpire a bit.
==============================================================================
* 1.10.3, 2004-07-28
### BUGFIX
- LIST and LIST ACTIVE reported "empty group" for pseudo groups, rather than
a group with one article. Reported by Brian Sammon.
### COMPATIBILITY
- Also refresh newsgroup subscription if the newsreader uses LIST ACTIVE
news.group (when news.group is not a pattern). Suggested by Brian Sammon.
==============================================================================
* 1.10.2, 2004-07-20
### BUGFIX
- Remove old .overview.?????? files from the spool, in order to avoid
"cannot rmdir(/var/spool/news/group/name): Directory not empty" error.
Reported by Johannes Berg, Debian Bug #257281.
==============================================================================
* 1.10.1, 2004-06-23
### BUGFIX
- Make sure that the overview (NOV, XOVER) does not cut off the Xref
information. Regression in leafnode 1.9.50, older versions were fine.
Reported by Jörg Lüders after a thread in news.software.readers started by
the pseudonymous SINNER.
### PORTABILITY
- the .spec file now lists BuildPrereq: libpcre.so.0 rather than pcre, to
become independent of the actual package name, for Mandrake 10.0
compatibility. Reported and fix tested by Kevin Bulgrien.
==============================================================================
* 1.10.0, 2004-06-10
### INCOMPATIBLE SOURCE-ONLY CHANGE
- PCRE was dropped from the distribution. If it does not come with your
operating system, you can get it separately from http://www.pcre.org/
### BUGFIXES
- Bugfix: texpire could crash when expiring groups that are on disk but not
longer in the active file. Reported by Johannes Berg, Debian bug #248824.
- Bugfix: texpire could crash when all-numeric name components were in the
newsgroup name or in the path. Reported by José María Mateos.
- Bugfix: texpire memory leaks in error handling paths.
- Bugfix: print expiry time for groups that are no longer in the active file.
- Portability: fetchnews aborted on systems with a broken [v]snprintf
function (such as FreeBSD 4.8 or 5.1) because it used the %p formatting that
isn't supported by the replacement snprintf that leafnode uses on these
systems. Fixes FreeBSD PR #67111, reported first by Jeff King.
==============================================================================
vim:tw=78:
|