Commit Graph

1890 Commits

Author SHA1 Message Date
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 dd4fd1cbb6 fix #1452 2020-12-14 15:31:55 -05:00
Shivaram Lingamneni 15a0cda78b pointless refactor of stripMaskFromNick 2020-12-14 15:23:01 -05:00
Shivaram Lingamneni 853bb12c29 fix #1449
INVITE playback (#1409) was buggy, due to the double use of (Item).Params[0]
for the channel name and the recipient nick. Stuff the channel name in
(Item).Message.Message instead.
2020-12-14 08:24:38 -05:00
Shivaram Lingamneni 9033d97c6f
Merge pull request #1450 from slingamn/tor_defcon
DEFCON 4 and lower should require SASL from Tor users
2020-12-13 20:06:30 -05:00
Shivaram Lingamneni 47f7b9a76e make CAP LS/LIST respect the MaxLineLen constant 2020-12-13 15:44:10 -05:00
Shivaram Lingamneni 534939c342 DEFCON 4 and lower should require SASL from Tor users 2020-12-11 05:04:56 -05:00
Shivaram Lingamneni 96380adf27
Merge pull request #1446 from slingamn/reservation_docs
manual updates for nick reservation and email verification
2020-12-08 23:10:01 -08: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 45471138d2 update nick reservation docs 2020-12-08 02:11:53 -05:00
Shivaram Lingamneni 44cc4c2092 introduce "flat ip" representations 2020-12-07 21:21:10 -05:00
Shivaram Lingamneni c8c1ddfb41 fix #1439
Validate imported databases for confusable nicks
2020-12-07 13:35:58 -05:00
Shivaram Lingamneni 48d5bd9144 fix #1436 2020-12-07 03:51:52 -05:00
Shivaram Lingamneni e994e0451a fix incorrect vhost serialization 2020-12-07 02:29:18 -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 f9b842c88b fix #1421
Allow custom limit definitions that encompass multiple subnets
2020-12-04 14:24:19 -05:00
Shivaram Lingamneni 7e56f62aed
Merge pull request #1419 from slingamn/alwayson_channelmodes.1
fix #1345
2020-12-04 02:28:38 -08:00
Shivaram Lingamneni 281821ed0e validate amode recipients 2020-12-04 04:50:40 -05:00
Shivaram Lingamneni 32f3c69a08 support certfp import 2020-12-04 04:37:24 -05:00
Shivaram Lingamneni c0bc485840 schema change for #1345
Convert the flat list of channels for always-on clients
to a map from channel names to channel-user modes.
2020-12-02 15:32:17 -05:00
Shivaram Lingamneni 51f279289d fix #1345
Store the channel-user modes of always-on clients along with their
channel memberships, restore them on server startup. This will coexist
alongside /CS AMODE, which autoapplies modes to clients on join regardless
of their always-on status.
2020-12-02 15:31:49 -05:00
Shivaram Lingamneni 01291ceadd fix #1417
Allow `JOIN 0` with a confirmation code
2020-12-01 14:23:47 -05:00
Shivaram Lingamneni 1b91360885 fix incorrect TAGMSG relaying 2020-11-30 17:08:53 -05:00
Shivaram Lingamneni db100f1f91
Merge pull request #1231 from slingamn/buffer.2
more memory-efficient implementation of line reading
2020-11-30 02:34:25 -08:00
Shivaram Lingamneni a34918e729 add a fuzz test for IRCStreamConn changes 2020-11-30 02:08: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 b4cd62bece
Merge pull request #1414 from slingamn/issue1396_account_snomask
fix #1396
2020-11-29 19:46:12 -08:00
Shivaram Lingamneni b28004bbd9
Merge pull request #1410 from slingamn/welcome
add network name to RPL_WELCOME
2020-11-29 19:45:36 -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 e18eb1db99 fix #1411
Clients without event-playback should receive client-only tags in
replayed PRIVMSG / NOTICE.
2020-11-29 19:57:47 -05:00
Shivaram Lingamneni 42d5e767dd add network name to RPL_WELCOME 2020-11-29 16:34:52 -05:00
Shivaram Lingamneni 0fcaf778e0
Merge pull request #1400 from slingamn/issue1387_messagecaching.4
fix #1387
2020-11-29 02:32:59 -08:00
Shivaram Lingamneni 3ee6fd1f6c allow overriding services hostname
Fixes #1407
2020-11-29 00:02:26 -05:00
Shivaram Lingamneni 9214d978d0 refactor services prefixes and notice handlers 2020-11-29 00:02:26 -05:00
Shivaram Lingamneni ec15d367ba fix #1387
Instead of building a new serialized message for each recipient,
try to cache them.
2020-11-27 00:13:47 -05:00
Shivaram Lingamneni a0d7d8d028 mention UN[DK]LINE in [DK]LINE help 2020-11-26 12:54:50 -05:00
Shivaram Lingamneni 8d44fa3c3f fix duplicated JOIN line sent to resuming clients
Resuming clients without the resume capability would receive
two JOIN lines per channel.
2020-11-26 00:27:21 -05:00
Shivaram Lingamneni c57828eb62 documentation updates for proxy v2 2020-11-19 17:01:56 -05:00
Shivaram Lingamneni 3062f97c2b fix #1389
Support PROXY protocol v2, including ahead of plaintext connections
2020-11-19 12:31:58 -05:00
Shivaram Lingamneni a6a8548466 fix SAJOIN not sending a MODE line where applicable 2020-11-12 11:57:30 -05:00
Shivaram Lingamneni a8ffb11deb use server name as source for chanserv mode changes, for consistency 2020-11-12 11:50:28 -05:00
Shivaram Lingamneni 6a6f104899 fix casefolding issue in NS SUSPEND DEL
NS SUSPEND DEL incorrectly required the use of the casefolded account name.
2020-11-11 11:09:09 -05:00
Shivaram Lingamneni 4f571c2cf3 implement NS RENAME
Fixes #1380
2020-11-10 19:59:12 -05:00
Shivaram Lingamneni 8ad6a53433 fix duplicated nicks in kline message 2020-11-10 11:17:17 -05:00
Shivaram Lingamneni 60ede87ab0 set up new development version 2020-11-08 20:17:22 -05:00
Shivaram Lingamneni 58b5d3c72d fix channel mode help text 2020-11-08 17:33:45 -05:00
Shivaram Lingamneni eeb7c6cb91 bump version to 2.4.0 2020-11-07 21:34:21 -05:00
Shivaram Lingamneni 9374a75c7a implement FAIL CHATHISTORY INVALID_TARGET 2020-11-04 01:54:59 -05:00
Shivaram Lingamneni dac43e6e76 fix #1370 2020-11-01 18:09:04 -05:00
Shivaram Lingamneni 40118d1533 bump version to 2.4.0-rc1 2020-10-31 22:17:58 -04: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 5094b9da02 fix strings for NS SUSPEND 2020-10-28 20:32:55 -04:00
Shivaram Lingamneni 2bb2cab6c2
Merge pull request #1361 from slingamn/suspend.5
fix #1274
2020-10-28 08:12:46 -07:00
Shivaram Lingamneni 5418e5e794 fix #769
Add 379 RPL_WHOISMODES
2020-10-27 18:54:45 -04:00
Shivaram Lingamneni 4296ff02a4 schema change for #1274 2020-10-27 18:30:03 -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 dc456bd6a4 refactor schema versions to be ints, not strings 2020-10-27 12:26:44 -04:00
Shivaram Lingamneni 70b8bf75c5
Merge pull request #1360 from slingamn/issue861_fakelag
fix #861
2020-10-26 20:12:57 -07:00
Shivaram Lingamneni a6e7e1f321
Merge pull request #1359 from slingamn/deop.1
fix #361
2020-10-26 20:12:18 -07:00
Shivaram Lingamneni 610fc5068d refactor DEOP
DEOP is now pure syntactic sugar for /mode #channel -o nick,
the change is attributed to the originating user and not to ChanServ.
2020-10-26 23:08:05 -04:00
Shivaram Lingamneni 2f4431a5fb fix #861
Allow messages-per-window to be 0
2020-10-26 21:06: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 c61b09e314
Merge pull request #1358 from slingamn/setname
enhancements to SETNAME
2020-10-26 13:30:29 -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 6a5ba82f29
Merge pull request #1356 from slingamn/kline
validate normalized masks as IRC params
2020-10-26 11:58:45 -07:00
Barry f010914965
Added ChanServ DEOP command 2020-10-26 18:18:54 +02:00
Shivaram Lingamneni af2b433195 validate normalized masks as IRC params 2020-10-25 23:32:24 -04:00
Shivaram Lingamneni 4b1e6b04c4 add UNINVITE command (#1171) 2020-10-25 22:16:19 -04:00
Shivaram Lingamneni 42d246b557 improve security properties of INVITE
See #1171.
2020-10-25 22:09:17 -04:00
Shivaram Lingamneni 203fc580f4 fix #1049 2020-10-25 13:58:57 -04:00
Shivaram Lingamneni cf5a426f90 fix #1346 2020-10-22 12:19:19 -04:00
Shivaram Lingamneni bd40b46639 fix #307 2020-10-21 11:08:55 -04:00
Shivaram Lingamneni a30e369225 add +u and +U to CHANMODES token 2020-10-20 21:24:47 -04:00
Shivaram Lingamneni f019f62167
Merge pull request #1340 from slingamn/coerce_ident
replace suppress-ident with coerce-ident; make coerce-ident a recommended default
2020-10-20 15:31:13 -07:00
Shivaram Lingamneni 76e3d67b66 replace suppress-ident with coerce-ident 2020-10-20 13:48:19 -04:00
Shivaram Lingamneni 5a9e79f06c fix #1178 2020-10-20 13:37:38 -04:00
Shivaram Lingamneni 4737578748
Merge pull request #1339 from slingamn/issue1337
fix #1337
2020-10-19 08:22:00 -07:00
Shivaram Lingamneni a37a91694c fix #1337 2020-10-19 10:52:38 -04:00
Shivaram Lingamneni 347cc30ed4 fix a potential conflict with delayed verification of confusable names
0. Enable email verification
1. Register `dog`
2. Register `d0g`
3. Verify `dog`
4. Verify `d0g`: verification succeeds but the nick cannot be used
2020-10-16 17:21:09 -04:00
Shivaram Lingamneni cf46377863 fix #1332 2020-10-16 17:21:09 -04:00
Shivaram Lingamneni c639aac241 log the unfolded account name during registration 2020-10-16 17:21:09 -04:00
Shivaram Lingamneni af8ed62de8 schema change for #1330 2020-10-16 12:08:23 -04:00
Shivaram Lingamneni ea68b9de0a fix #1330 2020-10-16 12:03:38 -04:00
Shivaram Lingamneni 898f8aad07 add a schema change 2020-10-16 09:11:47 -04:00
Shivaram Lingamneni 4b2a094921 fix #1327 2020-10-16 00:58:12 -04:00
Shivaram Lingamneni 328f6013f3 fix #1326 2020-10-15 13:03:44 -04:00
Shivaram Lingamneni 1d74185b7d fix #1322 2020-10-13 00:38:23 -04:00
Shivaram Lingamneni 82be9a8423 support migrating anope databases 2020-10-12 15:06:17 -04:00
Shivaram Lingamneni 4336f56204
Merge pull request #1317 from slingamn/hidden_userhost
USERHOST needs to respect hidden operators as well
2020-10-09 11:34:35 -07:00
Shivaram Lingamneni 4ee97ddb43 USERHOST needs to respect hidden operators as well 2020-10-09 12:29:09 -04:00
Shivaram Lingamneni 8cd7085d0b separate rawHostname and cloakedHostname for always-on clients
This affects RPL_WHOISACTUALLY and possibly others.
2020-10-09 11:11:06 -04:00
Shivaram Lingamneni 78b2f61707 fix #1194 2020-10-09 08:03:26 -04:00
Shivaram Lingamneni c470f63daf fix #1312 2020-10-08 16:33:27 -04:00
Shivaram Lingamneni 7fd5bc8d81 review fix 2020-10-07 09:20:26 -04:00
Shivaram Lingamneni 754fb79cdd review fixes 2020-10-07 08:54:46 -04:00