Repository navigation
NewsCache 1.3.17
First release from https://github.com/go-while/NewsCache, which continues
NewsCache with Christof Meerwald's agreement. It is SVN trunk r80 (1.3.16)
plus the fixes and tests below.
Bug fixes
- Access list: a Client entry with a plain IP address and no mask (for
example "Client 10.1.2.3") had prefix length 0 and matched every client of
that address family. It now means exactly that host. Affects 1.3.ipv6 to
1.3.16 (since the IPv6 support); configs with a mask or a host name are not
affected, and 1.2rc6 matched such entries by name only. - Access list: entries for one exact host (a.b.c.d/32, /255.255.255.255,
/128) never matched, including the example in newscache.conf(5). A prefix
longer than the address is now a syntax error. - SIGHUP with a broken newscache.conf no longer kills the daemon; it logs the
error and keeps the running configuration. - Upstream articles without an Xref header are served instead of failing with
423/430. - "400 too many users" is no longer followed by a NUL byte.
- "502 You have no permission to talk" ends with CRLF instead of a bare LF.
- Log file timestamps (builds without syslog) showed the previous month.
- newscacheclean: "ng == NULL | nr < firstnr" read an uninitialized variable
(| instead of ||); the result was the same. - The sample newscache.conf-dist loads again: BindFrom only takes numeric
addresses since the IPv6 support, and the sample used a host name. - make dist works again (a misspelled header name in NServer-0.9.1, there
since 1.2rc6), and make distcheck passes: the test programs are now
check_PROGRAMS, so make clean removes them. - configure.in carries the release version again; it still said 1.3.ipv6,
so 1.3.16 greeted clients with "NewsCache 1.3.ipv6".
Tests
- make check passes again (cArticle, cNewsgroupFilter and cConfig were broken).
- New end-to-end tests in tests/e2e (Go, using
github.com/go-while/nntp-testkit) run the real newscache binary against a
fake upstream server. make check runs them when Go is installed and skips
them otherwise.
Documentation
- README.md: project history, building, and a check of the old documentation.
- FEDORA.md: building, testing and installing on Fedora, with a systemd unit
and a cleanup timer.
Build
tar xzf NewsCache-1.3.17.tar.gz && cd NewsCache-1.3.17
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make && make check && sudo make installTested on Ubuntu 24.04 (g++ 13.3) and Fedora 44 (g++ 16.2, Fedora's rpm flags). See README.md and FEDORA.md.
SHA-256: b72ed76b6a747d630a2544dc3e41d770e8d3d815d8c73fc6f97212549749d2f6