| Age | Commit message (Collapse) | Author |
|
|
|
No other IRC daemon seems to do this (today?), don't remember why
ngIRCd did it in the first place ...
Closes #185.
Reported by Cahata in #ngircd, thanks!
|
|
The logic is reversed ...
This bug has been introduced by commit c74115f2, "Simplify mode checking on
channels and users within a channel", ngIRCd releases 21, 21.1, and 22 are
affected :-(
Problem reported by Cahata in #ngircd, Thanks!
|
|
|
|
Up to now, ngIRCd doesn't send a valid IRC command at all, oops!
|
|
|
|
The prefix confuses WeeChat, at least, which doesn't send an appropriate
PONG in the case ...
Debugging and patch by "wowaname" on #ngircd, thanks!
|
|
Pointed out by "wowaname" in #ngircd, thanks!
|
|
|
|
This results in a new connection attempt as soon as possible.
|
|
|
|
|
|
* alex/TestsuiteNoDNS:
Test suite: Don't use DNS lookups
|
|
Idea, initial patch, and testing by Christoph Biedl
<ngircd.anoy@manchmal.in-ulm.de>
|
|
The invite-, ban-, and except lists are affected by this change,
as well as G-Lines an K-Lines.
Problem pointed out by "wowaname" on #ngircd, thanks!
|
|
Up to now, ban, invite, and G-Line lists have been synced between servers
while linking -- but obviously nobody noticed that except list have been
missing ever since. Until now.
Thanks to "j4jackj", who reported this issue in #ngircd.
|
|
|
|
David Binderman <dcb314@hotmail.com> reported the following compiler warning,
which is a real bug in ngIRCd, thanks!
conn.c:2077:55: warning: logical not is only applied to the left hand
side of comparison [-Wlogical-not-parentheses]
|
|
|
|
The "SYSLOG" #define isn't related to "Conf_ScrubCTCP" at all, so
initialize the latter even when "SYSLOG" isn't #define'd.
Pointed out by wowaname on #ngircd, thanks!
|
|
There are installations out there that would like to configure more
than 16 links per server, so increase this limit. Best would be to
get rid of MAX_SERVERS altogether and make if fully dynamic, but
start with this quick and dirty hack ...
|
|
Different operating systems do behave quite differently when doing DNS
lookups, for example "127.0.0.1" sometimes resolves to "localhost" and
sometimes to "localhost.localdomain" (for example OpenBSD). And other
systems resolve "localhost" to the real host name (for example Cygwin).
So not using DNS at all makes the test site much more portable.
|
|
|
|
Detect if some tests have been skipped, for example when telnet(1) or expect(1)
is missing: ./contrib/platformtest.sh will echo a warning message now.
|
|
|
|
Let IRC_MODE() detect that the "fake" MODE command originated on the local
sever, which enables all modes to be settable using "DefaultUserModes"
that can be set by regular MODE commands, including modes only settable by
IRC Operators.
|
|
This fixes commit 6cbe1308 which only killed the connection when the
spoofed prefix itself belonged to a non-server client.
|
|
ngIRCd relaxes its flood protection for users having the user mode "F" set
and allows them to rapidly send data to the daemon. This mode is only
settable by IRC Operators and can cause problems in the network -- so be
careful and only set it on "trusted" clients!
User mode "F" is used by Bahamut for this purpose, for example, see
<http://docs.dal.net/docs/modes.html#4.9>.
|
|
ngIRCd uses "command throttling" and "bps throttling" (bytes per second).
The states are detected in different functions, Conn_Handler() and
Read_Request(), but handle the actual "throttling" in a common function:
this enables us to guarantee consistent behavior and to disable throttling
for special connections in only one place, eventually.
|
|
Change all #define's to follow the form
#define DEBUG_xxx {0|1}
to disable (0, default) or enable (1) additional debug messages.
And somewhat enhance some DEBUG_BUFFER messages.
|
|
Reformat and restructure some code, move all SSL related code into
one single #ifdef block, for example.
|
|
This partially reverts commit b130b35f4, "Update #include's: remove
unused and add missing ones", but fixes the following compiler and
analyzer warnings of Apple Xcode 5:
"Semantic issue: No previous prototype for function 'yyy'"
|
|
|
|
The "deheader" tool (<http://www.catb.org/~esr/deheader/>) has been
used to find unused #include directives as well as missing ones.
Tested on:
- A/UX 3.1.1
- ArchLinux (2014-03-17)
- Debian GNU/Hurd
- Debian GNU/Linux 6.0.9
- Debian GNU/Linux 7.4
- Fedora 20
- FreeBSD 9.2
- OpenBSD 4.8
- OpenBSD 5.1
- OS X 10.9
- Solaris 11
|
|
- Don't use HAVE_SYS_TYPES_H, <sys/types.h> is a required header now.
- Streamline check for boolean data types.
- Better indent #ifdef constructs.
|
|
Only include the <sys/time.h> header when using the select() IO API,
it isn't required otherwise.
|
|
These include files don't have a function any more, remove them.
|
|
|
|
Not even call the "dummy" functions.
|
|
|
|
Fix the following two errors emitted by the Apple K&R C compiler
on Apple A/UX:
"./class.c", line 47: no automatic aggregate initialization
"./class.c", line 47: illegal lhs of assignment operator
"./conf.c", line 1052: syntax error
Tested on A/UX 3.1.1.
|
|
|
|
Don't overwrite already converted text!
|
|
See commit d38d153f for details.
|
|
|
|
See commit d38d153f for details.
|
|
The cloaked IRC mask of a user is his visible mask, so the daemon has
to use it for generating the "one time" entries for the invite list of
the given channel.
Without this patch, ngIRCd records the real IRC mask which will never
match while the target client is "+x", and even worse, will disclose
the real mask on "MODE #channel +I" commands :-/
Bug reported by Cahata on #ngircd, thanks!
|
|
This fixes commit 2e168c78 ("Return ISUPPORT(005) numerics on
'VERSION'") and make sure, that the 005 numerics are correctly
routed back to the sender.
|
|
This is how ircd-seven, Charybdis, Hybrid, and InspIRCd behave,
for example.
|
|
This uses the same numeric as Charybdis and ircu families.
|