Commit Briefs

6a5569c27d Alexander Barton

Update copyright notices for 2016


49ab79d0e6 Alexander Barton

Limit the number of message targes, and suppress duplicates

This prevents an user from flooding the server using commands like this: PRIVMSG nick1,nick1,nick1,... Duplicate targets are suppressed silently (channels and clients). In addition, the maximum number of targets per PRIVMSG/NOTICE/... command are limited to MAX_HNDL_TARGETS (25). If there are more, the daemon sends the new 407 (ERR_TOOMANYTARGETS_MSG) numeric, containing the first target that hasn't been handled any more. Closes #187.


cedba36965 Alexander Barton

Add "_MSG" postfix to ERR_WILDTOPLEVEL_MSG


40bea95c08 Alexander Barton

Commands.txt, PRIVMSG: Fix "server mask" description


7c7d03b730 Alexander Barton

Enahnce comments for Send_Message() and Send_Message_Mask()

No functional changes.


4693226d69 Alexander Barton

Get rid of unclever assert() in Send_Message_Mask()

Either we use assert() to _guarantee_ a certain condition, or we use if(...) to test for it. But never both. So get rid of the assert() in Send_Message_Mask() and handle the case that the target mask doesn't contain a dot (".") as regular error, don't require the caller to assure that any more. This polishes commit 5a312824. Please note: The test in Send_Message() is still _required_ to detect whether the target is a channel (no dot) or a "target mask" (at least one dot)!


afb59ab8e5 Alexander Barton

Test suite: Add new test for server-server logins

This test detects the recent NJOIN breakage, for example ...


d90f0323e5 Alexander Barton

Fix NJOIN handler killing all clients

This bug has been introduced by commit 1e386fb7ac which had the logic reversed :-( Reported by "ninguno" in #ngircd, thanks a lot!


01e590b007 Alexander Barton

contrib/ngindent: Fix shebang line


7b7ee6a3ca Alexander Barton

contrib/platformtest.sh: Warn when external tools are missing


46838510ab Alexander Barton

contrib/platformtest.sh: Make script more portable


0903343f85 Alexander Barton

Platforms.txt: Add and update systems

- Update i386/unknown/openbsd3.5 (gcc 2.95.3) - Update i686/pc/linux-gnu (gcc 2.7.2.1) - Add x86_64/unknown/linux-gnu (gcc 5.3.0) Thanks to Götz Hoffart <goetz@hoffart.de>!


182bfac855 Alexander Barton

doc/Platforms.txt: Sort list


1e386fb7ac Alexander Barton

Make NJOIN handler more fault-tolerant

Don't crash the daemon when the NJOIN handler can't join the new client to a channel (when the Channel_Join() function failed) but try to KILL this client -- which is the only possible reaction besides crashing: otherwise the network would get out of sync.


52ccba5d1e Alexander Barton

IRC_KillClient(): Don't break when called without "Client"

The IRC_KillClient() function is documented to handle the case that the "Client" structure is NULL, so make sure that this actually works and can't crash the daemon. Please note: The current code doesn't make use of this feature, so this fix is definitely the "right" thing to do but doesn't fix an actual problem.


98e9467c85 Alexander Barton

IRC_NJOIN(): Code cleanup

No functional changes.



398022631a Alexander Barton

Fix NJOIN not propagating "half ops" status

ngIRCd tested for the wrong prefix of "half ops" when processing NJOIN commands and therefore never classified a remote user as "half op". Thanks to wowaname for pointing this out on #ngircd!


f2cef85fde Alexander Barton

ngIRCd Release 23 (tags/rel-23)


6ed59a8548 Alexander Barton

Update ChangeLog file


49acb68584 Alexander Barton

Update doc/Platforms.txt


d8aba40f07 Alexander Barton

Explicitly cast time_t to long when printing it out

This prevents wrong sizes data types on platforms where time_t doesn't equal a long any more, for example on OpenBSD.


87887bc632 Alexander Barton

contrib/Debian/changelog: Fix email address


cb3a4321a2 Alexander Barton

Documentation: Spelling fixes


1e84b2640e Alexander Barton

ngIRCd Release 23~rc1 (tags/rel-23-rc1)