Commit Graph

1612 Commits

Author SHA1 Message Date
Shivaram Lingamneni aafc89feaa Merge remote-tracking branch 'origin/master' into monoffline 2020-05-30 23:25:25 -04:00
Shivaram Lingamneni 6caa8c1df8
Merge pull request #1082 from slingamn/rplmyinfo.1
fix #1058
2020-05-30 20:17:37 -07:00
Shivaram Lingamneni 9775b7d318
Merge pull request #1081 from slingamn/restricted_nicknames
fix #1080
2020-05-30 20:16:39 -07:00
Shivaram Lingamneni 2d5faaafaa
Merge pull request #1079 from ajaspers/counts
Apply default user modes just before registration.
2020-05-30 20:15:46 -07:00
Shivaram Lingamneni 3025b5f46d fix #1090 2020-05-30 22:40:21 -04:00
Alex Jaspersen 2cb91bab04 Fix issue with one-character args in ArgsToStrings. 2020-05-30 15:45:43 +00:00
Shivaram Lingamneni 2def06b98f fix #1076 2020-05-28 18:34:43 -04:00
Shivaram Lingamneni beea32adfe fix #1058 2020-05-28 14:42:24 -04:00
Shivaram Lingamneni 1477dab604 fix #1080 2020-05-28 13:16:17 -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
Shivaram Lingamneni 9177e785c5 add a config sanity check 2020-05-28 01:18:19 -04:00
Shivaram Lingamneni 2389a21de3 add snomask documentation 2020-05-27 09:57:27 -04:00
jesopo 5fbf9c650e isupport List.Tokens map[string]*string -> map[string]string 2020-05-27 00:16:33 +01:00
jesopo 8eee127e4d don't add trailing = to ISUPPORT tokens when value is empty string 2020-05-26 23:51:28 +01: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
jesopo e7584233ae handle CTCP VERSION, PING and TIME for services pseudo-users 2020-05-26 13:42:28 +01: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 9a555f6f30 bump to 2.1.0-rc1 2020-05-24 20:40:59 -04:00
Shivaram Lingamneni b80f92b2aa
Merge pull request #1044 from slingamn/tagmsg_fix
fix TAGMSG playback
2020-05-22 14:41:01 -07:00
Shivaram Lingamneni 2f20034bb7 fix TAGMSG playback
1. TAGMSG were incorrectly being considered multilines, because
   Is512() was checking the wrong thing
