Shivaram Lingamneni
794b4a2483
allow null bytes in bearer tokens
...
(Haven't decided what to do at the spec level yet)
2024-05-29 01:54:12 -04:00
Shivaram Lingamneni
ed683bff79
remove draft/bearer in favor of IRCV3BEARER
2024-05-27 20:40:04 -04:00
Shivaram Lingamneni
218f6f2454
fix login throttle handling
...
We were checking the login throttle at the beginning of every SASL
conversation. This had several problems:
1. Pidgin (on Windows?) tries every mechanism in order, regardless of
the CAP advertisement. It would use up the default throttle allowance
trying unsupported mechanisms like CRAM-MD5.
2. The throttle was actually checked twice for AUTHENTICATE PLAIN
(once at the start of the conversation and once in AuthenticateByPassphrase).
The general pattern here is that we should check the throttle every time we
do something "expensive" (bcrypt verification, send a reset email) or
"dangerous" (anything that could lead to a bruteforce attack on passwords).
Therefore, delete the check from the AUTHENTICATE handler, and add one at
the beginning of the SCRAM conversation to replace it.
2024-05-26 05:19:41 -04:00
Shivaram Lingamneni
7726160ec7
add a config switch to accept hostnames from WEBIRC
...
See #1686 ; this allows i2pd to pass the i2p address to Ergo, which may be
useful for moderation under some circumstances.
2024-04-13 21:43:41 -04:00
Shivaram Lingamneni
ee7f818674
implement SASL OAUTHBEARER and draft/bearer ( #2122 )
...
* implement SASL OAUTHBEARER and draft/bearer
* Upgrade JWT lib
* Fix an edge case in SASL EXTERNAL
* Accept longer SASL responses
* review fix: allow multiple token definitions
* enhance tests
* use SASL utilities from irc-go
* test expired tokens
2024-02-13 18:58:32 -05:00
Shivaram Lingamneni
921651f664
fix #2123
...
Add a configurable limit on realname length
2024-02-08 00:03:12 -05:00
Shivaram Lingamneni
24cf5fac45
fix #2101
2024-01-07 00:38:10 -05:00
Shivaram Lingamneni
ce162e9279
fix #2109 ( #2111 )
...
Remove numerics associated with the retired ACC spec
2023-12-21 01:10:50 -05:00
Val Lorentz
ddb804b622
Fix typo in ACCOUNT_NAME_MUST_BE_NICK code
2023-09-24 14:16:49 +02:00
Shivaram Lingamneni
3f74612e2b
implement draft/no-implicit-names
2023-08-15 20:29:57 -04:00
Shivaram Lingamneni
ad3ad97047
upgrade to irc-go v0.4.0
2023-06-14 02:46:14 -04:00
Shivaram Lingamneni
38a6d17ee5
clean up nested batch logic
2023-06-01 06:29:22 -04:00
Shivaram Lingamneni
3e68694760
Merge pull request #2067 from slingamn/issue2066
...
fix #2066
2023-05-30 23:12:19 -07:00
Val Lorentz
48f8c341d7
Implement draft/message-redaction ( #2065 )
...
* Makefile: Add dependencies between targets
* Implement draft/message-redaction for channels
Permission to use REDACT mirrors permission for 'HistServ DELETE'
* Error when the given targetmsg does not exist
* gofmt
* Add CanDelete enum type
* gofmt
* Add support for PMs
* Fix documentation of allow-individual-delete.
* Remove 'TODO: add configurable fallback'
slingamn says it's probably not desirable, and I'm on the fence.
Out of laziness, let's omit it for now, as it's not a regression
compared to '/msg HistServ DELETE'.
* Revert "Makefile: Add dependencies between targets"
This reverts commit 2182b1da69
.
---------
Co-authored-by: Val Lorentz <progval+git+ergo@progval.net>
2023-05-31 01:16:14 -04:00
Shivaram Lingamneni
00cfe98461
fix #2066
...
CHATHISTORY TARGETS response should not be in a batch unless the client has
explicitly requested the batch cap.
2023-05-29 22:22:01 -04:00
Shivaram Lingamneni
eeec481b8d
tweaks to NAMES implementation ( #2058 )
...
* tweaks to NAMES implementation
* tweak member caching
* add a benchmark for NAMES
2023-04-14 02:15:56 -04:00
Shivaram Lingamneni
295a567eda
Merge pull request #2041 from mogad0n/killresponseupdate
...
Update response string when killing always on clients
2023-03-04 23:31:11 -08:00
Shivaram Lingamneni
eb83df420b
tweak KILL message
...
Remove `<no reason supplied>`, make default KILL anonymous
2023-02-27 03:34:38 -05:00
Shivaram Lingamneni
1da11ae8ae
implement draft/pre-away ( #2044 )
...
* implement draft/pre-away
* clean up some subtleties in auto-away aggregation.
* consistently apply auto-away only to always-on
* `AWAY *` should not produce user-visible changes wherever possible
2023-02-05 00:50:14 -05:00
0653f90b4f
update response when killing alwayson targets
2023-01-31 13:27:02 +05:30
Shivaram Lingamneni
4317016a09
Merge pull request #2028 from slingamn/channels_taketwo.1
...
refactor of channel persistence to use UUIDs
2023-01-15 08:01:37 -08:00
Shivaram Lingamneni
177133a96f
Merge pull request #2033 from slingamn/rehash
...
fix #2031
2023-01-15 04:13:53 -08:00
Shivaram Lingamneni
16e214e4fb
fix #2031
...
Sanitize the in-band error message from REHASH
2023-01-12 06:58:18 -05:00
Shivaram Lingamneni
f72a6fa011
round wait times to the nearest millisecond
2023-01-08 06:36:04 -05:00
Shivaram Lingamneni
7ce0636276
refactor of channel persistence to use UUIDs
2023-01-04 05:06:21 -05:00
Shivaram Lingamneni
77de026961
persistence broadcast needs a cap check
2022-12-10 22:05:46 -08:00
Shivaram Lingamneni
ae1de2554e
add persistence broadcasting
2022-12-10 22:05:46 -08:00
Shivaram Lingamneni
99d27ff737
initial implementation of draft/persistence
2022-12-10 22:05:46 -08:00
Shivaram Lingamneni
fa3de3e149
fix #1983
...
TAGMSG should not get automatic RPL_AWAY replies
2022-12-10 21:01:28 -08:00
Shivaram Lingamneni
825cdab67d
fix #1850
...
Add WHO responses for services
2022-12-02 07:23:29 -05:00
Shivaram Lingamneni
4e0d2d65e8
fix #1996
...
According to the de facto standard, `AWAY :\r\n` is equivalent to `AWAY\r\n`.
Our behavior was inconsistent before, now it consistently matches the de facto
standard.
2022-09-11 04:09:26 -04:00
Shivaram Lingamneni
68bd2d87e0
fix #1991
...
WHO <nickname> should not respect +i
2022-08-22 23:03:17 -04:00
df234b842e
uban list explicitly shows indefinite durations
2022-08-11 03:04:20 +05:30
Shivaram Lingamneni
1d10eb934a
fix #1980
...
Sanitize ::1 to 0::1 in WHOX output
2022-07-14 21:53:36 -04:00
Shivaram Lingamneni
ef088373a8
only send MARKREAD to sessions with the read-marker cap
2022-05-20 01:58:14 -04:00
Shivaram Lingamneni
c3d4be45f1
fix timestamp syntax in MARKREAD
2022-05-20 01:46:41 -04:00
Shivaram Lingamneni
a13235880c
Merge pull request #1954 from slingamn/accept.1
...
fix #1688
2022-05-06 11:40:17 -04:00
Shivaram Lingamneni
c454c45d6a
Merge pull request #1953 from slingamn/issue1886_unregistered.1
...
fix #1886
2022-05-05 22:40:50 -04:00
Shivaram Lingamneni
c5579a6a34
fix #1688
...
* Add ACCEPT-tracking functionality (authorizing users to send DMs
despite +R or other applicable restrictions)
* Sending a DM automatically accepts the recipient
* Add explicit ACCEPT command
2022-05-05 22:34:43 -04:00
Shivaram Lingamneni
b11dc1c84c
fix #1886
...
Add more clarify in NS INFO and SAREGISTER about unregistered nicknames
2022-05-05 01:04:28 -04:00
Shivaram Lingamneni
78548aa9df
add SAVERIFY command
...
Fixes #1924
2022-05-04 16:41:01 -04:00
Shivaram Lingamneni
5c7df07d91
Merge pull request #1936 from slingamn/nick_empty
...
fix #1933
2022-04-25 18:02:31 -04:00
Shivaram Lingamneni
2b8eb93c00
clean up magic numbers
2022-04-24 11:57:21 -04:00
Shivaram Lingamneni
61fd7a2534
fix the rest of #1933
...
`NICK :` pre-registration needs to be special-cased to immediately
send ERR_NONICKNAMEGIVEN (unlike erroneous nonempty nicknames,
which are processed when registration is complete)
2022-04-24 01:39:45 -04:00
Shivaram Lingamneni
1f08c97238
Merge pull request #1926 from slingamn/readmarker.6
...
implement draft/read-marker capability
2022-04-08 01:33:06 -04:00
Shivaram Lingamneni
2fb8b836db
fix #1928
...
LIST should not return ERR_NOSUCHCHANNEL for nonexistent channels
2022-04-07 11:44:23 -04:00
Shivaram Lingamneni
32f7868bfd
implement draft/read-marker capability
2022-03-30 23:16:09 -04:00
Shivaram Lingamneni
a549827f17
upgrade to go 1.18, use generics
2022-03-30 00:44:51 -04:00
William Rehwinkel
4010f3fc02
Fix #1911 +s channels don't appear in /list even though on the channel ( #1923 )
...
* Fix #1911 +s channels don't appear in /list even though on the channel
* use channel.HasClient instead of custom iterative checker
2022-02-28 20:31:16 -05:00
Shivaram Lingamneni
0afa7edffe
fix #1895
...
Include server start time in INFO output.
2022-02-08 07:38:11 -05:00