Commit Graph

471 Commits

Author SHA1 Message Date
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 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 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 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 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 76e3d67b66 replace suppress-ident with coerce-ident 2020-10-20 13:48:19 -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 9ed789f67c fix #1075 2020-10-06 18:04:29 -04:00
Shivaram Lingamneni a19324b948 fix #1293 2020-10-05 07:35:18 -04:00
Shivaram Lingamneni 8c99dcb2c7 fix #484 2020-10-02 08:13:52 -04:00
Shivaram Lingamneni 1a9f501383 fix #414 2020-09-23 02:25:29 -04:00
Alex Jaspersen ca2132ff09 Add NickServ "CLIENTS LIST" and "CLIENTS LOGOUT".
CLIENTS LIST shows information about clients attached to a nick.
CLIENTS LOGOUT allows individual (or all) sessions to be logged out.

SESSIONS is now an alias for CLIENTS LIST.

Fixes #1072.
2020-09-19 10:19:41 -07:00
Shivaram Lingamneni f3cdf8442a pass the require-sasl message through from the script 2020-09-14 08:16:03 -04:00
Shivaram Lingamneni 1a98a37a75 scripting API for IP bans
See discussion on #68.
2020-09-14 04:28:12 -04:00
Shivaram Lingamneni 307adba8bd fix #1213 2020-09-07 06:00:53 -04:00
Shivaram Lingamneni c50c267d3c better debug logline for failed message building 2020-08-10 17:33:24 -04:00
Shivaram Lingamneni b54d0f8f34 add timer coalescing for the common case 2020-08-08 23:07:53 -04:00
Shivaram Lingamneni a3e5c9e98c fix #1229 2020-08-07 18:11:39 -04:00
Shivaram Lingamneni 1c4f9daae7 remove some dead code 2020-08-07 00:16:04 -04:00
Shivaram Lingamneni 06882a9b89 fix #1225 2020-08-06 03:28:10 -04:00
Shivaram Lingamneni df8be72c6f move StringSet to utils package 2020-08-04 21:54:03 -04:00
Shivaram Lingamneni 6a2fba9812 make it easier to patch out the maximum line length 2020-08-03 12:51:04 -04:00
Shivaram Lingamneni 027886046c clean up always-on state machine 2020-07-27 00:21:16 -04:00
Shivaram Lingamneni eaae3165f2 don't trigger auto-away if the client is already away 2020-07-20 17:05:29 -04:00
Shivaram Lingamneni 6916dbeae0 use consistent phrase for auto-away message 2020-07-20 16:58:41 -04:00
Shivaram Lingamneni ffd00e1aff minor optimization to Client.Friends 2020-07-17 04:53:30 -04:00
Shivaram Lingamneni a99c893f9b Merge branch 'realname_again' 2020-07-12 16:49:30 -04:00
Conrad Lukawski 6f8711da3b Persist realname for always-on clients 2020-07-12 14:46:36 -04:00
Shivaram Lingamneni a7ca6601c7 enhancements to moderation (#1134, #1135) 2020-07-10 17:09:02 -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 70f533ee07 fix #1155 2020-06-29 21:29:28 -04:00
Shivaram Lingamneni 0f04acaa40 persist last seen on shutdown 2020-06-29 00:38:05 -04:00
Shivaram Lingamneni e22adf47ca increase write interval for lastSeen 2020-06-29 00:38:05 -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 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 17cd831319 fix #1144 2020-06-18 03:38:00 -04:00
Shivaram Lingamneni df1be01f54 simplify lastSeen handling 2020-06-14 13:52:29 -04:00
Shivaram Lingamneni 218bea5a3e fix #843 2020-06-12 16:26:27 -04:00
Shivaram Lingamneni e70acf4c17 fix #1108 2020-06-02 19:05:51 -04:00
Shivaram Lingamneni 32ee9440c8 fix #1027 2020-06-01 11:55:53 -04:00
Shivaram Lingamneni aafc89feaa Merge remote-tracking branch 'origin/master' into monoffline 2020-05-30 23:25:25 -04:00
Shivaram Lingamneni 2def06b98f fix #1076 2020-05-28 18:34:43 -04:00
Alex Jaspersen 0241e0c31d Apply default user modes just before registration.
Previously, we were applying defaults before the user had completed
registration. This meant that the number of invisible users was
incremented when the user connected, and then the total was incremented
when registration was completed.

Now both counters are updated at the same time. If a user disconnects
prior to registration, +i has not yet been applied so it would not be
decremented.
2020-05-28 15:53:14 +00:00