Matt Hamilton
9d53d9ff3a
Gracefully handle NS cert add myself <fp>
...
A non-operator with the nick "mynick" attempts to register
a fingerprint to their authenticated account.
They /msg NickServ cert add mynick <fingerprint>
NickServ responds with "Insufficient privileges" because
they've accidentally invoked the operator syntax (to action
other accounts).
This patch allows the user to add the fingerprint if the client's
account is identical to the target account.
Signed-off-by: Matt Hamilton <m@tthamilton.com>
2024-02-14 01:11:50 -05:00
Shivaram Lingamneni
010875ec9a
bump version and changelog for v2.13.0
2024-01-14 17:40:50 -05:00
Shivaram Lingamneni
24cf5fac45
fix #2101
2024-01-07 00:38:10 -05:00
Shivaram Lingamneni
d238eaac67
bump version and changelog for 2.13.0-rc1
2024-01-07 00:30:39 -05:00
Shivaram Lingamneni
dfe2a21b17
add panic handler to async client/channel writes
...
See #2113 for motivation
2024-01-05 00:18:46 -05:00
Shivaram Lingamneni
580fc7096d
fix #2114
...
Channels with slashes (or other relaymsg separators) in their names
were being falsely detected as relaymsg identifiers.
2024-01-04 01:02:10 -05:00
Shivaram Lingamneni
4aa1aa371d
fix #2113
...
Persisting always-on clients was panicking if client X believed it was
a member of channel Y, but channel Y didn't have a record of client X.
2024-01-03 10:52:34 -05:00
Shivaram Lingamneni
ce162e9279
fix #2109 ( #2111 )
...
Remove numerics associated with the retired ACC spec
2023-12-21 01:10:50 -05:00
Shivaram Lingamneni
97d6f9eddb
Merge pull request #2110 from slingamn/msgid
...
fix #2108
2023-12-21 01:10:24 -05:00
Shivaram Lingamneni
8d80cb52e6
include a fixed test vector in password tests
2023-12-20 23:28:55 -05:00
Shivaram Lingamneni
e11bda643e
fix #2108
...
Send Message-ID even if DKIM is not enabled, for compatibility with Gmail:
* A workaround for Ergo 2.12.0 is to enable DKIM
* You need to enable either DKIM or SPF (preferably both) to send to Gmail anyway
* You also need forward-confirmed reverse DNS, which can be tricky for IPv6...
2023-12-20 22:18:48 -05:00
Shivaram Lingamneni
5671ee2a36
set up new development version
2023-10-11 11:20:45 -04:00
Shivaram Lingamneni
4d9e80fe5b
bump version and changelog for v2.12.0
2023-10-10 22:11:15 -04:00
Val Lorentz
ddb804b622
Fix typo in ACCOUNT_NAME_MUST_BE_NICK code
2023-09-24 14:16:49 +02:00
Shivaram Lingamneni
29b4be83bc
bump version for v2.12.0-rc1
2023-09-17 23:07:54 -04:00
Shivaram Lingamneni
2013beb7c8
fix #1997 ( #2088 )
...
* Fix #1997 (allow the use of an external file for the email blacklist)
* Change config key names for blacklist (compatibility break)
* Accept globs rather than regexes for blacklist by default
* Blacklist comparison is now case-insensitive
2023-09-12 01:06:55 -04:00
Shivaram Lingamneni
f07707dfbc
Merge pull request #2083 from slingamn/nonames.2
...
implement draft/no-implicit-names
2023-08-16 08:47:05 -07:00
Shivaram Lingamneni
f77d430d25
use maps.Clone from go1.21
2023-08-15 20:57:52 -04:00
Shivaram Lingamneni
28d9a7ff63
use slices.Contains from go1.21
2023-08-15 20:55:09 -04:00
Shivaram Lingamneni
b3abd0bf1d
use slices.Reverse from go1.21
2023-08-15 20:45:00 -04:00
Shivaram Lingamneni
3f74612e2b
implement draft/no-implicit-names
2023-08-15 20:29:57 -04:00
Shivaram Lingamneni
75bd63d0bc
add channel autojoin feature
...
See discussion on #2077
2023-07-04 21:44:18 -04:00
Shivaram Lingamneni
ad3ad97047
upgrade to irc-go v0.4.0
2023-06-14 02:46:14 -04:00
Shivaram Lingamneni
0f39fde647
remove insecure reattach check
...
See #2013 ; given that plaintext is deprecated now, it seems like there is no
added value from continuing to police this.
2023-06-05 04:22:40 -04:00
Shivaram Lingamneni
f100c1d0fa
fix incorrect chathistory batch types
...
This was introduced in 38a6d17ee5ce6e1096c3dfd6d11f6f35d9a71ca6
2023-06-02 06:56:45 -04:00
Shivaram Lingamneni
60af8ee491
clean up force-trailing logic
2023-06-02 02:58:09 -04:00
Shivaram Lingamneni
38a6d17ee5
clean up nested batch logic
2023-06-01 06:29:22 -04:00
Shivaram Lingamneni
d082ec7ab9
don't send multiline responses to CAP LS 301 ( #2068 )
...
* don't send multiline responses to CAP LS 301
This is more or less explicitly prohibited by the spec:
https://ircv3.net/specs/extensions/capability-negotiation.html#multiline-replies-to-cap-ls-and-cap-list
* switch to whitelist model to be future-proof
* bump irctest to include test
* add a unit test
2023-05-31 23:22:16 -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 2182b1da69ceaafad30859e45be0645d6c915b2c.
---------
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
e84793d7ee
fix #2063
...
In #2058 we introduced two bugs:
* A nil dereference when an outside user attempts to speak
* Ordinary copy of a modes.ModeSet (which should only be accessed via atomics)
This fixes both issues.
2023-05-22 12:29:55 -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
db0910d82d
fix linter error
...
See #2052
2023-03-04 23:29:16 -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
7c53b9430a
support implicit TLS for mail submission agents
...
Fixes #2048
2023-02-17 00:07:21 -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
Shivaram Lingamneni
fc89d72045
publish MSGREFTYPES 005 token
...
https://github.com/ircv3/ircv3-specifications/pull/510
2023-02-02 14:28:37 -05:00
0653f90b4f
update response when killing alwayson targets
2023-01-31 13:27:02 +05:30
Shivaram Lingamneni
abc71684f3
always validate UTF8 from websockets
2023-01-22 14:45:16 -05:00
Shivaram Lingamneni
9439e9b9e1
allow resizing the ws read buffer
2023-01-21 19:10:25 -05:00
Shivaram Lingamneni
5eaf7b37e5
reduce websocket read allocations
...
See #2037
2023-01-21 19:10:17 -05:00
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
b2087977d0
Merge pull request #2032 from slingamn/scram.1
...
recommended default: advertise SCRAM
2023-01-15 04:16:28 -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
46d32520c7
recommended default: advertise SCRAM
...
Fixes #1782
2023-01-11 09:21:47 -05:00
Shivaram Lingamneni
f72a6fa011
round wait times to the nearest millisecond
2023-01-08 06:36:04 -05:00
Shivaram Lingamneni
3ceff6a8b1
make ReloadableListener lock-free
...
Also stop attaching the *tls.Config to the wrapped connection,
since this forces it to be retained beyond its natural lifetime.
2023-01-05 20:18:14 -05:00