Commit Graph

473 Commits

Author SHA1 Message Date
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
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
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 67150bc8f7 fix #1020 2020-05-17 18:12:24 -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 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 548a2f814a Merge remote-tracking branch 'origin/master' into issue996_proto.1 2020-05-11 02:04:20 -04: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 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 6f688a4644 fix #994 2020-05-08 05:50:10 -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 3dc5c8de78 more work on websocket support 2020-05-04 23:26:51 -04:00
Shivaram Lingamneni 3a571f28ac use shorter batch IDs 2020-05-03 03:27:13 -04: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 df9bf15f00 Add support for setting user modes by default. 2020-04-30 03:54:09 +00:00
Shivaram Lingamneni f4f7a8afaa shorten type names to 10 chars 2020-04-12 14:01:07 -04:00
Shivaram Lingamneni 73d795e6b4 fix #817 2020-03-27 10:40:19 -04:00
Shivaram Lingamneni 761d215ecd remove unnecessary comment 2020-03-22 10:09:20 -04:00
Shivaram Lingamneni f3d64d2859 move idletimer and fakelag initialization before certfp read 2020-03-22 10:09:20 -04:00
Shivaram Lingamneni 65ebe7f64a fix #868 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 458d813ee1 work around mirc bug 2020-03-11 18:57:42 -04:00
Shivaram Lingamneni bbe9e09d46 clean up trailing hack 2020-03-11 18:57:25 -04:00
Shivaram Lingamneni d50c4c2bd6 fix #848 2020-03-06 04:47:47 -05:00
Shivaram Lingamneni 5447fc79ff fix confusion between lastSeen and lastActive 2020-03-02 03:06:57 -05:00
Shivaram Lingamneni d72037725b simplify read of lastSeen 2020-03-02 02:52:51 -05:00
Shivaram Lingamneni c0192e0e52 add missing initialization for writerSemaphore
It was only initialized for always-on clients, not for regular clients.
This explains a lot in terms of #812 failing to reproduce.
2020-03-02 01:32:08 -05:00
Shivaram Lingamneni a74450d6ca remove redundant database write on always-on recreation 2020-03-02 01:24:08 -05:00
Shivaram Lingamneni d967129446 fix #833 2020-02-28 05:41:08 -05:00
Shivaram Lingamneni 85dfebce43 fix #831 2020-02-27 19:29:14 -05:00
Shivaram Lingamneni 1dc93bbb9f fix #829
also, handle nickname targets in znc.in/playback
2020-02-27 14:43:59 -05:00
Shivaram Lingamneni db39608bcb change "last signoff" tracking to "last seen"
Explicit quit and ping timeout behave the same way,
but reattach after abandoning/losing the previous session
(without the break being detected server-side) is more aggressive
about replaying missed messages, at the cost of potential duplication.
2020-02-27 02:17:58 -05:00
Shivaram Lingamneni 1975b0968a fix double decrement of stats on ping timeout 2020-02-25 14:04:50 -05:00
Shivaram Lingamneni b45f8436a4 refactoring / bug fixing in history preferences 2020-02-25 00:19:24 -05:00
Shivaram Lingamneni 03378da81b CHATHISTORY with no results SHOULD send an empty batch 2020-02-21 00:33:48 -05:00
Shivaram Lingamneni 4472683d58 persist lastSignoff in the database 2020-02-21 00:33:37 -05:00
Shivaram Lingamneni 17a89838b8 fix Client.historyStatus 2020-02-21 00:33:37 -05:00
Shivaram Lingamneni 8f4c14c783 miscellaneous review fixes 2020-02-21 00:33:37 -05:00
Shivaram Lingamneni ad32356e34 move authentication data from Client to Session 2020-02-19 00:24:21 -05:00
Shivaram Lingamneni 33dac4c0ba initial persistent history implementation 2020-02-19 00:24:12 -05:00
Shivaram Lingamneni a3f008e348 mitigate #772 2020-02-06 17:56:10 -05:00
Shivaram Lingamneni 5d662742b9 remove oragono.io/maxline-2 and fmsgid 2020-01-18 23:47:05 -05:00
Shivaram Lingamneni 6838d19acc don't check the real IP for bans on proxy-before-TLS
In the k8s PROXY-before-TLS setting, we don't know all the IPs
of the load balancers, so we can't whitelist them, so they're at
risk of being d-lined.
2020-01-09 04:38:59 -05:00
Shivaram Lingamneni d67d77bee7 fix #731 2020-01-03 09:46:55 -05:00
Shivaram Lingamneni f920d3b79f fix #530, #721 2019-12-29 12:05:01 -05:00
Shivaram Lingamneni 9de9fcf069
Merge pull request #695 from slingamn/issue693_casemappings.4
#693: configurable casemappings
2019-12-29 09:20:06 -05:00
Shivaram Lingamneni 358c4b7d81 implement draft/multiline 2019-12-24 09:29:54 -05:00
Shivaram Lingamneni bf5a02f077
Merge pull request #692 from slingamn/issue683_channelpurge.1
chanserv enhancements and miscellaneous fixes
2019-12-22 10:41:24 -05:00
Shivaram Lingamneni b717402b5e implement review feedback
1. If both fingerprint and hash are specified, require both instead of either
2. Implement auto-oper on connect
2019-12-19 06:33:43 -05:00
Shivaram Lingamneni ab444a3980 remove unnecessary uses of Casefold 2019-12-18 12:21:03 -05:00
Shivaram Lingamneni 4b37b5dd3e tweak to avoid a potential data race 2019-12-17 19:57:23 -05:00
Shivaram Lingamneni 3480f124cd fix #688 2019-12-17 19:37:33 -05:00
Shivaram Lingamneni 07865b8f63 chanserv enhancements and miscellaneous fixes
* Fix #684
* Fix #683
* Add `CHANSERV CLEAR`
* Allow mode changes from channel founders even when they aren't joined
* Operators with the chanreg capability are exempt from max-channels-per-account
* Small fixes and cleanup
2019-12-16 20:06:52 -05:00
Shivaram Lingamneni 7432ef07a7 rename some variables for clarity 2019-11-20 17:43:45 -05:00
Shivaram Lingamneni 50783d5276 fix #561, take 2 2019-11-20 17:35:35 -05:00
Shivaram Lingamneni 24c103da5a fix #642 2019-10-05 23:50:11 -04:00
Shivaram Lingamneni 7ed27d4a42 Fix #448, #594 2019-08-27 03:58:04 -04:00
Daniel Oaks 7a56c4e0ad
Merge pull request #591 from slingamn/history_autoresize.4
autoresizing of history buffers (#349)
2019-07-31 06:36:35 +10:00
Shivaram Lingamneni ecf945038f
Merge pull request #565 from slingamn/listener_refactor.3
refactor listener config loading
2019-07-12 11:08:04 -04:00
Daniel Oaks dc87ae7ef1
Merge pull request #583 from slingamn/stats.4
fix #526
2019-07-12 23:39:50 +10:00
Shivaram Lingamneni cbabccc2f8 fix #592 2019-07-04 07:05:38 -04:00
Shivaram Lingamneni 6e9a728354 autoresizing of history buffers (#349) 2019-07-03 21:08:37 -04:00
Shivaram Lingamneni 5a554ab4b0 fix #526 2019-07-01 09:21:38 -04:00
Shivaram Lingamneni cfe991a335 Merge remote-tracking branch 'origin/master' into listener_refactor.4 2019-06-28 09:05:07 -04:00
Shivaram Lingamneni 5d0b8390e9 refactor listener config loading 2019-06-19 22:33:15 -04:00
Shivaram Lingamneni 8dca545264 consolidate some time-setting code 2019-06-13 07:24:38 -04:00
Daniel Oaks dc322f8fd4
Merge pull request #546 from slingamn/issue536.3
fix #536
2019-06-10 01:13:02 +10:00
Shivaram Lingamneni 321c437499 fix #536 2019-05-31 14:39:21 -04:00
Shivaram Lingamneni 4350b92bef fix KILL etc. for BRB'ed clients 2019-05-30 18:49:03 -04:00
Shivaram Lingamneni c0b554e98c changes from discussion 2019-05-29 07:37:57 -04:00
Shivaram Lingamneni acc9d8c13d update to proposed draft/resume-0.5 behavior 2019-05-29 05:58:47 -04:00
Shivaram Lingamneni 5ac7ea5b1c fix data race on exitedSnomaskSent 2019-05-27 14:33:59 -04:00
Shivaram Lingamneni 1a7169d75d fix double-destroy bug 2019-05-27 06:10:39 -04:00
Shivaram Lingamneni 74732c4aeb new proposed format for RESUMED messages 2019-05-27 06:10:39 -04:00
Shivaram Lingamneni 57684fc1e5 fix #518 2019-05-27 06:10:39 -04:00
Shivaram Lingamneni 99de53264e fix a bug in SetQuitMessage
Quit messages aren't supposed to clobber each other under any
circumstances, but actually only the default "Connection closed"
message was non-clobbering, all others would clobber.
2019-05-23 21:20:14 -04:00
Shivaram Lingamneni 174115deb6 fix #455 2019-05-23 21:20:14 -04:00
Shivaram Lingamneni 4b88a60ba6 clean up some old getters 2019-05-22 19:07:12 -04:00
Shivaram Lingamneni 05459012ef move fakelag processing back to read loop as well 2019-05-22 18:35:24 -04:00
Shivaram Lingamneni 4e13f72ca9 put an upper limit on registration messages
Fixes #505
2019-05-22 16:42:25 -04:00
Shivaram Lingamneni cf153c2b09 restore RESUME SUCCESS message 2019-05-22 15:08:02 -04:00
Shivaram Lingamneni 851617a4a5 Merge remote-tracking branch 'origin/master' into brb.5 2019-05-22 03:29:18 -04:00
Shivaram Lingamneni 3d445573cf implement draft/resume-0.4 2019-05-21 22:36:37 -04:00
Shivaram Lingamneni b96fdb2293 support znc.in/playback 2019-05-20 19:08:57 -04:00
Shivaram Lingamneni 8fc588375b implement user preferences system 2019-05-19 06:17:30 -04:00
Shivaram Lingamneni 25974b6881 fix #487 2019-05-19 05:12:12 -04:00
Shivaram Lingamneni 58d089020e send command processing errors to the originating session only 2019-05-15 22:30:35 -04:00
Shivaram Lingamneni 0346c23ae0 fix #387 2019-05-15 01:30:21 -04:00
Shivaram Lingamneni 6ded2ea466 fix #483 2019-05-13 00:43:29 -04:00
Shivaram Lingamneni 0b55fed7c5 consolidate acceptClient into RunNewClient 2019-05-12 20:57:53 -04:00