3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-12-01 16:39:26 +01:00
Commit Graph

368 Commits

Author SHA1 Message Date
Valentin Lorentz
3994125d88 Add missing argument to ERR_NEEDMOREPARAMS on USER commands.
Refs:

* other instances in the codebase
* https://defs.ircdocs.horse/defs/numerics.html#err-needmoreparams-461
* https://modern.ircdocs.horse/#errneedmoreparams-461
2022-01-10 19:24:13 -05:00
Valentin Lorentz
a24b31cbd6 Make kick messages default to the kicker name instead of the kicked
For consistency with RFC2812, Bahamut, Hybrid, Insp, Plexus4, Unreal.
https://datatracker.ietf.org/doc/html/rfc2812#section-3.2.8

At the expense of consistency with chary/solanum, irc2, and ircu2.
2022-01-10 19:24:07 -05:00
Shivaram Lingamneni
902ac1a79b fix #1731
CHATHISTORY INVALID_TARGETS was missing the subcommand parameter
2022-01-10 19:19:14 -05:00
Shivaram Lingamneni
bdff4e633f fix #1730
`WHO #channel o` is supposed to return only server operators.
This is RFC1459 cruft; just return an empty list in this case.
2022-01-10 19:09:27 -05:00
Shivaram Lingamneni
bd4f80586f fix #1831
RPL_ENDOFWHO should send the original, un-normalized mask
2022-01-10 19:08:55 -05:00
Shivaram Lingamneni
122a232eed send * for WHOX o (oplevel) instead of 0
Jobe points out that 0 is a valid oplevel in some contexts,
* is a better placeholder for "unimplemented".
2022-01-10 19:08:41 -05:00
Shivaram Lingamneni
bfae13aad9 fix casefolding issue in muting RELAYMSG
Reported by @mogad0n; the mute mask was being case-canonicalized,
but the RELAYMSG identifier wasn't being case-canonicalized before
the check.
2022-01-10 19:07:54 -05:00
Shivaram Lingamneni
42aafc1f0c correctly account for nickname in CAP LS arithmetic
The arithmetic was assuming that the nickname is * (which it is
pre-registration). However, we were sending the actual nickname
post-registration. It would be simpler to always send *, but it
appears that the nickname is actually required by the spec:

>Replies from the server must [sic] contain the client identifier name or
>asterisk if one is not yet available.
2022-01-10 19:06:41 -05:00
Shivaram Lingamneni
6067ce4200 Revert "remove draft/resume-0.5"
This reverts commit ba21987d03.
2021-06-01 21:44:49 -04:00
Shivaram Lingamneni
ec48966b68 fix #1661
If the relay bot and the owner share an IP, legacy bots that identify users
by user@host could misinterpret relayed lines as coming from the bot owner.
Try to avoid this by using the bot's account cloak where applicable.
2021-05-27 11:43:21 -04:00
Shivaram Lingamneni
77313e20ad fix #1647
Send a full NUH with RELAYMSG.

Also fix client-only tags with RELAYMSG.
2021-05-27 02:00:59 -04:00
Shivaram Lingamneni
23c7218bf1 first pass at renaming Oragono to Ergo 2021-05-26 15:55:24 -04:00
Shivaram Lingamneni
ba21987d03 remove draft/resume-0.5 2021-05-18 23:27:46 -04:00
Shivaram Lingamneni
75f89a9f1f fix FAIL REGISTER INVALID_USERNAME case 2021-04-25 17:16:34 -04:00
Shivaram Lingamneni
0b414cb158
Merge pull request #1625 from slingamn/cleanup_star.2
fix #1615
2021-04-21 09:27:54 -04:00
jesopo
4700d4c048 make gofmt happey :)) 2021-04-20 11:05:05 +00:00
jesopo
7345ecba48 don't Sprintf for each match, Details().nick -> .Nick() 2021-04-20 11:04:24 +00:00
jesopo
0a1537f928 support $$server and $#hostname global messages 2021-04-20 10:46:43 +00:00
Shivaram Lingamneni
0d05ab4ff4 fix #1615
Remove the CHATHISTORY * and znc.in/playback *self targets,
clean up associated database code, add new mechanisms to play
all missed DMs.
2021-04-19 08:54:40 -04:00
Shivaram Lingamneni
da216fc699 fix #1577
Remove debugging loglines for truncation
2021-04-19 07:06:49 -04:00
Shivaram Lingamneni
18b6e2f1cd implement CHATHISTORY TARGETS 2021-04-07 05:40:39 -04:00
Shivaram Lingamneni
4052cd12fe fix #1592
Implements the new `CHATHISTORY LISTCORRESPONDENTS` API.
2021-04-06 00:46:07 -04:00
Shivaram Lingamneni
e447c61c73 fix #1596
All truncation must be made UTF8-safe.
2021-03-18 03:49:12 -04:00
Shivaram Lingamneni
cd43fae478
Merge pull request #1597 from slingamn/away_session.1
fix #1531
2021-03-18 03:28:03 -04:00
Shivaram Lingamneni
70b20750aa fix #1531
AWAY status should be tracked per-session:

