Commits


ngIRCd Release 26


INSTALL.md: Add instructions for ArchLinux (pacman)


ngIRCd Release 26~rc2


Update NEWS, ChangeLog and doc/Platforms.txt files


Add AppStream metadata file: contrib/de.barton.ngircd.metainfo.xml


Don't send invalid CHANINFO commands when no key is set It can happen that a channel is +k, but no key is set: for example by misconfiguring a pre-defined channel. In this case, ngIRCd sent an invalud CHANINFO command ("CHANINFO #test +Pk 0 :'", note the unset key represented by the two spaces) to its peers. Fix this and enhance the CHANINFO documentation.


Update NEWS and ChangeLog files


Update description text in manual page, too!


ngircd.spec: Fix name of README.md and INSTALL.md


Update description texts Bring them in line with the updated texts on the homepage.


IRC_SQUIT(): Fix use-after-free when unregistering the sending client


IRC_SERVER: Make sure that the client sent a prefix The SERVER command is only valid with a prefix when received from other servers, so make sure that there is one and disconnect the peer if not (instead of crashing ...). This obsoletes PR #275. Thanks Hilko Bengen (hillu) for finding & reporting this as well for the patch & pull request! But I think this is the "more correct" fix.


Enhance debug logging for PONG commands Distinguish between expected and unexpected PONG commands.


Fix PING-PONG handling when processing backlog in read buffers Prior to this commit, the PONG wasn't registered correctly, becauuse the "last ping" time was set to time(NULL), which could be bigger than the "last data" time stamp, for example when handling the read buffer took more than 1 second -- and this resulted in the PONG time out kicking in effectively disconnecting a newly linked server for example, because ngIRCd thought it was still waiting for a PONG: last data < last ping. Now the "last ping" value has three possible values: 0: new connection, no PING, no PONG so far. 1: got a PONG, no longer waiting for a PONG. <t>: time stamp of last sent out PING command.


Revert "Set the "last data" time to "last ping" time when updating the latter" This patch completely broke the PING-PONG logic: now ngIRCd never disconnects any stale peers but keeps sending out PINGs over and over again ... The real issue (server disconnects right after connect) will be fixed in the next commit, but let's revert to the somewhat "half-broken but 'known' state" first ... This reverts commit 79a917f954bef8089967786bd3597a6e5ff5c336.


testsuite: Add missing files to EXTRA_DIST 26~rc1 as extracted from tarball cannot be built/tested with SSL support because of a missing script and certificates.


ngIRCd Release 26~rc1


Update config.guess and config.sub to recent versions - config.guess: 2020-04-26 - config.sub: 2020-05-04 And set both scripts +x, they are executable.


Update NEWS and ChangeLog files


Add missing authors to AUTHORS, tweak ".mailmap" file


Tweak & update doc/HowToRelease.txt a bit ...


Allow more characters per line in MOTD and help text files Change the line buffer in the Read_TextFile() function from 127 to COMMAND_LEN (=512) bytes. Lines can't even get that long, because they have to be prefixed before being sent to the client, so this is a sane maximum. This allows for even more "fancy" and "wider" MOTDs :-) Closes #271.


Show allowed channel types in ISUPPORT(005) numeric only Don't show the static list of all possibly available channel types ... Closes #273.


Platforms.txt: Add x86_64/apple/darwin19.0.0 - Add x86_64/apple/darwin19.0.0 (Apple clang 11.0)


Update Platforms.txt - Update powerpc/apple/darwin8.11.0 (gcc 4.0.1) - Add mips/sgi/irix6.5 (SGI C compiler) - Add mipsel/unknown/netbsd8.0 (gcc 5.5.0) Thanks to Götz Hoffart <goetz@hoffart.de>!