echoIRCd/src/coremods
2026-08-24 21:45:46 +00:00
..
core_channel.rs server: scrub a departed user's pending invites via a User.invited reverse index instead of scanning every channel on the network per quit — the old O(channels)-per-quit path was O(channels*quits) on a netsplit; the index is maintained at the 4 invite add/remove sites (INVITE cmd, S2S INVITE, join-consume, UNINVITE) 2026-08-19 02:09:36 +00:00
core_extra.rs core: add oper MODULES command (702/703) listing loaded modules; module.list RPC already existed 2026-08-22 17:36:46 +00:00
core_info.rs whois: show negotiated TLS version/group/cipher in 671; sslgroup crate reads the KEX group 2026-08-24 21:45:46 +00:00
core_message.rs add SIGNORE: personal mutual server-side ignore across channels and PMs 2026-08-20 14:48:17 +00:00
core_mode.rs comments: strip stray reference-implementation names from a handful of module/inline comments 2026-08-20 10:11:07 +00:00
core_oper.rs xline: broadcast the XLINE notice on remove and expire too, so it covers every x-line's whole lifecycle 2026-08-21 15:03:36 +00:00
core_rehash.rs operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command 2026-08-10 13:01:07 +00:00
core_user.rs auth: constant-time compare for VHOST and WEBIRC secrets — both used plain == on the config password, unlike oper/RPC/JWT secrets which already route through ct_eq; expose password_hash::ct_eq as the shared comparator and use it (usernames stay plain == — not secret) 2026-08-19 00:41:47 +00:00
core_watch.rs signore: persist per-account via services metadata — push on edit, replay on login 2026-08-20 15:40:19 +00:00
mod.rs perf: mimalloc global allocator + aHash maps + memchr line framer + LTO/codegen-units=1 — ~29% faster channel fanout; and drop the bogus openssl+mio dependency whitelist from the guard (any perf crate is welcome now) 2026-08-18 19:45:33 +00:00