1. With auto-away enabled, away status is aggregated across sessions
   (if any session is not away, the client is not away, else use
   the away status that was set most recently)
2. With auto-away disabled, we get the legacy behavior where AWAY
   applies directly to the client
2021-03-18 02:53:18 -04:00
Shivaram Lingamneni
1efde964e1 Fix #1562
Implement the new bot mode spec:
https://github.com/ircv3/ircv3-specifications/pull/439
2021-03-17 14:36:52 -04:00
Shivaram Lingamneni
fe8e6551c3 fix #1502
RELAYMSG should respect mutes
2021-03-11 01:21:03 -05:00
Shivaram Lingamneni
131eb229bc use the new irc-go identifiers 2021-03-10 20:07:43 -05:00
Shivaram Lingamneni
03185ea4a9 deprecate message truncation
Implements #1577, but the issue should remain open until we clean up
the debugging loglines.
2021-03-04 22:29:34 -05:00
Alex Jaspersen
23164054f6 Send 477 ERR_NEEDREGGEDNICK when an unregistered user messages a +R user.
Fixes #1064.
2021-03-03 19:36:29 -08:00
Shivaram Lingamneni
8180c2b572 improve compatibility with published register spec
1. Send COMPLETE_CONNECTION_REQUIRED instead of DISALLOWED
2. Include the account name in all FAIL messages
2021-02-28 17:14:10 -05:00
Shivaram Lingamneni
e957a89ee2 bump irc-go for the IRCMessage rename 2021-02-15 11:27:04 -05:00
4340da9b6e
docs/USERGUIDE.md & irc/handlers.go: fix spelling of WeeChat 2021-02-13 14:44:13 +02:00
Shivaram Lingamneni
42316bc04f fix #1176
Transition most "is an operator" checks to require a specific operator
capability
2021-02-09 22:07:06 -05:00
Shivaram Lingamneni
cc6be14c1d fix #1507
Registered channels should be eagerly created on startup, and should
remain (and be visible in LIST) even when they have no members.
2021-02-04 15:26:03 -05:00
Shivaram Lingamneni
07fa2ecb3e allow UBAN <ip> REQUIRE-SASL 2021-01-22 09:38:40 -05:00
Shivaram Lingamneni
2e7cf3cc1e
Merge pull request #1496 from slingamn/jointime.1
fix #1490
2021-01-21 01:20:45 -05:00
Shivaram Lingamneni
4a48e52518 fix #1490
Track channel join times, use them to optionally enforce history access
restrictions
2021-01-20 21:13:18 -05:00
Shivaram Lingamneni
bb5276553d initial UBAN implementation 2021-01-19 08:49:45 -05:00
Shivaram Lingamneni
64bc363cf1 fix #1443
Improve auditability of sensitive operator actions
2021-01-19 06:45:30 -05:00
Shivaram Lingamneni
e195854851 fix #1442
strip local_ from oper capab names, also consolidate unban into ban
2021-01-19 06:45:30 -05:00
Shivaram Lingamneni
d1f8317180 fix #1479
Give Tor clients who authenticate via SASL a unique cloak, so chanops
can ban *!*@tor-network.onion and still allow authenticated Tor users
2021-01-12 08:40:13 -05:00
Shivaram Lingamneni
ec375f5bdc consolidate ArgsToStrings 2020-12-30 00:41:34 -05:00
Shivaram Lingamneni
0c9ecbade7 ERR_HELPNOTFOUND should take the nick as a parameter 2020-12-29 13:19:46 -05:00
Shivaram Lingamneni
6965031aa9 fix #1472
HELP responses weren't taking the client nickname as a parameter,
as is standard.
2020-12-29 05:20:18 -05:00
Shivaram Lingamneni
514a2e613f fix #1468 2020-12-21 22:07:48 -05:00
Shivaram Lingamneni
cc2b6d27a0 fix critical bugs in RENAME
Channel rename (both of registered and unregistered channels) would leave
the old name unreclaimable.
2020-12-14 23:35:46 -05:00
Shivaram Lingamneni
ba72d3acfc implement a channel forwarding mode
Fixes #1260
2020-12-14 22:38:23 -05:00
Shivaram Lingamneni
47f7b9a76e make CAP LS/LIST respect the MaxLineLen constant 2020-12-13 15:44:10 -05:00
Shivaram Lingamneni
84e3b5d77b stop autocreating d-lines for throttle violations
This didn't work correctly for IPv6 or custom nets.
/UNDLINE IP can temporarily be used to reset the throttle.
2020-12-08 22:01:23 -05:00