| .. |
|
coremods
|
core: generic spawn_crypto helper; offload all slow KDF hashing (OPER pbkdf2 too, and MKPASSWD) off the core thread
|
2026-08-12 13:05:29 +00:00 |
|
modules
|
core: Server::disk_write — coalescing off-core snapshot writer; reputation/metadata saves no longer block the event loop on a slow disk
|
2026-08-12 13:16:15 +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
|
customprefix: data-driven prefix engine — define arbitrary new prefix modes (letter/prefix/rank/ranktoset/ranktounset/depriv), ranks re-spaced x10; built-in tiers + defaults unchanged
|
2026-08-11 19:46:07 +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
|
operlevels: oper = <name> <pass> <level>; a lower-level oper can't KILL a higher-level one
|
2026-08-11 18:50:12 +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
|
operprefix + ojoin: server oper prefix (!/mode y, above owner) auto-granted to opers + OJOIN command
|
2026-08-10 13:01:07 +00:00 |
|
ircd.rs
|
connclass: verify a KDF class password off the core thread with a registration hold (auth_pending + Event::ConnclassAuth) — connect floods can't freeze the server
|
2026-08-12 13:13:27 +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
|
customprefix: config-override channel-prefix sigils per tier (customprefix = <tier> <sigil>); PREFIX/NAMES/FJOIN consistent
|
2026-08-11 19:01:45 +00:00 |
|
main.rs
|
socketengine: per-IP accept-rate limiter (token bucket, accept_rate/accept_burst, off by default) — drops connection-churn floods at the accept edge before any state is allocated; exempts trusted proxies and server links
|
2026-08-12 17:05:24 +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
|
customprefix: data-driven prefix engine — define arbitrary new prefix modes (letter/prefix/rank/ranktoset/ranktounset/depriv), ranks re-spaced x10; built-in tiers + defaults unchanged
|
2026-08-11 19:46:07 +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
|
connectclass: per-class connection policy (allow/deny, localmax, password, maxchans, pingfreq, timeout, modes) + PASS
|
2026-08-10 17:49:12 +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
|
core: write persisted snapshots atomically (temp + rename) so a crash mid-write can't leave a truncated reputation/metadata/xline file
|
2026-08-12 15:57:43 +00:00 |
|
socketengine.rs
|
socketengine: per-IP accept-rate limiter (token bucket, accept_rate/accept_burst, off by default) — drops connection-churn floods at the accept edge before any state is allocated; exempts trusted proxies and server links
|
2026-08-12 17:05:24 +00:00 |
|
tls.rs
|
tls: send a close_notify on close for established TLS sessions instead of just dropping the socket, so clients see a clean shutdown not a truncation error
|
2026-08-12 15:53:10 +00:00 |
|
users.rs
|
connclass: verify a KDF class password off the core thread with a registration hold (auth_pending + Event::ConnclassAuth) — connect floods can't freeze the server
|
2026-08-12 13:13:27 +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
|
websocket: add ws_defaultmode (text/binary/reject), ws_proxyranges (glob/CIDR X-Real-IP/XFF trust), ws_allowmissingorigin, ws_nativeping
|
2026-08-11 16:10:09 +00:00 |
|
xline.rs
|
xline: persist server bans via the off-core disk writer too, so a KLINE/GLINE burst can't stall the event loop on a slow disk
|
2026-08-12 13:20:16 +00:00 |