Commit graph

175 commits

Author SHA1 Message Date
c2a7dfa8f7
Add NickServ LOGIN to identify and reclaim your nick in one command
All checks were successful
CI / check (push) Successful in 5m24s
2026-07-20 20:59:47 +00:00
aa270e061e
Cap FORBID and vhost LIST output so a huge list can't overflow the operator's receive queue
All checks were successful
CI / check (push) Successful in 5m25s
2026-07-20 20:44:15 +00:00
8b45d386c6
Restore the connect-time host when a session logs out, reversing any services vhost 2026-07-20 20:39:03 +00:00
b500698e82
Add AJOIN ADDALL to auto-join every channel you are currently in
All checks were successful
CI / check (push) Successful in 5m32s
2026-07-20 19:40:02 +00:00
6e53cb751a
Notify or memo the affected user on channel access, XOP, founder, and successor changes 2026-07-20 19:34:46 +00:00
fadd4f37cd
Localize residual notices: logout, channel release, password change, founder-language expiry mail, and DiceServ prompts and errors
All checks were successful
CI / check (push) Successful in 5m40s
2026-07-20 17:35:25 +00:00
621bba00f2
Fix review findings: direction-bind the gossip handshake proof, whitespace-tokenize log redaction, show ranked STATS to viewers, single-pass render, code-before-message email templating 2026-07-20 17:35:25 +00:00
58082248ec
Answer CTCP VERSION/PING/TIME/CLIENTINFO on service pseudo-clients and split over-long NOTICE/PRIVMSG lines under 512 bytes
All checks were successful
CI / check (push) Successful in 5m32s
2026-07-20 14:29:02 +00:00
3723617367
Complete deferred audit LOWs: kicker-cache eviction, abandoned-challenge reclaim, and a challenge-response gossip handshake
All checks were successful
CI / check (push) Successful in 5m7s
2026-07-20 04:53:03 +00:00
4027242c1e
Harden deferred audit LOWs: provisioned-verifier cost cap, BOT-nick validation, gameserv board-delivery account guard, empty KICK/PART/QUIT reason parse, and relink SASL/enforce cleanup
All checks were successful
CI / check (push) Successful in 5m4s
2026-07-20 04:40:42 +00:00
1b569fdfa3
Give French dict rich Wiktionary definitions instead of thin FreeDict glosses
All checks were successful
CI / check (push) Successful in 5m3s
2026-07-20 03:00:22 +00:00
c57683b5e4
Route the !dict fantasy command through the language-aware database too
All checks were successful
CI / check (push) Successful in 5m7s
2026-07-20 02:43:22 +00:00
3473d3afbd
Make DictServ dict follow the user's language via FreeDict dictionaries
All checks were successful
CI / check (push) Successful in 5m21s
2026-07-20 02:37:17 +00:00
e4a14b9813
Localize engine notices, transactional emails, and operator-access denials in all six languages
All checks were successful
CI / check (push) Successful in 5m18s
2026-07-20 02:25:54 +00:00
ecdead8278
Pluralize count-dependent messages with a CLDR one/other selector and gate catalog consistency with a test
All checks were successful
CI / check (push) Successful in 5m20s
2026-07-20 02:03:05 +00:00
ab329fe133
Migrate DiceServ and DictServ messages to the t! macro 2026-07-19 23:46:38 +00:00
b28bd2777f
Localize service-module messages via t! and add French translations (partial) 2026-07-19 23:24:54 +00:00
d207c3d60d
Migrate interpolated service messages to the t! macro (8 modules) 2026-07-19 23:22:56 +00:00
b462d37bd5
Add i18n framework: per-account language, catalogs, t! macro, SET LANGUAGE
All checks were successful
CI / check (push) Successful in 5m16s
2026-07-19 22:57:45 +00:00
cc9c399464
Don't print unreconcilable addends for a truncated dice listing
All checks were successful
CI / check (push) Successful in 5m28s
2026-07-19 19:52:44 +00:00
118782a4bf
Allocate guest nicks that skip online and registered names 2026-07-19 19:19:20 +00:00
2c81af108b
Don't let incoming challenges fill a victim's GameServ slots 2026-07-19 19:19:20 +00:00
a7f13098e3
Reject same-account self-challenges in GameServ 2026-07-19 18:52:26 +00:00
ab361e8646
Cap DiceServ expression size to prevent a stack-overflow crash 2026-07-19 18:52:26 +00:00
75d3c70cc8
Reject CRLF/malformed emails and names to stop SMTP header injection 2026-07-19 18:12:35 +00:00
dc148dde69
Stop a bare nick from cancelling an account's help ticket 2026-07-19 17:45:04 +00:00
fa9eaece45
Cap and freeze-gate GroupServ registration 2026-07-19 17:45:04 +00:00
6149a15b34
Let identified users manage CERT without a password
All checks were successful
CI / check (push) Successful in 4m18s
2026-07-19 17:17:36 +00:00
bfff7dba91
Silently ignore unknown in-channel fantasy commands
All checks were successful
CI / check (push) Successful in 4m15s
2026-07-19 17:09:07 +00:00
68372042f8
Gate OperServ INFO note edits at admin and cap the MemoServ ignore list
All checks were successful
CI / check (push) Successful in 4m17s
2026-07-19 16:21:31 +00:00
8f41fc9903
Freeze ChanServ MODE/ACCESS/FLAGS on suspended channels and make PEACE group-access-aware 2026-07-19 15:59:00 +00:00
03d39c1329
Guard the namespace on NickServ GROUP, gRPC GroupNick, and GroupServ REGISTER (confusable/forbid/cap)
Some checks failed
CI / check (push) Has been cancelled
2026-07-19 15:34:35 +00:00
c36341668c
Fix self-review regressions: throttle SASL SCRAM, key game target by UID, exclude keycard from password lockout
Some checks failed
CI / check (push) Has been cancelled
2026-07-19 14:38:16 +00:00
4599c4834d
Bind game identity to UID (hijack + cap bypass) and warn on plaintext gossip
All checks were successful
CI / check (push) Successful in 4m17s
2026-07-19 14:15:06 +00:00
3648c48d2e
Rate-limit REPORT and REQUEST on the real host instead of the spoofable nick 2026-07-19 13:39:03 +00:00
b2ffc01e52
Bound dice batches, game count, and report/help queues, and harden community votekick 2026-07-19 13:34:48 +00:00
64c4bbeae4
Cap certfp, channel access, and akick lists to bound attacker-driven log growth 2026-07-19 13:27:50 +00:00
d833dc28f0
Fix duration overflow, expiry-warned resets, DICT control-char injection, and HostServ TAKE forbid recheck 2026-07-19 13:24:46 +00:00
68df1e7078
Use the ircd's learned CHANMODES arities for FMODE/FJOIN param scanning 2026-07-19 13:22:00 +00:00
7528b78bf7
Gate OperServ EXCEPTION at admin tier and reject match-all SNLINE regex 2026-07-19 13:17:54 +00:00
e7f012726c
Stop a non-founder from granting the founder flag (channel takeover escalation) 2026-07-19 13:12:54 +00:00
660362a34b
Throttle every password-verify path (GROUP/GHOST/CERT/DROP/SASL) and key the lockout by resolved account 2026-07-19 13:06:50 +00:00
1ecb76affb
Report failed IDENTIFY against a password-less account to the auth feed
All checks were successful
CI / check (push) Successful in 4m10s
2026-07-19 05:00:12 +00:00
af5896743d
Restore the real ident when a HostServ ident@host vhost is turned off or deleted 2026-07-19 04:49:31 +00:00
384f222a22
Enforce cloned akicks with a standing +b for ircd-enforced masks 2026-07-19 04:49:31 +00:00
b38cde945f
Persist CS TOPIC so KEEPTOPIC and TOPICLOCK keep the set topic
All checks were successful
CI / check (push) Successful in 4m13s
2026-07-19 04:21:25 +00:00
fc214ab0d3
Add three-tier services operator model (operator, administrator, root)
All checks were successful
CI / check (push) Successful in 4m22s
2026-07-19 02:19:51 +00:00
0d16240606
nickserv/chanserv: announce a blocked look-alike registration to the staff feed (ServiceCtx alert drained by dispatch)
All checks were successful
CI / check (push) Successful in 3m44s
2026-07-19 00:24:27 +00:00
89ac01d0b0
nickserv/chanserv: catch styled/fullwidth look-alike names too, and add a [register] confusable_check toggle (REHASH-reloadable)
All checks were successful
CI / check (push) Successful in 3m48s
2026-07-19 00:15:08 +00:00
c2b70f5004
nickserv/chanserv: reject look-alike / mixed-script registration names (homoglyph impersonation guard)
All checks were successful
CI / check (push) Successful in 3m56s
2026-07-19 00:02:44 +00:00