| Commit message (Expand) | Author | Age | Files | Lines |
| * | Fix authd crash with dnsbl•••If a dnsbl returned a hit, authd would reliably crash. While this still
results in the client being properly rejected, it is very noisy in
server notices/logs.
Also update reference.conf as it was still using the old (deprecated)
block name for DNSBLs. Copy over the updated wording from
ircd.conf.example.
| Ryan Schmidt | 2026-07-14 | 1 | -9/+9 |
| * | Remove some legacy cruft•••- The hurt extension doesn't work well and is now supplanted by
m_quarantine
- ip_cloaking_old has been broken (causes segfaults) for years now,
remove it
- ip_cloaking_3.0 has hardcoded keys that require .c file edits to be
secure. Anyone using it will probably maintain their fork of this file
anyway, but it's not good for new people to use. Remove that too
- Remove LOCOPS and umode +l entirely; they serve no useful purpose on
unified networks. This also removes the no_locops extension since it
is now useless
| Ryan Schmidt | 2026-05-13 | 1 | -14/+3 |
| * | Add "bypass" capability to spamfilter•••A new flag ACT_BYPASS was added as a generic flag to bypass +u if set.
Opers remain immune, both as senders and recipients, so that spamfilter
cannot be abused to lock people out of managing filters, talking to
services, etc.
Three new configuration items were added to the general section of
ircd.conf to control filter behaviour:
- filter_sees_user_info: This replaces the old #defines for FILTER_NICK,
FILTER_IDENT, and FILTER_HOST to determine whether the hostmask of the
user is passed to the spamfilter or whether we pass a dummy *!*@*.
- filter_bypass_all: If set, the new ACT_BYPASS can allow every filter
action (DROP, KILL, ALARM) to bypass +u if set in conjunction with
those flags. If unset, only the DROP action can bypass +u and
ACT_BYPASS has no effect on other actions.
- filter_exit_message: This is the quit reason displayed, to move it out
of a #define (we still keep a define around for a default reason in
case it is unspecified).
If either filter_sees_user_info or filter_bypass_all are set, the
VERSION command will display a new 'F' flag to indicate the ability for
filter to spy on users.
| Ryan Schmidt | 2026-05-11 | 1 | -0/+17 |
| * | Add m_quarantine•••This extension module provides a new usermode (+q) and two commands that
allow opers to set/unset that mode. The mode can be set either via
ircd.conf (general::default_umodes or auth::umodes) or via the
QUARANTINE command. When using the command, a reason is required which
will be broadcast to all other opers via the snote.
The quarantine will be automatically removed if the target opers up or
logs into a services account, and opers and logged in users cannot be
quarantined. The UNQUARNTINE command may additionally be used to remove
the quarantine status from a user. Users cannot otherwise set or remove
this usermode from themselves.
The QUARANTINE and UNQUARANTINE commands require a new priv
oper:quarantine.
To support this, a new account_change hook was added to m_services and
m_signon. This hook is fired whenever a user's services account changes
(via logging in or logging out) from the SVSLOGIN, SIGNON, LOGIN, or SU
services commands. It is **not** fired for SVSLOGIN on unknown
(pre-registration) users.
Documentation was updated for the new usermode, hook, and commands.
Usermode help was alphabetized for consistency, a missing entry for
helpops was added, and cloaking was moved to +x (since all modern
cloaking modules use that mode instead) since I was touching the file
anyway.
| Ryan Schmidt | 2026-04-29 | 1 | -0/+32 |
| * | Add +reply client tag support•••We validate that the reply looks like a valid message id as generated by
tag_message_id and, for channel messages, that the reply is going to the
same channel as specified in the message id. Since tag values do not
currently go through spamfilter, this is an easy-ish way to ensure that
it cannot be used as a backchannel for spam.
| Ryan Schmidt | 2026-04-09 | 1 | -0/+2 |
| * | Add +channel-context client tag•••The sender must be in the channel mentioned by the tag and must be able
to send messages to that channel. Since this is a hint for clients to
display the received PM in a channel buffer, having the ircd strip the
tag when the sender would otherwise not be able to talk in the channel
will help reduce confusion and make chanop actions more effective in
reducing perceived in-channel issues.
| Ryan Schmidt | 2026-04-09 | 1 | -0/+2 |
| * | Remove channel::kick_on_split_riding•••This feature had numerous pitfalls (such as not checking +beI) and
services does it better than we can. Remove it and alert opers that the
feature no longer exists if they had it configured.
| Ryan Schmidt | 2026-03-17 | 1 | -9/+0 |
| * | Documentation updates•••Add user help for the TAGMSG command. Additionally, update
reference.conf to include (almost) all extensions. The only extensions
excluded were those that are only useful when testing/debugging
(m_echotags), example modules (chantype_dummy, example_module), or
modules that should probably never be loaded in new networks
(ip_cloaking_3.0, ip_cloaking_old, m_mkpasswd).
| Ryan Schmidt | 2025-10-10 | 1 | -8/+66 |
| * | doc/reference.conf: remove documentation of unsupported extension modes | Aaron Jones | 2025-09-11 | 1 | -2/+0 |
| * | Remove WebSocket support | Aaron Jones | 2024-06-12 | 1 | -6/+0 |
| * | doc/reference.conf: document the auth::umodes configuration option•••Fixes: 4d8088c386c23049fcfe ("Allow auth{} to apply extra umodes")
| Aaron Jones | 2024-01-16 | 1 | -0/+5 |
| * | doc/reference.conf: document connect::flags sctp | Aaron Jones | 2023-11-20 | 1 | -0/+1 |
| * | extensions/invite_notify: make the NOTICE optional, configurable•••This adds a configuration option that determines whether the NOTICE is
sent to clients that do not support the IRCv3 invite-notify capability.
Requested by LiberaChat MGM.
| Aaron Jones | 2023-11-08 | 1 | -0/+5 |
| * | Warn opers about unresponsive servers | David Schultz | 2023-06-13 | 1 | -0/+7 |
| * | reference.conf: document `hide_opers` | David Schultz | 2023-05-18 | 1 | -0/+3 |
| * | m_shedding: user shedding module based on oftc-hybrid | David Schultz | 2023-05-18 | 1 | -0/+1 |
| * | ircd.conf.example: reference.conf: fix invalid line wrapping | Doug Freed | 2022-10-26 | 1 | -2/+1 |
| * | Add oper:free_target (#374)•••Co-authored-by: Ed Kellett <e@kellett.im> | Jess Porter | 2022-09-26 | 1 | -0/+1 |
| * | Add umode +I to allow users to hide their idle time (#220) | David Schultz | 2022-08-30 | 1 | -0/+4 |
| * | Add description parameter to auth blocks (#327) | Eric Mertens | 2022-04-14 | 1 | -0/+5 |
| * | fix typo in `sasl_only_client_message` (#279) | David Schultz | 2021-09-15 | 1 | -1/+1 |
| * | Remove sno_whois from reference.conf (#270)•••This was missed in commit 26c3681f7ccece87d9fe | Aaron Jones | 2021-08-21 | 1 | -2/+0 |
| * | reference.conf: Document the common syntax for flags•••It was only documented as an example in the auth {} block,
not for other blocks.
| Valentin Lorentz | 2021-07-31 | 1 | -0/+4 |
| * | reference.conf: Make it clearer connect {} blocks are reciprocal | Val Lorentz | 2021-07-31 | 1 | -4/+11 |
| * | Create configurations for user-facing messages within registration (#238) | Melissa Draper | 2021-07-29 | 1 | -0/+41 |
| * | Create configurable client rejection message for SASL only (#236) | Melissa Draper | 2021-07-29 | 1 | -0/+5 |
| * | reference.conf: add drain_reason | David Schultz | 2021-07-11 | 1 | -0/+5 |
| * | reference.conf: Fix inconsistent use of tabulations and spaces | Valentin Lorentz | 2021-07-06 | 1 | -9/+9 |
| * | Add a tutorial for connecting servers and services. | Valentin Lorentz | 2021-07-06 | 1 | -1/+3 |
| * | Remove ziplinks (#218) | Ariadne Conill | 2021-06-26 | 1 | -13/+1 |
| * | Add channel::ip_bans_through_vhost | Ed Kellett | 2021-04-26 | 1 | -0/+3 |
| * | add separate priv (oper:message) for walking over CALLERID (umode +g) (#152) | jess | 2021-04-26 | 1 | -2/+3 |
| * | "KDX-Line active for" is now L_NETWIDE, so remove sno_globalkline | jesopo | 2021-04-10 | 1 | -2/+0 |
| * | doc/reference.conf: add an example TLSv1.3 ciphersuite name•••[ci skip]
| Aaron Jones | 2021-02-07 | 1 | -1/+1 |
| * | wallops: require new oper:wallops right (#110)•••Split oper:wallops right from oper:mass_notice. Update documentation and
examples to grant oper:wallops everywhere oper:mass_notice was granted.
closes #103 | Taavi Väänänen | 2021-01-28 | 1 | -2/+4 |
| * | add ConfigFileEntry.oper_secure_only, to require TLS to oper up (#76) | jess | 2020-11-18 | 1 | -0/+3 |
| * | Get rid of hub_mask/leaf_mask | Ed Kellett | 2020-11-14 | 1 | -14/+0 |
| * | Document general::stats_l_oper_only | Ed Kellett | 2020-11-08 | 1 | -0/+7 |
| * | Stop using chm_nosuch as a sentinel value (#53)•••Remove chmode compat modules
This removes the need for chm_nosuch as well. Unknown mode detection happens in mode parsing now. | Eric Mertens | 2020-11-08 | 1 | -6/+0 |
| * | Document general::hidden_caps | Ed Kellett | 2020-11-08 | 1 | -0/+3 |
| * | Remove shared blocks | Ed Kellett | 2020-11-01 | 1 | -61/+2 |
| * | Document secure blocks | Ed Kellett | 2020-10-31 | 1 | -0/+6 |
| * | helpops: change umode char to h | Ed Kellett | 2020-10-27 | 1 | -2/+2 |
| * | Unify oper:{global,local}_kill | Ed Kellett | 2020-10-25 | 1 | -4/+3 |
| * | "server-side ignore" is an incorrect description of umode +g | jesopo | 2020-10-21 | 1 | -1/+1 |
| * | Document max_number in reference.conf | Ed Kellett | 2020-10-18 | 1 | -0/+3 |
| * | Add class::max_autoconn configuration | Ed Kellett | 2020-10-18 | 1 | -2/+2 |
| * | Innovation by sed | Ed Kellett | 2020-10-15 | 1 | -1/+1 |
| * | Align reference.conf and ircd.conf.example | Ed Kellett | 2020-08-04 | 1 | -1/+2 |
| * | Document extension-only oper privs | Ed Kellett | 2020-08-04 | 1 | -0/+8 |