| Age | Commit message (Collapse) | Author |
|
|
|
No functional changes.
|
|
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)!
|
|
This test detects the recent NJOIN breakage, for example ...
|
|
This bug has been introduced by commit 1e386fb7ac which had
the logic reversed :-(
Reported by "ninguno" in #ngircd, thanks a lot!
|
|
|
|
|
|
|
|
- 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>!
|
|
|
|
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.
|
|
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.
|
|
No functional changes.
|
|
|
|
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!
|
|
|
|
|
|
|
|
This prevents wrong sizes data types on platforms where time_t doesn't
equal a long any more, for example on OpenBSD.
|
|
|
|
|
|
|
|
And add a note to doc/HowToRelease.txt to not forget to update the list
of authors in the future ...
|
|
|
|
This file is used of the "linter-clang" package of the Atom editor,
for example.
|
|
Now ngIRCd catches more errors on the server-to-server (S2S) protocol
that could crash the daemon before. This hasn't been a real problem
because the IRC S2S protocol is "trusted" by design, but the behavior
is much better now.
Thanks to wowaname on #ngircd for pointing this out!
|
|
|
|
|
|
|
|
At the moment ngircd fails the tests for reproducible builds in Debian
since it uses the __DATE__ and __TIME__ macros for the INFO command.
Instead of patching this out I decided to implement an optional
constant BIRTHTIME that allows you to set a time stamp for the "Birth
Date" information, in seconds since the epoch, like in
export CFLAGS += -DBIRTHTIME=$(shell date +%s --date="2015/08/15 23:42:22")
In the future, Debian will provide a SOURCE_DATE_EPOCH environment
variable, dealing with the situation until then will be my job.
The time format was taken from the NGIRCd_StartStr formatting in
ngircd.c so the "Birth Date" and "On-line since" lines in the INFO
output look similar:
:irc.example.net 371 nick :ngIRCd 22.1-IDENT+IPv6+IRCPLUS+PAM+SSL+SYSLOG+ZLIB-x86_64/pc/linux-gnu
:irc.example.net 371 nick :Birth Date: Tue Aug 25 2015 at 18:11:11 (CEST)
:irc.example.net 371 nick :On-line since Tue Aug 25 2015 at 18:11:33 (CEST)
:irc.example.net 374 nick :End of INFO list
The format of the time stamped is changed, but as far as I can tell, there's no
rule that is violated by that.
Bonus level: Reformat the messages so the time stamps are aligned.
|
|
|
|
|
|
|
|
It should be "host:port"!
|
|
Obviously I forgot to list this for ngIRCd 21 ... oops!
|
|
|
|
Use "NOTICE *" before registration instead of "NOTICE AUTH".
|
|
|
|
This should be more efficient.
|
|
Channel mode N (users on this channel can't change their nick)
|
|
|
|
|
|
|
|
|
|
ngIRCd uses GitHub, and Git itself is quite common today. So don't
include an own Git "mini HowTo" any longer.
|
|
|
|
|
|
The old name is still supported for compatibility reasons.
|
|
AUTH is a valid nickname so sending notices to it is probably not
a good idea. Use * as the target instead as done with numerics
when the nick is not available.
This mimics the behaviour in Charybdis, IRCD-Hybrid, InspIRCd 2.2,
Plexus 4, etc.
|
|
|