echoIRCd/src
2026-08-17 19:06:17 +00:00
..
coremods message: keep +U opmoderated messages out of CHATHISTORY/+H replay, and subject TAGMSG to the same PM gates (+c/+R/+z/+g/SILENCE) 2026-08-17 15:05:13 +00:00
modules relaymsg: gate RELAYMSG on oper (it spoofs an arbitrary source nick), matching InspIRCd 2026-08-17 19:06:17 +00:00
accounts.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
bcrypt.rs bcrypt: native $2b$ hashing (blowfish + eksblowfish; pi constants via exact fixed-point machin) wired into password_hash + MKPASSWD 2026-08-11 11:32:35 +00:00
channels.rs channel: count remote members for +l, and propagate TBAN expiry (-b) over S2S 2026-08-17 14:52:38 +00:00
command.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
config.rs listeners: make bind/bind_tls/bind_server repeatable (multiple addresses/ports) and normalize IPv4-mapped IPv6 peers back to plain IPv4 — a single [::] bind now serves IPv4+IPv6 with clean v4 addresses 2026-08-15 01:12:37 +00:00
extensible.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
http.rs harden: fix reachable panics (parse_duration/parse_iso/dechunk char-boundary+overflow), s2s netburst key/limit loss, rpc set_nick/set_vhost/notice injection, webirc rehash reload, panic-state reset, ws line cap, remote nick collision, per-conn state leaks 2026-08-15 15:02:36 +00:00
ircd.rs markread: persist account-keyed read markers to disk and restore them at startup 2026-08-17 02:12:17 +00:00
lib.rs proxy: HAProxy PROXY protocol v1+v2 on the plaintext (reactor) and TLS listeners; trusted via proxy=<glob>, rewrites the client IP before connect checks 2026-08-11 11:43:08 +00:00
link.rs test: services standard reply (SWSTDRPL) reaches a standard-replies client 2026-08-17 13:12:31 +00:00
main.rs tls: reload certs on REHASH (renewed cert applies without restart) and add per-hostname SNI via tls_sni 2026-08-16 23:35:36 +00:00
message.rs draft/multiline: inbound BATCH parsing + concat assembly, deliver assembled lines; advertise limits 2026-08-08 22:07:04 +00:00
mode.rs channels/whois: validate +k/+l, cap and case-fold ban lists, honour -n for externals, hide +s/+p/+i from whois/who/names, 301 in whois, conf-key the join/nickflood lockout 2026-08-16 17:56:24 +00:00
module.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
numeric.rs add HELP command with a built-in index and per-topic help (704/705/706) 2026-08-16 18:20:57 +00:00
proxy.rs proxy: forward v2 TLS TLVs (PP2_TYPE_SSL/CERTFP) so plaintext clients behind a TLS-terminating proxy show secure+certfp; restore ws_trust_proxy to the config example 2026-08-11 17:13:32 +00:00
regex.rs rline: native regex engine (thompson nfa, no backtracking) + RLINE regex bans (registration/enforce/stats R/matchonnickchange) 2026-08-10 21:48:52 +00:00
resolver.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
server.rs callerid: scrub a departed/renamed nick from ACCEPT lists so it can't be reused to bypass +g 2026-08-17 14:52:38 +00:00
socketengine.rs listeners: make bind/bind_tls/bind_server repeatable (multiple addresses/ports) and normalize IPv4-mapped IPv6 peers back to plain IPv4 — a single [::] bind now serves IPv4+IPv6 with clean v4 addresses 2026-08-15 01:12:37 +00:00
tls.rs tls: reload certs on REHASH (renewed cert applies without restart) and add per-hostname SNI via tls_sni 2026-08-16 23:35:36 +00:00
users.rs callerid: scrub a departed/renamed nick from ACCEPT lists so it can't be reused to bypass +g 2026-08-17 14:52:38 +00:00
watch.rs add callerid (+g) with ACCEPT allow-list, plus msgid and extended-monitor 2026-08-05 16:21:58 +00:00
websocket.rs tls: reload certs on REHASH (renewed cert applies without restart) and add per-hostname SNI via tls_sni 2026-08-16 23:35:36 +00:00
xline.rs xline: remove masks case-insensitively, matching how they're enforced 2026-08-17 14:52:38 +00:00