about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)Author
2015-06-24Add channel mode N (normal user can't change nick while on channel)Ian Chard
2015-06-07Merge remote-tracking branch 'LucentW/master'Alexander Barton
* LucentW/master: Fix with oneshot invites Fixed building issues\ Implement timestamp tracking of invites Keep track of who placed bans/invites/excepts IRC operators w/OperCanMode can kick anyone [already cherry-picked] Closes #203, Closes #205.
2015-06-06Make setgroups(3) function optionalAlexander Barton
For example, Interix is missing this function, which prevented ngIRCd to build on this platform. When setgroups(3) isn't available, a warning message is issued when ngIRCd starts up.
2015-05-16IRC operators w/OperCanMode can kick anyoneLucentW
Closes #202. (cherry picked from commit 10c7ba99e73b42ec8c4c191ccdae60bdd35bba7d)
2015-05-16Implement numeric RPL_LISTSTART(321)LucentW
lightIRC and other clients expecting RPL_LISTSTART should now behave correctly. Closes #207. (cherry picked from commit 0680ce5fd99bc643651d1433bcdaf271aeb73c46)
2015-05-15Fix with oneshot invitesLucentW
This should finally implement correctly oneshot invites sent via /INVITE
2015-05-13Fix MatchCaseInsensitive[List]](): lowercase string _and_ patternAlexander Barton
Up to now, only the the string ("haystack") became lowercased and was the compared to the pattern ("needle") -- which failed, when the pattern itself wasn't all lowercase ...
2015-05-13Streamline effect of "MorePrivacy" option (WHOIS, LIST)Alexander Barton
- Update documentation in ngircd.conf(5) - LIST: Don't hide channels for IRC Ops when "MorePrivacy" is in effect - WHOIS: Don't hide IP addresses/hostnames when "MorePrivacy" is in effect Closes #198
2015-05-13Fixed building issues\LucentW
Now builds cleanly. Pass all tests from make check.
2015-05-11Implement timestamp tracking of invitesLucentW
Now lists nodes also have the "onlyonce" field, since the valid_until is used to keep the timestamp of placing. Found no references to onlyonce or about valid_until being == 1, though, so it might be unused, but still available for other enhancements.
2015-05-11Keep track of who placed bans/invites/exceptsLucentW
Implements #203. WARNING: it does not track the time of placement of invites, since the time_t is already used as a flag for single use invites!
2015-05-11IRC operators w/OperCanMode can kick anyoneLucentW
2015-04-29Fixed indents 2LucentW
2015-04-29Fixed indents and documentationLucentW
(also updated the copyright date on the txt I edited)
2015-04-29Implement +I (private channel list on whois)LucentW
Implements enhancement requested in issue #179
2015-04-12Make sure that the target user is able to join a local channelAlexander Barton
Implement ERR_USERNOTONSERV(504) numeric and make sure that the target user is on the same server when inviting other users to local ("&") channels. ircd-ratbox uses the ERR_USERNOTONSERV(504) numeric for this, and I think this is a good idea -- other IRC daemons (like ircu) silently drop such impossible invites, but thats not a big benefit ... Idea by Cahata, thanks! Closes #183.
2015-04-12INVITE command: Enforce 1 second penalty timeAlexander Barton
This prevents flooding of the target client. This closes #186. Reported by Cahata, thanks!
2015-04-12MODE command: Always report channel creation timeAlexander Barton
Up to now when receiving a MODE command, ngIRCd only reported the channel creation time to clients that were members of the channel. This patch reports the channel creation time to all clients, regardless if they are joined to that channel or not. At least ircd-seven behaves like this. This closes #188. Thanks Cahata!
2015-03-27Fix spelling of RPL_WHOISBOT message textAlexander Barton
2015-03-14Don't send nick name as default PART reasonAlexander Barton
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!
2015-03-14Fix "WHO #<chan>" showing invisible users and hiding all visibleAlexander Barton
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!
2015-03-11Fix typo in src/testsuite/READMEAlexander Barton
2015-01-20Auth PING: Fix our information text for manual sending of "PONG"Alexander Barton
Up to now, ngIRCd doesn't send a valid IRC command at all, oops!
2015-01-20Auth PING: The numeric ID is a "long", use atol()Alexander Barton
2015-01-20Auth PING: Don't send a prefix in our PING commandAlexander Barton
The prefix confuses WeeChat, at least, which doesn't send an appropriate PONG in the case ... Debugging and patch by "wowaname" on #ngircd, thanks!
2014-12-27Fix syntax of ERR_LISTFULL_MSG(478) numericAlexander Barton
Pointed out by "wowaname" in #ngircd, thanks!
2014-12-20Enhance debug messages while sending CHANINFO commandsAlexander Barton
2014-12-20Reset "last try" timer when enabling a passive serverAlexander Barton
This results in a new connection attempt as soon as possible.
2014-12-10Change log message for "Can't resolve address"Alexander Barton
2014-12-10Change log messages issued for IP address forgeriesAlexander Barton
2014-11-01Merge remote-tracking branch 'alex/TestsuiteNoDNS'Alexander Barton
* alex/TestsuiteNoDNS: Test suite: Don't use DNS lookups
2014-10-16Update "CipherList" to not enable SSLv3 by defaultAlexander Barton
Idea, initial patch, and testing by Christoph Biedl <ngircd.anoy@manchmal.in-ulm.de>
2014-10-06Match list patterns case-insensitiveAlexander Barton
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!
2014-09-22Sync "except lists" between serversAlexander Barton
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.
2014-09-11Allow longer usernames for authenticationAlexander Barton
2014-09-10Correctly check that a server has a valid hostname and portAlexander Barton
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]
2014-08-08Lists_MakeMask: Don't destroy source bufferAlexander Barton
2014-07-29Initialize Conf_ScrubCTCP even when SYSLOG isn't #define'dAlexander Barton
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!
2014-07-20Increase MAX_SERVERS from 16 to 64Alexander Barton
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 ...
2014-06-09Test suite: Don't use DNS lookupsAlexander Barton
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.
2014-06-04Add "tests-skipped.lst" to src/testsuite/.gitignoreAlexander Barton
2014-06-04Test suite/platformtest.sh: Detect when tests have been skippedAlexander Barton
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.
2014-04-17Test suite: Update file headers and commentsAlexander Barton
2014-03-18Allow "DefaultUserModes" to set all possible modesAlexander Barton
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.
2014-03-18Spoofed prefixes: Really kill connection on non-server linksAlexander Barton
This fixes commit 6cbe1308 which only killed the connection when the spoofed prefix itself belonged to a non-server client.
2014-03-18Implement user mode "F": "relaxed flood protection"Alexander Barton
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>.
2014-03-18Handle "throttling" in a single functionAlexander Barton
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.
2014-03-17Streamline DEBUG_ARRAY, DEBUG_BUFFER, DEBUG_IO, DEBUG_ZIPAlexander Barton
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.
2014-03-17conn.c: Code cleanupAlexander Barton
Reformat and restructure some code, move all SSL related code into one single #ifdef block, for example.
2014-03-17Re-add #include's for header files of the C file itselfAlexander Barton
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'"