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
Shivaram Lingamneni
da2d4ca130
make overridden services hostname appear in chanserv
2020-12-07 02:29:18 -05:00
Shivaram Lingamneni
66d90bef5e
change FAIL codes from NOT_PRIVED to PRIVS_NEEDED
2020-12-06 21:01:44 -05:00
Shivaram Lingamneni
7bdbb01238
fix #1428
...
Tor listeners should never see an STS cap.
Add an undocumented 'hide-sts' key for listeners that hides the STS cap.
This can be used if the listener is secured at layer 3 or 4 (VPNs,
E2E mixnets). It will be necessary to add the relevant IPs to `secure-nets`.
2020-12-05 23:06:23 -05:00
Shivaram Lingamneni
01291ceadd
fix #1417
...
Allow `JOIN 0` with a confirmation code
2020-12-01 14:23:47 -05:00
Shivaram Lingamneni
5edfcced0a
Merge pull request #1415 from slingamn/issue1409_invite_history.1
...
fix #1409
2020-11-29 19:47:22 -08:00
Shivaram Lingamneni
32bbde49a8
fix #1409
...
Record INVITE in DM history for the benefit of offline always-on clients
2020-11-29 22:12:06 -05:00
Shivaram Lingamneni
c62956f708
fix #1396
...
* Defer account login snomask until after connection registration is complete
* Don't send account-notify for pre-registration clients
2020-11-29 20:20:26 -05:00
Shivaram Lingamneni
9214d978d0
refactor services prefixes and notice handlers
2020-11-29 00:02:26 -05:00
Shivaram Lingamneni
8ad6a53433
fix duplicated nicks in kline message
2020-11-10 11:17:17 -05:00
Shivaram Lingamneni
9374a75c7a
implement FAIL CHATHISTORY INVALID_TARGET
2020-11-04 01:54:59 -05:00
Shivaram Lingamneni
6513136ea3
fix #1366
...
Include an 'r' flag in RPL_WHOREPLY for registered nicks
2020-10-29 14:25:28 -04:00
Shivaram Lingamneni
1f6afa31d6
fix #1274
...
Enhancements to NS SUSPEND, including stored metadata and the ability
to list suspensions
2020-10-27 18:30:03 -04:00
Shivaram Lingamneni
b57820150e
no-op fix to SETNAME workaround
2020-10-26 18:06:06 -04:00
Shivaram Lingamneni
9c4b086113
Merge pull request #1355 from slingamn/invite
...
security enhancements for INVITE
2020-10-26 13:30:41 -07:00
Shivaram Lingamneni
5dcb2bb60c
enhancements to SETNAME
...
Address SETNAME UX problems reported by @KoraggKnightWolf in #oragono:
1. No feedback by default on success or failure
2. Multi-word realnames are not correctly interpreted by some clients
2020-10-26 15:31:51 -04:00
Shivaram Lingamneni
4b1e6b04c4
add UNINVITE command ( #1171 )
2020-10-25 22:16:19 -04:00
Shivaram Lingamneni
a37a91694c
fix #1337
2020-10-19 10:52:38 -04:00
Shivaram Lingamneni
1d74185b7d
fix #1322
2020-10-13 00:38:23 -04:00
Shivaram Lingamneni
4ee97ddb43
USERHOST needs to respect hidden operators as well
2020-10-09 12:29:09 -04:00
Shivaram Lingamneni
78b2f61707
fix #1194
2020-10-09 08:03:26 -04:00
Shivaram Lingamneni
7fd5bc8d81
review fix
2020-10-07 09:20:26 -04:00
Shivaram Lingamneni
9ed789f67c
fix #1075
2020-10-06 18:04:29 -04:00
Shivaram Lingamneni
8c99dcb2c7
fix #484
2020-10-02 08:13:52 -04:00
Shivaram Lingamneni
127a03ccf3
fix #1295
2020-10-01 09:42:08 -04:00
Shivaram Lingamneni
8b01d19336
Merge pull request #1280 from slingamn/issue1277_sanick
...
fix #1277
2020-09-24 04:10:44 -07:00
Shivaram Lingamneni
7d5a071a34
fix #1277
2020-09-23 02:30:34 -04:00
Shivaram Lingamneni
1a9f501383
fix #414
2020-09-23 02:25:29 -04:00
Shivaram Lingamneni
498d76b131
fix #1240
2020-09-16 12:03:06 -04:00
Shivaram Lingamneni
20aaa1ab06
fix #1259
2020-09-09 11:46:05 -04:00
Shivaram Lingamneni
af056f26a9
fixes and refactoring
2020-09-09 05:35:04 -04:00
Shivaram Lingamneni
8102d1ddb6
Merge remote-tracking branch 'origin/master' into master+relaymsg
2020-09-09 03:55:41 -04:00
Shivaram Lingamneni
bfb3fd702a
Merge pull request #1249 from jesopo/pong-params
...
PONG param 0 should be server name
2020-09-05 22:30:50 -07:00
Shivaram Lingamneni
71cdc43d9a
fix #1254
2020-09-01 02:41:15 -04:00
jesopo
574b07513c
PONG param 0 should be server name
...
fix #1248
2020-08-26 09:18:53 +00:00
Shivaram Lingamneni
ddb8400124
include go version even without the git hash
2020-08-23 21:59:19 -04:00
Shivaram Lingamneni
682f8f66c5
add compiler version to INFO output
2020-08-10 18:14:22 -04:00
Shivaram Lingamneni
7b28fc73e6
Merge pull request #1223 from hhirtz/rename
...
Update draft/rename impl
2020-08-05 14:02:15 -07:00
Hubert Hirtz
f6d5fe812f
Update draft/rename implementation
...
Link to the new draft PR:
<https://github.com/ircv3/ircv3-specifications/pull/420 >
Changes in the spec:
- Use standard replies instead of numerics:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R44 >
- Allow RENAME to a different case:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R42 >
This commit makes oragono send the PART-JOIN fallback even on case-only
changes. This is so that clients don't have to worry about oragono's
UTF8 casefolding. See the following comments for further info:
<https://github.com/ircv3/ircv3-specifications/pull/420#issuecomment-668770837 >
Misc fixes:
- Remove unused variable,
- Add missing calls to utils.SafeErrorParam,
- Don't fill replies with the user-provided "oldName", for the same
reason as sending the PART-JOIN fallback.
2020-08-05 22:46:30 +02:00
Shivaram Lingamneni
ddac7d94a8
use ChannelSet
2020-08-04 21:46:07 -04:00
Shivaram Lingamneni
6d18a1a78c
tweak addEchoMessage signature
2020-07-24 02:55:46 -04:00
Shivaram Lingamneni
28d4971f36
fix #1204
2020-07-24 02:46:02 -04:00
Shivaram Lingamneni
e827bc0f9c
fix #1205
2020-07-20 04:28:17 -04:00
Shivaram Lingamneni
93530ae397
fix #1198
2020-07-17 02:54:43 -04:00
Shivaram Lingamneni
a99c893f9b
Merge branch 'realname_again'
2020-07-12 16:49:30 -04:00
Shivaram Lingamneni
ad32a01c12
Merge pull request #1193 from slingamn/whox.2
...
refactor WhoFields to use value receivers
2020-07-12 13:41:49 -07:00
Shivaram Lingamneni
a6d41109d0
restore multiprefix support in RPL_WHOREPLY
2020-07-12 16:40:11 -04:00
Conrad Lukawski
6f8711da3b
Persist realname for always-on clients
2020-07-12 14:46:36 -04:00
Shivaram Lingamneni
358c85e697
Merge pull request #1191 from slingamn/moderation.3
...
enhancements to moderation (#1134 , #1135 )
2020-07-12 11:03:34 -07:00
Shivaram Lingamneni
0a6c1f7cc6
Merge pull request #1189 from slingamn/tagmsg_storage.1
...
make TAGMSG storage configurable
2020-07-12 10:57:00 -07:00
Shivaram Lingamneni
97417f4c32
refactor WhoFields to use value receivers
2020-07-12 13:45:29 -04:00
Shivaram Lingamneni
bdfee9cb39
Merge pull request #1184 from jesopo/whox
...
implement WHOX
2020-07-11 19:36:04 -07:00
jesopo
518b21e5aa
implement WHOX
2020-07-11 16:45:02 +01:00
Shivaram Lingamneni
a7ca6601c7
enhancements to moderation ( #1134 , #1135 )
2020-07-10 17:09:02 -04:00
Shivaram Lingamneni
bca3dd0b41
make TAGMSG storage configurable
2020-07-09 20:17:50 -04:00
Shivaram Lingamneni
8dd25f66bc
review fix
2020-07-09 04:37:30 -04:00
Shivaram Lingamneni
6ea2eb367d
fix #328 (implement DEFCON)
2020-07-09 02:16:51 -04:00
Shivaram Lingamneni
067e62ad5e
fix #1166 and #1168
2020-07-01 03:52:55 -04:00
Shivaram Lingamneni
79764cd549
Merge pull request #1163 from slingamn/list_issue1161
...
fix #1161
2020-06-30 17:43:48 -07:00
Shivaram Lingamneni
70f533ee07
fix #1155
2020-06-29 21:29:28 -04:00
Shivaram Lingamneni
696980367d
fix #1161
2020-06-29 15:41:29 -04:00
Shivaram Lingamneni
d7a62223a0
Merge pull request #1123 from clukawski/no-ctcp-user-mode
...
Add +T no-CTCP usermode
2020-06-27 21:13:24 -07:00
Conrad Lukawski
fca2900918
Add +T no-CTCP usermode
2020-06-28 00:04:42 -04:00
Shivaram Lingamneni
ba68358c21
Merge pull request #1152 from slingamn/utf8.1
...
fix #1151
2020-06-23 01:02:59 -07:00
Shivaram Lingamneni
7ee7b1aab5
Merge pull request #1150 from slingamn/monitor.1
...
fix #1053 , #1083
2020-06-22 20:25:27 -07:00
Shivaram Lingamneni
58d3d1276f
review fix
2020-06-22 18:53:54 -04:00
Shivaram Lingamneni
a4f9e08a85
fix #1151
2020-06-22 15:50:28 -04:00
Shivaram Lingamneni
cb530050f1
fix #1053 , #1083
2020-06-21 23:51:31 -04:00
Shivaram Lingamneni
01bd04a8ff
fix #1050
2020-06-21 18:32:57 -04:00
Shivaram Lingamneni
784078d693
fix bug introduced in #1138
2020-06-16 05:10:09 -04:00
Shivaram Lingamneni
90e697f454
read device ID from SASL as well
2020-06-16 04:58:29 -04:00
Shivaram Lingamneni
e61e0143bd
refactor/enhance jwt signing
2020-06-15 14:34:58 -04:00
Shivaram Lingamneni
bfeba1f2f3
remove client join time tracking
2020-06-15 14:34:58 -04:00
Daniel Oaks
6bee1f6d6a
Review fixes
2020-06-15 14:34:58 -04:00
Daniel Oaks
4164c643e6
Remember when client joins channels, expose in EXTJWT
2020-06-15 14:34:58 -04:00
Daniel Oaks
9b998a7582
Allow custom JWT service expiry times
2020-06-15 14:34:58 -04:00
Daniel Oaks
0bbb5d121d
Basic EXTJWT support
2020-06-15 14:34:58 -04:00
Shivaram Lingamneni
218bea5a3e
fix #843
2020-06-12 16:26:27 -04:00
Daniel Oaks
48509ea852
Review fixes
2020-06-09 02:05:29 +10:00
Daniel Oaks
4535c82fd3
Review fix
2020-06-08 15:25:59 +10:00
Daniel Oaks
efd3152bfb
Add relayed messages to channel history
2020-06-08 15:22:41 +10:00
Daniel Oaks
4ecd7fdf43
Allow configuring relay
2020-06-08 15:17:45 +10:00
Daniel Oaks
4ee49f8450
Initial RELAYMSG implementation
2020-06-08 10:19:28 +10:00
Shivaram Lingamneni
0e570ba8ad
fix #1078
2020-06-02 10:00:43 -04:00
Shivaram Lingamneni
c14a9448cc
print full git hash in RPL_INFO
2020-06-01 13:18:12 -04:00
Shivaram Lingamneni
1477dab604
fix #1080
2020-05-28 13:16:17 -04:00
Shivaram Lingamneni
c1d4c5596d
Merge pull request #1063 from slingamn/history_registeredonly
...
fix #1061
2020-05-26 13:22:12 -07:00
Shivaram Lingamneni
82fbfd0c00
fix #1061
2020-05-26 12:57:24 -04:00
Shivaram Lingamneni
6aa9a56242
fix #1057
2020-05-26 10:56:24 -04:00
Alex Jaspersen
b7c9fb56c2
Ignore non-privmsg commands to services.
...
This avoids "No such nick" responses to +draft/typing TAGMSG, etc.
2020-05-25 14:47:09 +00:00
Shivaram Lingamneni
a0f4e90b7e
add auto-away
2020-05-19 22:46:23 -04:00
Shivaram Lingamneni
b494c1ec35
make it clearer when rehash has completed
2020-05-18 11:37:56 -04:00
Shivaram Lingamneni
8bebba97c3
Merge pull request #1018 from slingamn/account_notify
...
include account-notify in the response batch
2020-05-18 01:00:27 -07:00
Shivaram Lingamneni
4d21d78f49
explanatory comments
2020-05-18 03:35:58 -04:00
Shivaram Lingamneni
67150bc8f7
fix #1020
2020-05-17 18:12:24 -04:00
Shivaram Lingamneni
855eb786af
include account-notify in the response batch
2020-05-17 11:52:32 -04:00
Shivaram Lingamneni
8efbc4bc32
maintain lenBytes as a running count
2020-05-14 22:16:34 -04:00
Shivaram Lingamneni
2779fe7c10
fix #1005
2020-05-14 12:58:49 -04:00
Shivaram Lingamneni
a46c0eed9f
Merge pull request #1004 from slingamn/vanish.4
...
fix #858 and #383
2020-05-14 06:54:24 -07:00
Shivaram Lingamneni
be0dedf260
fix #1003
2020-05-13 06:51:15 -04:00
Shivaram Lingamneni
67f35e5c8a
fix #858 and #383
2020-05-12 12:05:40 -04:00
Shivaram Lingamneni
93f1e5b5b8
Merge pull request #995 from slingamn/issue994_unknowncommand.1
...
fix #994
2020-05-08 13:12:16 -07:00
Shivaram Lingamneni
6f688a4644
fix #994
2020-05-08 05:50:10 -04:00
Shivaram Lingamneni
36dab4e57d
review fix
2020-05-08 02:47:08 -04:00
Shivaram Lingamneni
d187cc5512
Merge pull request #991 from ajaspers/who_invisible
...
Hide +i users from WHO * queries.
2020-05-07 19:09:38 -07:00
Alex Jaspersen
a6e4a26cbb
Performance optimization for determining friends in WHO <mask>.
...
Construct a hash set of the user's channels and check that rather than
querying channel membership, to reduce the number of locks that need to be
acquired.
2020-05-08 01:55:47 +00:00
Alex Jaspersen
b3cfcc1289
Show users in WHO queries if they are friends, i.e. they share a channel.
2020-05-07 03:00:28 +00:00
Alex Jaspersen
1ef41d6020
Hide +i users from WHO * queries.
...
Fixes #990 .
2020-05-07 00:16:22 +00:00
Shivaram Lingamneni
3dc5c8de78
more work on websocket support
2020-05-04 23:26:51 -04:00
Shivaram Lingamneni
3626958f1e
also exempt operators from LIST restrictions
2020-04-27 00:58:48 -04:00
Shivaram Lingamneni
5cdb81e1ea
use Nick()
2020-04-26 03:08:44 -04:00
Shivaram Lingamneni
57e2187742
fix #964
2020-04-26 02:52:09 -04:00
Shivaram Lingamneni
eebe681538
fix #532
2020-04-23 01:29:08 -04:00
Shivaram Lingamneni
bd088ea197
fix #951
2020-04-22 22:19:59 -04:00
Shivaram Lingamneni
04549e7919
fix #827
2020-04-12 22:41:23 -04:00
Shivaram Lingamneni
bbd8807d65
Merge pull request #915 from slingamn/issue817_fakelag.1
...
fix #817
2020-03-29 18:00:34 -07:00
Shivaram Lingamneni
895a0e6d68
fix #913
2020-03-27 17:52:37 -04:00
Shivaram Lingamneni
73d795e6b4
fix #817
2020-03-27 10:40:19 -04:00
Shivaram Lingamneni
f5fe580d22
partial implementation of #729
...
This propagates CS AMODE changes to the actual modes, but not the other
way around.
Also fixes #909 .
2020-03-25 12:13:31 -04:00
Shivaram Lingamneni
3363076689
fix #793
2020-03-20 14:29:49 -04:00
Shivaram Lingamneni
2428acab95
enhancements to roleplay
2020-03-19 17:10:28 -04:00