2. Playback of TAGMSG should depend on event-playback, not on message-tags
2020-05-22 12:07:53 -04:00
Alex Jaspersen e0f91f5649 /ns erase should confirm with /ns erase rather than unregister. 2020-05-22 14:44:35 +00:00
Shivaram Lingamneni 4595ed68a9
Merge pull request #1040 from slingamn/build_again.2
tweak version strings again
2020-05-21 10:49:53 -07:00
Shivaram Lingamneni 464d0be949 tweak version strings again 2020-05-21 11:42:17 -04:00
Shivaram Lingamneni c45e76460a clean up account-notify logout notification
don't need to send account-notify * (logout notification)
because either we never sent the initial account-notify
(if we are being logged out as part of fixupNickEqualsAccount)
or else we are immediately going to kill the client
(if we are being logged out as part of unregister/erase)
2020-05-21 11:14:12 -04:00
Shivaram Lingamneni 06b2cb2efc
Merge pull request #1036 from slingamn/account_persistence.3
last round of feature changes
2020-05-20 04:58:57 -07:00
Shivaram Lingamneni 5345fc35dd
Merge pull request #1032 from slingamn/history_enable
fix #1030
2020-05-20 04:33:35 -07:00
Shivaram Lingamneni ef0aa20cff fix #1035 2020-05-19 22:46:23 -04:00
Shivaram Lingamneni 4d50607c79 add persistence for user modes 2020-05-19 22:46:23 -04:00
Shivaram Lingamneni a0f4e90b7e add auto-away 2020-05-19 22:46:23 -04:00
Shivaram Lingamneni d7cdaf1a90 correct old proxiedConn name 2020-05-19 09:37:06 -04:00
Shivaram Lingamneni b2483f5cf2 fix #1030 2020-05-19 08:01:10 -04:00
Shivaram Lingamneni a95c44696f review fix 2020-05-18 12:33:26 -04:00
Shivaram Lingamneni b494c1ec35 make it clearer when rehash has completed 2020-05-18 11:37:56 -04:00
Shivaram Lingamneni bced409e78 unconditionally destroy the client on unregister
This avoids conditions where two sessions can be attached to the same client
while not logged into an account.
2020-05-18 05:39:02 -04:00
Shivaram Lingamneni df2dfb7270 HistServ is a real service now, remove special casing 2020-05-18 05:11:44 -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 922d5c58e2
Merge pull request #1025 from slingamn/plan9
fix plan9 support
2020-05-18 00:59:02 -07:00
Shivaram Lingamneni 6028953ed4
Merge pull request #1024 from slingamn/issue1020_password.3
fix #1020
2020-05-18 00:58:51 -07:00
Shivaram Lingamneni aa79706165
Merge pull request #1023 from slingamn/issue1021_modeparam
fix #1021
2020-05-18 00:58:35 -07:00
Shivaram Lingamneni 4d21d78f49 explanatory comments 2020-05-18 03:35:58 -04:00
Shivaram Lingamneni ccfc059755 fix plan9 support 2020-05-17 20:53:08 -04:00
Shivaram Lingamneni 67150bc8f7 fix #1020 2020-05-17 18:12:24 -04:00
Shivaram Lingamneni 2f9234318c fix #1021 2020-05-17 14:07:38 -04:00
Shivaram Lingamneni a397756882 fix #1019 2020-05-17 13:39:37 -04:00
Shivaram Lingamneni 855eb786af include account-notify in the response batch 2020-05-17 11:52:32 -04:00
Alex Jaspersen 3468a8cb8a Add support for Unix domain sockets.
This adds a new configuration option, socket-path, instead of using
host.
2020-05-17 05:04:03 +00:00
Shivaram Lingamneni 66561771e6
Revert "Add support for Unix domain sockets" 2020-05-17 00:30:02 -04:00
Shivaram Lingamneni 045dd89c41
Merge pull request #1013 from ajaspers/mysql
Add support for Unix domain sockets
2020-05-16 19:58:34 -07:00
Alex Jaspersen 475ec9fb24 Add support for Unix domain sockets. 2020-05-16 20:12:20 +00:00
Shivaram Lingamneni 9517adae9d make histserv replies come from histserv, not hostserv 2020-05-15 11:54:28 -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 178cc0a939 review fix 2020-05-13 19:41:31 -04:00
Shivaram Lingamneni b3d7c9af62 neutral language 2020-05-13 12:12:31 -04:00
Shivaram Lingamneni de3e2e3950 review fixes 2020-05-13 11:56:17 -04:00
Shivaram Lingamneni d092f6b330 explanatory comment for CompileMasks 2020-05-13 10:07:54 -04: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 d94a0aea9a upgrade go-ident to fix parsing issue 2020-05-11 18:25:25 -04:00
Shivaram Lingamneni 2257f33efa ratify SETNAME 2020-05-11 18:11:09 -04:00
Shivaram Lingamneni 548a2f814a Merge remote-tracking branch 'origin/master' into issue996_proto.1 2020-05-11 02:04:20 -04:00
Shivaram Lingamneni 51c65f999d
Merge pull request #998 from slingamn/operator_topic
treat channel founder as such even if they don't have +q
2020-05-10 22:51:07 -07:00
Alex Jaspersen d5cec62df3 Call ApplyUserModeChanges for default user modes.
This ensures that counts like the number of invisible users are updated
correctly.
2020-05-11 05:41:40 +00:00
Shivaram Lingamneni c738a754a2 treat channel founder as such even if they don't have +q
This affects /TOPIC, /INVITE, and a few others.
2020-05-10 23:17:09 -04:00
Shivaram Lingamneni 89984f9c36 fix untrusted PROXY lines being accepted
As of 3dc5c8de78, the PROXY-before-TLS proxy line
and any proxy information carried in X-Forwarded-For
do not count as the "first line", so an additional
client-supplied PROXY line would have been accepted.
2020-05-10 19:12:18 -04:00
Shivaram Lingamneni d562c6d25a more informative IP connection logline 2020-05-10 19:04:54 -04:00
Shivaram Lingamneni 0f7d58b1c5 fix #996 2020-05-10 06:17:11 -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 8c74b0660b fix #952 2020-05-08 01:18:00 -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
Shivaram Lingamneni 17909a5db0 simplify listener rehash logic 2020-05-07 06:42:50 -04: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
Shivaram Lingamneni 98b91e7bdd review fix 2020-05-06 22:52:01 -04:00
Alex Jaspersen 1ef41d6020 Hide +i users from WHO * queries.
Fixes #990.
2020-05-07 00:16:22 +00:00
Shivaram Lingamneni 14bcd46588 fix #982 2020-05-06 05:56:00 -04:00
Shivaram Lingamneni b0f692e1ca
Merge pull request #984 from slingamn/issue983_bancomp
fix #983
2020-05-05 22:27:00 -07:00
Shivaram Lingamneni ab8f542c11 fix #985 2020-05-06 01:15:04 -04:00
Shivaram Lingamneni 984794eb1e fix #983 2020-05-06 01:07:06 -04:00
Shivaram Lingamneni d37af694af
Merge pull request #979 from slingamn/websockets_draft.7
websockets implementation
2020-05-05 17:54:52 -07:00
Shivaram Lingamneni c92192ef48 review fixes; add submatch support to glob 2020-05-05 17:20:55 -04:00
Shivaram Lingamneni 872fd3e77c
Merge pull request #975 from slingamn/shorten_batch_id
use shorter batch IDs
2020-05-05 03:27:43 -07:00
Shivaram Lingamneni 5ae6f6b927 fix incorrect propagation of listener errors 2020-05-05 06:25:28 -04:00
Shivaram Lingamneni 4ef6c58317 work around a chrome bug 2020-05-05 04:13:55 -04:00
Shivaram Lingamneni 620e30293d use consistent spelling of WebSocket 2020-05-05 04:07:19 -04:00
Shivaram Lingamneni 3d3aec6979 fix missing err check, thanks @eklitzke 2020-05-04 23:42:34 -04:00
Shivaram Lingamneni 3dc5c8de78 more work on websocket support 2020-05-04 23:26:51 -04:00
Alex Jaspersen b363a01a6f Read accounts and grouped nicks in same transaction. 2020-05-04 02:20:28 +00:00
Alex Jaspersen 73bea0168d Read account names and additional nicknames from the db to avoid casefolding issues. 2020-05-04 02:14:55 +00:00
Alex Jaspersen 6019ed1e29 Add ChanServ and NickServ LIST commands.
These commands search the registered nicknames/channels for ones
matching the provided regex, or return the entire list.

Only operators with chanreg (for ChanServ) or accreg (for NickServ)
capabilities can use LIST.
2020-05-04 00:51:39 +00:00
Shivaram Lingamneni 3a571f28ac use shorter batch IDs 2020-05-03 03:27:13 -04:00
Shivaram Lingamneni 25813f6d3a Merge remote-tracking branch 'origin/master' into websockets_draft.2 2020-04-30 22:16:07 -04:00
Hubert Hirtz f5930444f7 WebSocket support 2020-04-30 23:17:33 +02:00
Alex Jaspersen b3a7e5c996 Set default user modes when always-on clients reconnect.
Add default-user-modes configuration to conventional.yaml.
Fix comment on DefaultUserModes.
2020-04-30 04:38:19 +00:00
Alex Jaspersen 52910a185c Add test for ParseDefaultUserModes. 2020-04-30 03:54:18 +00:00