Commit Graph

1612 Commits

Author SHA1 Message Date
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
Alex Jaspersen df9bf15f00 Add support for setting user modes by default. 2020-04-30 03:54:09 +00:00
Shivaram Lingamneni a06b4d5e88
Merge pull request #965 from slingamn/delayedlist.1
fix #964
2020-04-26 22:05:46 -07: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 a7f020320e make erase confirmation code nondeterministic 2020-04-24 15:41:58 -04:00
Shivaram Lingamneni f87b71b93f fix #962 2020-04-24 15:39:39 -04:00
Shivaram Lingamneni 4722f8a96c fix #959 2020-04-24 01:33:21 -04:00
Shivaram Lingamneni 40d3c59139 fix #955 2020-04-23 02:02:07 -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 360a5af90d fix #950 2020-04-22 21:52:24 -04:00
Hubert Hirtz f2e3287f8d use servername instead of nickmask for RPL_UMODEIS prefix 2020-04-16 09:31:54 +02:00
Shivaram Lingamneni f07a456688
Merge pull request #944 from slingamn/issue827_rename
fix #827
2020-04-13 10:13:47 -07:00
Shivaram Lingamneni 9a6cb84b58 fix #943 2020-04-13 11:54:39 -04:00
Shivaram Lingamneni 04549e7919 fix #827 2020-04-12 22:41:23 -04:00
Shivaram Lingamneni f4f7a8afaa shorten type names to 10 chars 2020-04-12 14:01:07 -04:00
Shivaram Lingamneni 11d1d96d71 align up to 10 2020-04-12 13:45:24 -04:00
Shivaram Lingamneni dbbcd800c9 align log messages with space padding 2020-04-12 13:33:36 -04:00
Shivaram Lingamneni 6e4b0b3125 remove log type sanitization 2020-04-12 13:33:36 -04:00
Shivaram Lingamneni ded03ee618 fix timestamp formatting 2020-04-12 13:30:43 -04:00
Shivaram Lingamneni 6a900ca0cb strip out log coloring 2020-04-12 12:54:02 -04:00
Shivaram Lingamneni 80424a6f00 fix #936 2020-04-07 12:24:44 -04:00
Shivaram Lingamneni 3f717436f8 fix #933 2020-04-06 13:10:38 -04:00
Shivaram Lingamneni ecb4aa03aa
Merge pull request #931 from slingamn/issue930
fix #930
2020-04-06 07:52:04 -07:00
Shivaram Lingamneni ae2a92ca9a
Merge pull request #929 from slingamn/verify_rename.1
enforce nick protection immediately after verification
2020-04-06 07:51:53 -07:00
Shivaram Lingamneni 8fb5eee171 fix #930 2020-04-06 10:47:55 -04:00
Shivaram Lingamneni d6e3f188cf enforce nick protection immediately after verification 2020-04-06 02:38:29 -04:00
Shivaram Lingamneni ee05a4324d fix #920, #921 2020-04-05 03:48:59 -04:00
Shivaram Lingamneni 6e630a0b5c add the smtp code from the go 1.14.1 release 2020-04-03 11:32:13 -04:00
Shivaram Lingamneni 46f68d4cf2 fix #922 2020-03-31 14:28:26 -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 8acd58e263 fix #908 2020-03-26 16:25:37 -04:00
Shivaram Lingamneni 0cce086367
Merge pull request #910 from slingamn/amode.2
partial implementation of #729
2020-03-26 09:30:30 -07:00
Shivaram Lingamneni b61d258d0c retain nickname protections after unregistration 2020-03-25 16:24:08 -04:00
Shivaram Lingamneni c238f07543 fix #908 2020-03-25 14:07:43 -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
Hubert Hirtz 1095aca5e7 irc/modes: remove duplicate test case 2020-03-24 14:56:50 +01:00
Shivaram Lingamneni f2da69d49f fix #898 2020-03-22 18:18:48 -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 101dc6b0d9 increase TLS handshake timeout 2020-03-22 10:09:20 -04:00
Shivaram Lingamneni 48f6bb79c8
Merge pull request #890 from slingamn/permanent_accounts.2
make account names permanent identifiers
2020-03-21 21:20:18 -07:00
Shivaram Lingamneni 5e5003f5b6 fix #850 2020-03-20 15:14:27 -04:00
Shivaram Lingamneni 811da03ab5 fix #889 2020-03-20 14:47:40 -04:00
Shivaram Lingamneni 3363076689 fix #793 2020-03-20 14:29:49 -04:00
Shivaram Lingamneni 2d908eac8b fix #874 2020-03-20 09:16:22 -04:00
Shivaram Lingamneni 28b7639c26 fix #883 2020-03-20 07:17:58 -04:00
Shivaram Lingamneni 2428acab95 enhancements to roleplay 2020-03-19 17:10:28 -04:00
Shivaram Lingamneni 2bb36e6cb8 fix roleplay messages not being relayed
See #865.
2020-03-19 15:12:28 -04:00
Shivaram Lingamneni 621df31577 fix #704 2020-03-19 07:26:17 -04:00
Shivaram Lingamneni b32dd5ce33 rename a variable 2020-03-19 05:09:25 -04:00
Shivaram Lingamneni ca3be51028 fix double application of guest prefix 2020-03-19 05:08:53 -04:00
Shivaram Lingamneni bd45c346dc fix #685 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 9559ea6764 fix #408 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 442055ff30 fix #842 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni ece444d04b fix #805 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 65ebe7f64a fix #868 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 39d3194104 fix #869 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni 988d97d68a fix #846 2020-03-18 07:07:20 -04:00
Shivaram Lingamneni d98e3581b3 disallow /SAMODE nick +o 2020-03-17 13:19:27 -04:00
Shivaram Lingamneni 76d3ecca71 fix #866 2020-03-17 13:00:53 -04:00
Shivaram Lingamneni 6d65335071 fix various bugs 2020-03-17 09:07:32 -04:00
Shivaram Lingamneni edd161ddfd rename config keys from review feedback 2020-03-17 09:04:14 -04:00
Shivaram Lingamneni 26fd3e69a8 fix #749 2020-03-16 13:48:14 -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 2f243ab65b bump to next development version 2020-03-08 23:01:52 -04:00
Shivaram Lingamneni 8fd326fd33 bump version to 2.0.0 2020-03-08 05:36:11 -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 e7c1800893 fix a spurious error logline
unregistering an always-on client would produce
"attempting to persist logged-out client : x"
because the client was always-on, but also being ejected
2020-03-02 01:54:40 -05:00
Shivaram Lingamneni d5f68215e1 mark dirty when a client first becomes always-on 2020-03-02 01:53:02 -05:00
Shivaram Lingamneni 3005e95c1f rename IncludeAllChannelAttrs 2020-03-02 01:46:22 -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 b4f720ae04 bump version to 2.0.0-rc1 2020-03-02 00:03:03 -05:00
Shivaram Lingamneni 8ed6634b3f
Merge pull request #823 from slingamn/changelog.2
branding, manual, and changelog updates for 2.0
2020-03-01 20:59:16 -08:00
Shivaram Lingamneni 579ef668ac fix #838 2020-03-01 23:13:21 -05:00
Shivaram Lingamneni 3e01e9995b fix #836 2020-03-01 03:39:25 -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 3a78029809 partial fix for #812 2020-02-26 03:19:14 -05:00
Shivaram Lingamneni e78cb70d33 streamline credits 2020-02-26 02:39:37 -05:00
Shivaram Lingamneni 42ccd81205 make an exception for saset 2020-02-26 02:00:38 -05:00
Shivaram Lingamneni 521617559f fix #821
Or try to, anyway
2020-02-26 01:44:05 -05:00
Shivaram Lingamneni 1975b0968a fix double decrement of stats on ping timeout 2020-02-25 14:04:50 -05:00
Shivaram Lingamneni ce208cb3e1 fix #814 2020-02-25 13:26:49 -05:00
Shivaram Lingamneni 3e787de994 handle kiwi's BEFORE * 2020-02-25 00:19:24 -05:00
Shivaram Lingamneni b45f8436a4 refactoring / bug fixing in history preferences 2020-02-25 00:19:24 -05:00
Shivaram Lingamneni 891da73e56 fix handling of history grace periods 2020-02-24 05:44:55 -05:00
Shivaram Lingamneni 44b79a052c raise passphrase length limit to 300 bytes
For irctest compatibility.

Fixes #775
2020-02-23 00:12:21 -05:00
Shivaram Lingamneni fb8b73e29a Merge branch 'persistent.14' 2020-02-22 23:10:52 -05:00
Shivaram Lingamneni c445b45f31
Merge pull request #800 from slingamn/issue791_crashserver
fix #791
2020-02-22 20:08:42 -08:00
Shivaram Lingamneni fec27cc7c2
Merge pull request #799 from slingamn/issue725_deoper.1
fix #725
2020-02-22 20:07:29 -08:00