Commit graph

616 commits

Author SHA1 Message Date
William Pitcock cc6ce2d689 ircd: hash: remove some detritus 2016-01-23 11:44:08 -05:00
William Pitcock b47f8a4fda ircd: import modified version of ratbox 3.1 whowas code 2016-01-23 11:16:34 -05:00
William Pitcock 912cae0c9c Revert "ircd: rework sendq limits a bit."
This reverts commit 9a5958119c.
2016-01-20 22:27:33 -05:00
William Pitcock 999fab778c Revert "LIST: use new sendq system to reimplement SAFELIST differently."
This reverts commit e835592cfc.
2016-01-20 22:26:55 -05:00
William Pitcock 704697b6b6 ircd: radixtree: allow irc_radixtree_elem_find() to find a fuzzy match instead of an exact match 2016-01-20 22:10:35 -05:00
William Pitcock 0d9a72de21 ircd: radixtree: add irc_radixtree_foreach_start_from() which uses irc_radixtree_elem_find() to find the starting point 2016-01-20 21:02:03 -05:00
William Pitcock 71c955336e ircd: add general::hide_opers_in_whois to simulate ircd-seven operhide 2016-01-15 13:38:40 -06:00
William Pitcock 4d21f1e8e0 extensions/helpops: new module, implementing a helpops system.
if loaded, this module takes over /stats p, and displays people who are umode +H.
to get umode +H, one must have the "usermode:helpops" permission.
2016-01-14 08:08:40 -06:00
William Pitcock ea2d270096 STATS: allow modules to override normal stats requests 2016-01-14 06:57:04 -06:00
William Pitcock 3ee43bcf29 ircd: get_channel_access(): do not derive channel pointer from membership 2016-01-13 22:16:44 -06:00
William Pitcock 14482679ce ircd: channel: implement an option to strip color codes from channel topics 2016-01-13 17:05:41 -06:00
William Pitcock be29ec793d ircd: import hidden channel modes framework, from ircd-seven
This allows for modules to define channel modes which are only visible to opers.
2016-01-13 16:34:27 -06:00
William Pitcock 15feac531c ircd: implement support for remote module load/unload/etc commands 2016-01-12 00:37:54 -06:00
William Pitcock cc7ae51cdc Allow remote DIE and RESTART (from ircd-seven) 2016-01-12 00:04:54 -06:00
William Pitcock a4721f5e9f ircd: implement EXTENDCHANS, based on ircd-seven (with some improvements from chatircd) 2016-01-11 23:32:23 -06:00
William Pitcock fe749d3709 ircd: implement GRANT subsystem based on ircd-seven 2016-01-11 23:02:03 -06:00
William Pitcock b870a5f8e9 extensions/override: display mode-change string in override messages 2016-01-11 22:40:32 -06:00
William Pitcock 7abb4a4f0d parse: add missing semicolon 2016-01-11 22:31:19 -06:00
William Pitcock e4603e3d27 parse: implement reconstruct_parv() 2016-01-11 22:28:55 -06:00
William Pitcock 9b74b99268 ircd: hash: channels are no longer a hashtable 2016-01-09 23:47:50 -06:00
William Pitcock 730b914c17 LIST: more cleanups 2016-01-09 23:34:52 -06:00
William Pitcock 9a5958119c ircd: rework sendq limits a bit.
The sendq limit is now soft, now we halt processing if a sendq is exceeded, until it is sufficiently drained.
This allows us to implement SAFELIST and other floody commands without hacks.
2016-01-09 23:14:04 -06:00
William Pitcock bb4ac31447 ircd: hash: use an irc_radixtree for client names 2016-01-09 05:30:13 -06:00
William Pitcock 3eeccbe3ce ircd: hash: use an irc_radixtree for IDs 2016-01-09 05:13:10 -06:00
William Pitcock 46be39faab ircd: hash: use an irc_radixtree for storing resv's 2016-01-09 04:59:02 -06:00
William Pitcock 5c7c7d65c2 ircd: hash: client connection id hashtables are now dictionaries keyed by uint32 2016-01-09 04:25:41 -06:00
William Pitcock 45dfdf46c8 ircd: irc_dictionary: allow storage of non-string types as keys 2016-01-09 04:09:40 -06:00
William Pitcock 21d5a11cb8 ircd: irc_dictionary: also show dictionary stats 2016-01-09 01:34:37 -06:00
William Pitcock 99b461bb2f ircd: ensure irc_dictionary users have names, for stats tracking. 2016-01-09 01:22:11 -06:00
William Pitcock db891ac3ca ircd: irc_radixtree: add irc_radixtree_irccasecanon and irc_radixtree_strcasecanon helpers 2016-01-09 01:00:55 -06:00
William Pitcock 325cc939b7 ircd: irc_radixtree: add some convenience functions for tracking radix tree stats 2016-01-09 00:54:57 -06:00
William Pitcock 8e6ba6f9ce ircd: add irc_radixtree, which is like irc_dictionary but uses a radix tree as the backing store 2016-01-09 00:44:39 -06:00
William Pitcock e575ed5193 libratbox: disable the block allocator, but keep it as a stub for now 2016-01-08 07:16:23 -06:00
William Pitcock 1eeb046930 ircd: remove internal resolver, no longer used 2016-01-08 06:39:51 -06:00
William Pitcock 1d02144f8b ircd: move DNS resolution over to authd 2016-01-08 06:31:08 -06:00
Aaron Jones d8c4154da2 Fix LTDL conditional, remove some unnecessary and/or ugly configure tests 2016-01-07 17:15:55 +00:00
William Pitcock fb7d74efef ircd/authd: split out authd lifecycle functions from actual DNS functions 2016-01-06 04:41:57 -06:00
William Pitcock 7d2852b4d1 dns: new WIP client which queries authd for DNS records, not yet in use 2016-01-06 04:28:34 -06:00
William Pitcock d610d3f344 config.h: fix SPATH 2016-01-06 02:00:12 -06:00
William Pitcock 2a19fc3f57 general: remove last vestiges of static modules support (this hasn't ever actually worked...) 2016-01-06 01:28:20 -06:00
William Pitcock f272e7abc7 modules: use libltdl to load the modules 2016-01-05 21:39:09 -06:00
William Pitcock c52df12552 buildsystem: convert to automake + libtool 2016-01-05 21:20:25 -06:00
William Pitcock 9e07c8f70b whois: add a hook allowing for ShowChannel() behaviour to be overridden for channel visibility 2016-01-05 18:45:07 -06:00
Juuso Lapinlampi 6eb0267a90 messages.h: Remove 900-902 IRCv3.1 SASL trailing period
The IRCv3.1 SASL specification [1] has been updated today, and brings a
level of consistency with the trailing periods (or the lack of).

This implements the change made in
ircv3/ircv3-specifications@6d2ca77ffd.

[1]: http://ircv3.net/specs/extensions/sasl-3.1.html
2015-12-30 12:51:48 +02:00
Juuso Lapinlampi e0160ec5a4 messages.h: Standardize 256 (RPL_ADMINME) with RFC 1459
RPL_ADMINME is a response the client receives using the ADMIN command.
Charybdis used to implement a non-standard version of this.

The RFC 1459 standard [1] says in section "6.2 Command responses.":

            256     RPL_ADMINME
                            "<server> :Administrative info"

This commit corrects the behavior to follow the standard.

[1]: https://tools.ietf.org/html/rfc1459
2015-12-28 21:19:47 -06:00
William Pitcock 0817ad4cd0 messages.h: fix numeric 320 2015-12-28 01:36:40 -06:00
William Pitcock 72ad5c04fe whois: list active operator block and privset when appropriate 2015-12-28 01:33:09 -06:00
William Pitcock d513218a9e LIST: allow channel display threshold to be configured (closes #109) 2015-12-26 22:23:28 -06:00
William Pitcock 2f9687c48c channel: cache duplicate calls to is_banned() and is_quieted() 2015-12-13 08:13:52 -06:00
Jilles Tjoelker 2d28539c68 Reduce clean_nick() code duplication further.
Side effect: hurt and monitor now allow nicks starting with a digit.
2015-12-13 00:22:21 +01:00