Shivaram Lingamneni
853bb12c29
fix #1449
...
INVITE playback (#1409 ) was buggy, due to the double use of (Item).Params[0]
for the channel name and the recipient nick. Stuff the channel name in
(Item).Message.Message instead.
2020-12-14 08:24:38 -05:00
Shivaram Lingamneni
9033d97c6f
Merge pull request #1450 from slingamn/tor_defcon
...
DEFCON 4 and lower should require SASL from Tor users
2020-12-13 20:06:30 -05:00
Shivaram Lingamneni
47f7b9a76e
make CAP LS/LIST respect the MaxLineLen constant
2020-12-13 15:44:10 -05:00
Shivaram Lingamneni
534939c342
DEFCON 4 and lower should require SASL from Tor users
2020-12-11 05:04:56 -05:00
Shivaram Lingamneni
96380adf27
Merge pull request #1446 from slingamn/reservation_docs
...
manual updates for nick reservation and email verification
2020-12-08 23:10:01 -08:00
Shivaram Lingamneni
84e3b5d77b
stop autocreating d-lines for throttle violations
...
This didn't work correctly for IPv6 or custom nets.
/UNDLINE IP can temporarily be used to reset the throttle.
2020-12-08 22:01:23 -05:00
Shivaram Lingamneni
45471138d2
update nick reservation docs
2020-12-08 02:11:53 -05:00
Shivaram Lingamneni
44cc4c2092
introduce "flat ip" representations
2020-12-07 21:21:10 -05:00
Shivaram Lingamneni
c8c1ddfb41
fix #1439
...
Validate imported databases for confusable nicks
2020-12-07 13:35:58 -05:00
Shivaram Lingamneni
48d5bd9144
fix #1436
2020-12-07 03:51:52 -05:00
Shivaram Lingamneni
e994e0451a
fix incorrect vhost serialization
2020-12-07 02:29:18 -05:00
Shivaram Lingamneni
da2d4ca130
make overridden services hostname appear in chanserv
2020-12-07 02:29:18 -05:00
Shivaram Lingamneni
66d90bef5e
change FAIL codes from NOT_PRIVED to PRIVS_NEEDED
2020-12-06 21:01:44 -05:00
Shivaram Lingamneni
7bdbb01238
fix #1428
...
Tor listeners should never see an STS cap.
Add an undocumented 'hide-sts' key for listeners that hides the STS cap.
This can be used if the listener is secured at layer 3 or 4 (VPNs,
E2E mixnets). It will be necessary to add the relevant IPs to `secure-nets`.
2020-12-05 23:06:23 -05:00
Shivaram Lingamneni
f9b842c88b
fix #1421
...
Allow custom limit definitions that encompass multiple subnets
2020-12-04 14:24:19 -05:00
Shivaram Lingamneni
7e56f62aed
Merge pull request #1419 from slingamn/alwayson_channelmodes.1
...
fix #1345
2020-12-04 02:28:38 -08:00
Shivaram Lingamneni
281821ed0e
validate amode recipients
2020-12-04 04:50:40 -05:00
Shivaram Lingamneni
32f3c69a08
support certfp import
2020-12-04 04:37:24 -05:00
Shivaram Lingamneni
c0bc485840
schema change for #1345
...
Convert the flat list of channels for always-on clients
to a map from channel names to channel-user modes.
2020-12-02 15:32:17 -05:00
Shivaram Lingamneni
51f279289d
fix #1345
...
Store the channel-user modes of always-on clients along with their
channel memberships, restore them on server startup. This will coexist
alongside /CS AMODE, which autoapplies modes to clients on join regardless
of their always-on status.
2020-12-02 15:31:49 -05:00
Shivaram Lingamneni
01291ceadd
fix #1417
...
Allow `JOIN 0` with a confirmation code
2020-12-01 14:23:47 -05:00
Shivaram Lingamneni
1b91360885
fix incorrect TAGMSG relaying
2020-11-30 17:08:53 -05:00
Shivaram Lingamneni
db100f1f91
Merge pull request #1231 from slingamn/buffer.2
...
more memory-efficient implementation of line reading
2020-11-30 02:34:25 -08:00
Shivaram Lingamneni
a34918e729
add a fuzz test for IRCStreamConn changes
2020-11-30 02:08:47 -05:00
Shivaram Lingamneni
5edfcced0a
Merge pull request #1415 from slingamn/issue1409_invite_history.1
...
fix #1409
2020-11-29 19:47:22 -08:00
Shivaram Lingamneni
b4cd62bece
Merge pull request #1414 from slingamn/issue1396_account_snomask
...
fix #1396
2020-11-29 19:46:12 -08:00
Shivaram Lingamneni
b28004bbd9
Merge pull request #1410 from slingamn/welcome
...
add network name to RPL_WELCOME
2020-11-29 19:45:36 -08:00
Shivaram Lingamneni
32bbde49a8
fix #1409
...
Record INVITE in DM history for the benefit of offline always-on clients
2020-11-29 22:12:06 -05:00
Shivaram Lingamneni
c62956f708
fix #1396
...
* Defer account login snomask until after connection registration is complete
* Don't send account-notify for pre-registration clients
2020-11-29 20:20:26 -05:00
Shivaram Lingamneni
e18eb1db99
fix #1411
...
Clients without event-playback should receive client-only tags in
replayed PRIVMSG / NOTICE.
2020-11-29 19:57:47 -05:00
Shivaram Lingamneni
42d5e767dd
add network name to RPL_WELCOME
2020-11-29 16:34:52 -05:00
Shivaram Lingamneni
0fcaf778e0
Merge pull request #1400 from slingamn/issue1387_messagecaching.4
...
fix #1387
2020-11-29 02:32:59 -08:00
Shivaram Lingamneni
3ee6fd1f6c
allow overriding services hostname
...
Fixes #1407
2020-11-29 00:02:26 -05:00
Shivaram Lingamneni
9214d978d0
refactor services prefixes and notice handlers
2020-11-29 00:02:26 -05:00
Shivaram Lingamneni
ec15d367ba
fix #1387
...
Instead of building a new serialized message for each recipient,
try to cache them.
2020-11-27 00:13:47 -05:00
Shivaram Lingamneni
a0d7d8d028
mention UN[DK]LINE in [DK]LINE help
2020-11-26 12:54:50 -05:00
Shivaram Lingamneni
8d44fa3c3f
fix duplicated JOIN line sent to resuming clients
...
Resuming clients without the resume capability would receive
two JOIN lines per channel.
2020-11-26 00:27:21 -05:00
Shivaram Lingamneni
c57828eb62
documentation updates for proxy v2
2020-11-19 17:01:56 -05:00
Shivaram Lingamneni
3062f97c2b
fix #1389
...
Support PROXY protocol v2, including ahead of plaintext connections
2020-11-19 12:31:58 -05:00
Shivaram Lingamneni
a6a8548466
fix SAJOIN not sending a MODE line where applicable
2020-11-12 11:57:30 -05:00
Shivaram Lingamneni
a8ffb11deb
use server name as source for chanserv mode changes, for consistency
2020-11-12 11:50:28 -05:00
Shivaram Lingamneni
6a6f104899
fix casefolding issue in NS SUSPEND DEL
...
NS SUSPEND DEL incorrectly required the use of the casefolded account name.
2020-11-11 11:09:09 -05:00
Shivaram Lingamneni
4f571c2cf3
implement NS RENAME
...
Fixes #1380
2020-11-10 19:59:12 -05:00
Shivaram Lingamneni
8ad6a53433
fix duplicated nicks in kline message
2020-11-10 11:17:17 -05:00
Shivaram Lingamneni
60ede87ab0
set up new development version
2020-11-08 20:17:22 -05:00
Shivaram Lingamneni
58b5d3c72d
fix channel mode help text
2020-11-08 17:33:45 -05:00
Shivaram Lingamneni
eeb7c6cb91
bump version to 2.4.0
2020-11-07 21:34:21 -05:00
Shivaram Lingamneni
9374a75c7a
implement FAIL CHATHISTORY INVALID_TARGET
2020-11-04 01:54:59 -05:00
Shivaram Lingamneni
dac43e6e76
fix #1370
2020-11-01 18:09:04 -05:00
Shivaram Lingamneni
40118d1533
bump version to 2.4.0-rc1
2020-10-31 22:17:58 -04:00
Shivaram Lingamneni
6513136ea3
fix #1366
...
Include an 'r' flag in RPL_WHOREPLY for registered nicks
2020-10-29 14:25:28 -04:00
Shivaram Lingamneni
5094b9da02
fix strings for NS SUSPEND
2020-10-28 20:32:55 -04:00
Shivaram Lingamneni
2bb2cab6c2
Merge pull request #1361 from slingamn/suspend.5
...
fix #1274
2020-10-28 08:12:46 -07:00
Shivaram Lingamneni
5418e5e794
fix #769
...
Add 379 RPL_WHOISMODES
2020-10-27 18:54:45 -04:00
Shivaram Lingamneni
4296ff02a4
schema change for #1274
2020-10-27 18:30:03 -04:00
Shivaram Lingamneni
1f6afa31d6
fix #1274
...
Enhancements to NS SUSPEND, including stored metadata and the ability
to list suspensions
2020-10-27 18:30:03 -04:00
Shivaram Lingamneni
dc456bd6a4
refactor schema versions to be ints, not strings
2020-10-27 12:26:44 -04:00
Shivaram Lingamneni
70b8bf75c5
Merge pull request #1360 from slingamn/issue861_fakelag
...
fix #861
2020-10-26 20:12:57 -07:00
Shivaram Lingamneni
a6e7e1f321
Merge pull request #1359 from slingamn/deop.1
...
fix #361
2020-10-26 20:12:18 -07:00
Shivaram Lingamneni
610fc5068d
refactor DEOP
...
DEOP is now pure syntactic sugar for /mode #channel -o nick,
the change is attributed to the originating user and not to ChanServ.
2020-10-26 23:08:05 -04:00
Shivaram Lingamneni
2f4431a5fb
fix #861
...
Allow messages-per-window to be 0
2020-10-26 21:06:03 -04:00
Shivaram Lingamneni
b57820150e
no-op fix to SETNAME workaround
2020-10-26 18:06:06 -04:00
Shivaram Lingamneni
9c4b086113
Merge pull request #1355 from slingamn/invite
...
security enhancements for INVITE
2020-10-26 13:30:41 -07:00
Shivaram Lingamneni
c61b09e314
Merge pull request #1358 from slingamn/setname
...
enhancements to SETNAME
2020-10-26 13:30:29 -07:00
Shivaram Lingamneni
5dcb2bb60c
enhancements to SETNAME
...
Address SETNAME UX problems reported by @KoraggKnightWolf in #oragono:
1. No feedback by default on success or failure
2. Multi-word realnames are not correctly interpreted by some clients
2020-10-26 15:31:51 -04:00
Shivaram Lingamneni
6a5ba82f29
Merge pull request #1356 from slingamn/kline
...
validate normalized masks as IRC params
2020-10-26 11:58:45 -07:00
Barry
f010914965
Added ChanServ DEOP command
2020-10-26 18:18:54 +02:00
Shivaram Lingamneni
af2b433195
validate normalized masks as IRC params
2020-10-25 23:32:24 -04:00
Shivaram Lingamneni
4b1e6b04c4
add UNINVITE command ( #1171 )
2020-10-25 22:16:19 -04:00
Shivaram Lingamneni
42d246b557
improve security properties of INVITE
...
See #1171 .
2020-10-25 22:09:17 -04:00
Shivaram Lingamneni
203fc580f4
fix #1049
2020-10-25 13:58:57 -04:00
Shivaram Lingamneni
cf5a426f90
fix #1346
2020-10-22 12:19:19 -04:00
Shivaram Lingamneni
bd40b46639
fix #307
2020-10-21 11:08:55 -04:00
Shivaram Lingamneni
a30e369225
add +u and +U to CHANMODES token
2020-10-20 21:24:47 -04:00
Shivaram Lingamneni
f019f62167
Merge pull request #1340 from slingamn/coerce_ident
...
replace suppress-ident with coerce-ident; make coerce-ident a recommended default
2020-10-20 15:31:13 -07:00
Shivaram Lingamneni
76e3d67b66
replace suppress-ident with coerce-ident
2020-10-20 13:48:19 -04:00
Shivaram Lingamneni
5a9e79f06c
fix #1178
2020-10-20 13:37:38 -04:00
Shivaram Lingamneni
4737578748
Merge pull request #1339 from slingamn/issue1337
...
fix #1337
2020-10-19 08:22:00 -07:00
Shivaram Lingamneni
a37a91694c
fix #1337
2020-10-19 10:52:38 -04:00
Shivaram Lingamneni
347cc30ed4
fix a potential conflict with delayed verification of confusable names
...
0. Enable email verification
1. Register `dog`
2. Register `d0g`
3. Verify `dog`
4. Verify `d0g`: verification succeeds but the nick cannot be used
2020-10-16 17:21:09 -04:00
Shivaram Lingamneni
cf46377863
fix #1332
2020-10-16 17:21:09 -04:00
Shivaram Lingamneni
c639aac241
log the unfolded account name during registration
2020-10-16 17:21:09 -04:00
Shivaram Lingamneni
af8ed62de8
schema change for #1330
2020-10-16 12:08:23 -04:00
Shivaram Lingamneni
ea68b9de0a
fix #1330
2020-10-16 12:03:38 -04:00
Shivaram Lingamneni
898f8aad07
add a schema change
2020-10-16 09:11:47 -04:00
Shivaram Lingamneni
4b2a094921
fix #1327
2020-10-16 00:58:12 -04:00
Shivaram Lingamneni
328f6013f3
fix #1326
2020-10-15 13:03:44 -04:00
Shivaram Lingamneni
1d74185b7d
fix #1322
2020-10-13 00:38:23 -04:00
Shivaram Lingamneni
82be9a8423
support migrating anope databases
2020-10-12 15:06:17 -04:00
Shivaram Lingamneni
4336f56204
Merge pull request #1317 from slingamn/hidden_userhost
...
USERHOST needs to respect hidden operators as well
2020-10-09 11:34:35 -07:00
Shivaram Lingamneni
4ee97ddb43
USERHOST needs to respect hidden operators as well
2020-10-09 12:29:09 -04:00
Shivaram Lingamneni
8cd7085d0b
separate rawHostname and cloakedHostname for always-on clients
...
This affects RPL_WHOISACTUALLY and possibly others.
2020-10-09 11:11:06 -04:00
Shivaram Lingamneni
78b2f61707
fix #1194
2020-10-09 08:03:26 -04:00
Shivaram Lingamneni
c470f63daf
fix #1312
2020-10-08 16:33:27 -04:00
Shivaram Lingamneni
7fd5bc8d81
review fix
2020-10-07 09:20:26 -04:00
Shivaram Lingamneni
754fb79cdd
review fixes
2020-10-07 08:54:46 -04:00
Shivaram Lingamneni
9ed789f67c
fix #1075
2020-10-06 18:04:29 -04:00
Shivaram Lingamneni
509d3f1fdd
Merge pull request #1301 from oragono/atheme_migration
...
first draft of atheme migration code
2020-10-06 15:03:08 -07:00
Shivaram Lingamneni
1ec029a53b
review fixes
...
1. Avoid undefined behavior of time.Time{}.UnixNano()
2. Times should be compared with Equal()
2020-10-06 17:56:13 -04:00
Shivaram Lingamneni
a19324b948
fix #1293
2020-10-05 07:35:18 -04:00
Shivaram Lingamneni
32fc9f226f
fix #1303
2020-10-05 06:28:19 -04:00
Shivaram Lingamneni
7a6413ea2c
first draft of atheme migration code
2020-10-02 16:48:37 -04:00
Shivaram Lingamneni
8c99dcb2c7
fix #484
2020-10-02 08:13:52 -04:00
Shivaram Lingamneni
c279b2d14c
DRY mode apply code
...
ParseUserModeChanges and ParseChannelModeChanges already validate
that the modes are modifiable, so there's no need to repeat it here.
2020-10-01 19:52:50 -04:00
Shivaram Lingamneni
b426ba628a
actually enable the +T no-ctcp umode
2020-10-01 19:21:42 -04:00
Shivaram Lingamneni
127a03ccf3
fix #1295
2020-10-01 09:42:08 -04:00
Shivaram Lingamneni
475d7ba418
fix non-linux builds
2020-09-29 15:22:12 -04:00
Shivaram Lingamneni
f12384c5a6
Output unix socket credentials where applicable
...
thanks @ajaspers!
2020-09-24 10:59:30 -04:00
Shivaram Lingamneni
a6d793a2d5
pointless optimization
2020-09-24 08:35:03 -04:00
Shivaram Lingamneni
1bbf6ab936
Merge pull request #1286 from slingamn/issue1284.1
...
fix #1284
2020-09-24 05:00:14 -07:00
Shivaram Lingamneni
d9f1c8e1c4
require local_ban capab to see uncloaked IPs
2020-09-24 07:25:04 -04:00
Shivaram Lingamneni
8b01d19336
Merge pull request #1280 from slingamn/issue1277_sanick
...
fix #1277
2020-09-24 04:10:44 -07:00
Shivaram Lingamneni
bcdf61bd7a
fix #1284
2020-09-24 02:44:12 -04:00
Shivaram Lingamneni
7d5a071a34
fix #1277
2020-09-23 02:30:34 -04:00
Shivaram Lingamneni
1a9f501383
fix #414
2020-09-23 02:25:29 -04:00
Shivaram Lingamneni
b478a13671
fix NICK responses for SANICK
2020-09-21 20:30:42 -04:00
Alex Jaspersen
504659abb5
Add +M (only registered/voice can speak) chanmode.
...
Add chanmode preventing speech to error message.
Fixes #1182 .
2020-09-21 16:05:00 -07:00
Alex Jaspersen
ca2132ff09
Add NickServ "CLIENTS LIST" and "CLIENTS LOGOUT".
...
CLIENTS LIST shows information about clients attached to a nick.
CLIENTS LOGOUT allows individual (or all) sessions to be logged out.
SESSIONS is now an alias for CLIENTS LIST.
Fixes #1072 .
2020-09-19 10:19:41 -07:00
Shivaram Lingamneni
498d76b131
fix #1240
2020-09-16 12:03:06 -04:00
Shivaram Lingamneni
6a0d11d449
make roleplay.enabled default to false when unset
...
See #1240 .
2020-09-16 11:32:52 -04:00
Shivaram Lingamneni
0073b98505
fix (*http.Server).Serve() exiting on ErrBadProxyLine
...
anything other than a (net.Error) with Temporary() == true
is treated as a fatal error that causes the http server to exit
2020-09-16 06:12:27 -04:00
Shivaram Lingamneni
f3cdf8442a
pass the require-sasl message through from the script
2020-09-14 08:16:03 -04:00
Shivaram Lingamneni
1a98a37a75
scripting API for IP bans
...
See discussion on #68 .
2020-09-14 04:28:12 -04:00
Shivaram Lingamneni
32bb10f6c6
make channel founder unkickable
2020-09-09 23:15:00 -04:00
Shivaram Lingamneni
20aaa1ab06
fix #1259
2020-09-09 11:46:05 -04:00
Shivaram Lingamneni
af056f26a9
fixes and refactoring
2020-09-09 05:35:04 -04:00
Shivaram Lingamneni
8102d1ddb6
Merge remote-tracking branch 'origin/master' into master+relaymsg
2020-09-09 03:55:41 -04:00
Shivaram Lingamneni
307adba8bd
fix #1213
2020-09-07 06:00:53 -04:00
Shivaram Lingamneni
60db9536f4
Merge pull request #1241 from slingamn/restricted_stringset
...
use utils.StringSet in more places
2020-09-05 22:31:17 -07:00
Shivaram Lingamneni
bfb3fd702a
Merge pull request #1249 from jesopo/pong-params
...
PONG param 0 should be server name
2020-09-05 22:30:50 -07:00
Shivaram Lingamneni
f589a673a7
set up new development version
2020-09-06 01:21:10 -04:00
Shivaram Lingamneni
e43db479ca
bump version to 2.3.0
2020-09-06 01:02:05 -04:00
Shivaram Lingamneni
ed8de2a77a
remove dead code
2020-09-03 18:37:18 -04:00
Shivaram Lingamneni
71cdc43d9a
fix #1254
2020-09-01 02:41:15 -04:00
Shivaram Lingamneni
f58e66152d
bump version to 2.3.0-rc2
2020-08-30 02:29:21 -04:00
Shivaram Lingamneni
01726f8935
fix #1252
2020-08-29 23:40:49 -04:00
Shivaram Lingamneni
3bcf67b956
fix #1251
2020-08-29 21:42:27 -04:00
jesopo
574b07513c
PONG param 0 should be server name
...
fix #1248
2020-08-26 09:18:53 +00:00
Shivaram Lingamneni
20fcbe5147
remove stray references to timeout enforcement
...
These should have been removed in #1027 .
2020-08-25 14:11:13 -04:00
Shivaram Lingamneni
ddb8400124
include go version even without the git hash
2020-08-23 21:59:19 -04:00
Shivaram Lingamneni
6628a3d1c6
fix #1244
2020-08-23 18:11:10 -04:00
Shivaram Lingamneni
4c0144c708
bump version to 2.3.0-rc1
2020-08-23 00:20:20 -04:00
Shivaram Lingamneni
1dd0c432fd
use utils.StringSet in more places
2020-08-22 22:43:21 -04:00
Shivaram Lingamneni
b1c3a1467a
clean up handling of no-op nick changes
2020-08-22 22:26:50 -04:00
Shivaram Lingamneni
e706124852
correct trailing space on +R usermode documentation
2020-08-13 13:17:31 -04:00
Shivaram Lingamneni
682f8f66c5
add compiler version to INFO output
2020-08-10 18:14:22 -04:00
Shivaram Lingamneni
c50c267d3c
better debug logline for failed message building
2020-08-10 17:33:24 -04:00
Shivaram Lingamneni
b54d0f8f34
add timer coalescing for the common case
2020-08-08 23:07:53 -04:00
Shivaram Lingamneni
a3e5c9e98c
fix #1229
2020-08-07 18:11:39 -04:00
Shivaram Lingamneni
c78253fd93
more memory-efficient implementation of line reading
2020-08-07 01:10:46 -04:00
Shivaram Lingamneni
1c4f9daae7
remove some dead code
2020-08-07 00:16:04 -04:00
Shivaram Lingamneni
55b21fa86c
Merge pull request #1227 from slingamn/issue1225.2
...
fix #1225
2020-08-06 01:19:39 -07:00
Shivaram Lingamneni
88b09e5919
Merge pull request #1226 from slingamn/websocket_dos
...
mitigate a potential DoS against websocket listeners
2020-08-06 01:08:01 -07:00
Shivaram Lingamneni
06882a9b89
fix #1225
2020-08-06 03:28:10 -04:00
Shivaram Lingamneni
7b28fc73e6
Merge pull request #1223 from hhirtz/rename
...
Update draft/rename impl
2020-08-05 14:02:15 -07:00
Hubert Hirtz
f6d5fe812f
Update draft/rename implementation
...
Link to the new draft PR:
<https://github.com/ircv3/ircv3-specifications/pull/420 >
Changes in the spec:
- Use standard replies instead of numerics:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R44 >
- Allow RENAME to a different case:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R42 >
This commit makes oragono send the PART-JOIN fallback even on case-only
changes. This is so that clients don't have to worry about oragono's
UTF8 casefolding. See the following comments for further info:
<https://github.com/ircv3/ircv3-specifications/pull/420#issuecomment-668770837 >
Misc fixes:
- Remove unused variable,
- Add missing calls to utils.SafeErrorParam,
- Don't fill replies with the user-provided "oldName", for the same
reason as sending the PART-JOIN fallback.
2020-08-05 22:46:30 +02:00
Shivaram Lingamneni
aad39024b9
mitigate a potential DoS against websocket listeners
...
Websocket listeners would process an arbitrary number of invalid
(non-text or blank) messages without throttling. This imposes fakelag
on such messages by treating them as blank lines.
2020-08-05 15:00:39 -04:00
Shivaram Lingamneni
df8be72c6f
move StringSet to utils package
2020-08-04 21:54:03 -04:00
Shivaram Lingamneni
ddac7d94a8
use ChannelSet
2020-08-04 21:46:07 -04:00
Shivaram Lingamneni
15c54e80de
clean up some error handling
2020-08-03 23:57:42 -04:00
Shivaram Lingamneni
9000383f88
Move config errors to call sites
...
Since allocating them is rare.
2020-08-03 12:55:52 -04:00
Shivaram Lingamneni
6a2fba9812
make it easier to patch out the maximum line length
2020-08-03 12:51:04 -04:00
Shivaram Lingamneni
470756cd3e
fix an edge case with /NS SASET user always-on true
...
If force-nick-equals-account is disabled, then this could cause
a client with a non-reserved (or grouped) nick to become always-on.
(This can't happen with `/NS SET always-on true` because we check in
advance.)
2020-07-27 06:08:06 -04:00
Shivaram Lingamneni
027886046c
clean up always-on state machine
2020-07-27 00:21:16 -04:00
Shivaram Lingamneni
dc90b3c910
Merge pull request #1211 from slingamn/issue1204_echomessage.3
...
fix #1204
2020-07-26 03:11:27 -07:00
Shivaram Lingamneni
4bb4d02729
Merge pull request #1200 from slingamn/issue1190_remove_offerlist.1
...
fix #1190
2020-07-26 03:11:12 -07:00
Shivaram Lingamneni
6fbbcbc44f
set up v2.3.0-unreleased
2020-07-26 06:00:24 -04:00
Shivaram Lingamneni
58be8463c9
bump version to 2.2.0
2020-07-26 05:47:18 -04:00
Shivaram Lingamneni
d679d21ac0
fix #1216
2020-07-26 04:11:39 -04:00
Shivaram Lingamneni
bcf581f63d
fix #1214
2020-07-26 04:03:07 -04:00
Shivaram Lingamneni
6d18a1a78c
tweak addEchoMessage signature
2020-07-24 02:55:46 -04:00
Shivaram Lingamneni
28d4971f36
fix #1204
2020-07-24 02:46:02 -04:00
Shivaram Lingamneni
7a16f166c5
Merge pull request #1207 from slingamn/awaystring
...
tweaks to auto-away
2020-07-21 23:08:50 -07:00
Shivaram Lingamneni
b5f0f9a3ce
Merge pull request #1208 from slingamn/setpassword
...
alias for NICKSERV SET PASSWORD
2020-07-21 23:08:41 -07:00
Shivaram Lingamneni
af009a5bc1
fix 2-parameter case for *playback
2020-07-21 16:33:17 -04:00
Shivaram Lingamneni
e6e55bbf29
remove 'history' batch type
...
This was from ircv3-specifications #362 , which is now obsolete.
2020-07-21 15:26:03 -04:00
Shivaram Lingamneni
f193298dcd
alias for NICKSERV SET PASSWORD
2020-07-21 01:05:13 -04:00
Shivaram Lingamneni
eaae3165f2
don't trigger auto-away if the client is already away
2020-07-20 17:05:29 -04:00
Shivaram Lingamneni
6916dbeae0
use consistent phrase for auto-away message
2020-07-20 16:58:41 -04:00
Shivaram Lingamneni
562b85c1c0
simplify some logic
2020-07-20 14:10:43 -04:00
Shivaram Lingamneni
e827bc0f9c
fix #1205
2020-07-20 04:28:17 -04:00
Shivaram Lingamneni
a4343bf77d
bump version to 2.2.0-rc1
2020-07-19 02:25:25 -04:00
Shivaram Lingamneni
04844e0a00
Merge pull request #1196 from slingamn/changelog.1
...
add changelog and documentation updates
2020-07-18 22:59:45 -07:00
Shivaram Lingamneni
ffd00e1aff
minor optimization to Client.Friends
2020-07-17 04:53:30 -04:00
Shivaram Lingamneni
32c58c1e1f
fix #1190
2020-07-17 04:19:33 -04:00
Shivaram Lingamneni
93530ae397
fix #1198
2020-07-17 02:54:43 -04:00
Shivaram Lingamneni
9e3ad5aff1
fix #1060
2020-07-15 21:57:59 -04:00
Shivaram Lingamneni
a99c893f9b
Merge branch 'realname_again'
2020-07-12 16:49:30 -04:00
Shivaram Lingamneni
b3becbf08e
clean up no-op
2020-07-12 16:47:17 -04:00
Shivaram Lingamneni
77184c1625
restore transition mechanism
2020-07-12 16:47:11 -04:00
Shivaram Lingamneni
ad32a01c12
Merge pull request #1193 from slingamn/whox.2
...
refactor WhoFields to use value receivers
2020-07-12 13:41:49 -07:00
Shivaram Lingamneni
a6d41109d0
restore multiprefix support in RPL_WHOREPLY
2020-07-12 16:40:11 -04:00
Conrad Lukawski
6f8711da3b
Persist realname for always-on clients
2020-07-12 14:46:36 -04:00
Shivaram Lingamneni
358c85e697
Merge pull request #1191 from slingamn/moderation.3
...
enhancements to moderation (#1134 , #1135 )
2020-07-12 11:03:34 -07:00
Shivaram Lingamneni
0a6c1f7cc6
Merge pull request #1189 from slingamn/tagmsg_storage.1
...
make TAGMSG storage configurable
2020-07-12 10:57:00 -07:00
Shivaram Lingamneni
97417f4c32
refactor WhoFields to use value receivers
2020-07-12 13:45:29 -04:00
Shivaram Lingamneni
bdfee9cb39
Merge pull request #1184 from jesopo/whox
...
implement WHOX
2020-07-11 19:36:04 -07:00
jesopo
518b21e5aa
implement WHOX
2020-07-11 16:45:02 +01:00
Shivaram Lingamneni
a7ca6601c7
enhancements to moderation ( #1134 , #1135 )
2020-07-10 17:09:02 -04:00
Shivaram Lingamneni
57f2857e83
Merge pull request #1185 from slingamn/wrongsource
...
fix incorrect source of some nickserv messages
2020-07-09 19:44:30 -07:00
Shivaram Lingamneni
bca3dd0b41
make TAGMSG storage configurable
2020-07-09 20:17:50 -04:00
Shivaram Lingamneni
8dd25f66bc
review fix
2020-07-09 04:37:30 -04:00
Shivaram Lingamneni
6ea2eb367d
fix #328 (implement DEFCON)
2020-07-09 02:16:51 -04:00
Shivaram Lingamneni
7dd25c6ac7
fix incorrect source of some nickserv messages
2020-07-08 21:45:13 -04:00
Shivaram Lingamneni
39269a903b
fix #1179
2020-07-06 04:29:21 -04:00
Shivaram Lingamneni
ed0d31e28e
review feedback: fix incorrect sts-only RPL_ISUPPORT
2020-07-02 05:13:28 -04:00
Shivaram Lingamneni
dca3965fd3
ensure STS-only 005 is a trailing
2020-07-02 04:00:51 -04:00
Shivaram Lingamneni
f73b389ceb
fix #802
2020-07-02 03:38:20 -04:00
Shivaram Lingamneni
09b74aaa37
Merge pull request #1169 from slingamn/banrace.2
...
fix #1166 and #1168
2020-07-01 02:41:46 -07:00
Shivaram Lingamneni
0b0b1499b0
fix #1167
2020-07-01 04:20:27 -04:00
Shivaram Lingamneni
067e62ad5e
fix #1166 and #1168
2020-07-01 03:52:55 -04:00
Shivaram Lingamneni
79764cd549
Merge pull request #1163 from slingamn/list_issue1161
...
fix #1161
2020-06-30 17:43:48 -07:00
Shivaram Lingamneni
70f533ee07
fix #1155
2020-06-29 21:29:28 -04:00
Shivaram Lingamneni
a7107bfb67
Merge pull request #1156 from slingamn/lastseen
...
tweaks to lastSeen persistence
2020-06-29 18:04:55 -07:00
Shivaram Lingamneni
696980367d
fix #1161
2020-06-29 15:41:29 -04:00
Shivaram Lingamneni
fe2332f0cd
remove a stray documentation line
2020-06-29 02:12:24 -04:00
Shivaram Lingamneni
0f04acaa40
persist last seen on shutdown
2020-06-29 00:38:05 -04:00
Shivaram Lingamneni
a38d375bda
delete always-on modes on unregistration
2020-06-29 00:38:05 -04:00
Shivaram Lingamneni
e22adf47ca
increase write interval for lastSeen
2020-06-29 00:38:05 -04:00
Shivaram Lingamneni
9aa53aa3aa
update lastSeen on reattach
2020-06-29 00:38:05 -04:00
Shivaram Lingamneni
d7a62223a0
Merge pull request #1123 from clukawski/no-ctcp-user-mode
...
Add +T no-CTCP usermode
2020-06-27 21:13:24 -07:00
Conrad Lukawski
fca2900918
Add +T no-CTCP usermode
2020-06-28 00:04:42 -04:00
Shivaram Lingamneni
089a267070
delete some unused fields
2020-06-24 16:50:07 -04:00
Shivaram Lingamneni
ba68358c21
Merge pull request #1152 from slingamn/utf8.1
...
fix #1151
2020-06-23 01:02:59 -07:00
Shivaram Lingamneni
8cadc7340a
don't trim line endings in IRCStreamConn
...
Doesn't help if the line ends with regular \n only,
and the parser has to account for \r and \n anyway
2020-06-23 03:25:20 -04:00
Shivaram Lingamneni
28a0ec86b5
simplify Socket.Read
2020-06-23 03:25:20 -04:00
Shivaram Lingamneni
7ee7b1aab5
Merge pull request #1150 from slingamn/monitor.1
...
fix #1053 , #1083
2020-06-22 20:25:27 -07:00
Shivaram Lingamneni
0e7557c12d
Merge pull request #1149 from slingamn/issue1059_certfp
...
fix #1059
2020-06-22 20:23:15 -07:00
Shivaram Lingamneni
be138e4d71
make comment consistent with review fix
2020-06-22 22:34:09 -04:00
Shivaram Lingamneni
58d3d1276f
review fix
2020-06-22 18:53:54 -04:00
Shivaram Lingamneni
21e604860f
add an explanatory comment
2020-06-22 15:56:47 -04:00
Shivaram Lingamneni
a4f9e08a85
fix #1151
2020-06-22 15:50:28 -04:00
Shivaram Lingamneni
cb530050f1
fix #1053 , #1083
2020-06-21 23:51:31 -04:00
Shivaram Lingamneni
97789cde7e
fix #1059
2020-06-21 18:42:45 -04:00
Shivaram Lingamneni
01bd04a8ff
fix #1050
2020-06-21 18:32:57 -04:00
Shivaram Lingamneni
ca79da87b1
fix disabling of autoreplay-missed
2020-06-18 04:32:54 -04:00
Shivaram Lingamneni
17cd831319
fix #1144
2020-06-18 03:38:00 -04:00
Shivaram Lingamneni
91fa3b30b0
fix the corresponding bug for certfp authentication
2020-06-17 03:09:20 -04:00
Shivaram Lingamneni
9c26c45607
fix a bug in authscript fallback handling
2020-06-17 02:19:25 -04:00
Shivaram Lingamneni
114e359347
remove ldap
2020-06-17 02:15:05 -04:00
Daniel Oaks
fb55cc3390
Ignore some dodgy TL strings, fix another dodgy string
2020-06-16 20:33:10 +10:00
Shivaram Lingamneni
784078d693
fix bug introduced in #1138
2020-06-16 05:10:09 -04:00
Shivaram Lingamneni
90e697f454
read device ID from SASL as well
2020-06-16 04:58:29 -04:00
Shivaram Lingamneni
e61e0143bd
refactor/enhance jwt signing
2020-06-15 14:34:58 -04:00
Shivaram Lingamneni
bfeba1f2f3
remove client join time tracking
2020-06-15 14:34:58 -04:00
Daniel Oaks
6bee1f6d6a
Review fixes
2020-06-15 14:34:58 -04:00
Daniel Oaks
4164c643e6
Remember when client joins channels, expose in EXTJWT
2020-06-15 14:34:58 -04:00
Daniel Oaks
9b998a7582
Allow custom JWT service expiry times
2020-06-15 14:34:58 -04:00
Daniel Oaks
0bbb5d121d
Basic EXTJWT support
2020-06-15 14:34:58 -04:00
Shivaram Lingamneni
df1be01f54
simplify lastSeen handling
2020-06-14 13:52:29 -04:00
Shivaram Lingamneni
218bea5a3e
fix #843
2020-06-12 16:26:27 -04:00
Shivaram Lingamneni
d33a084bb6
fix #1125
2020-06-09 18:17:48 -04:00
Shivaram Lingamneni
00e2c2816b
use strings.Builder instead of bytes.Buffer where applicable
2020-06-08 23:38:10 -04:00
Daniel Oaks
48509ea852
Review fixes
2020-06-09 02:05:29 +10:00
Daniel Oaks
4535c82fd3
Review fix
2020-06-08 15:25:59 +10:00
Daniel Oaks
efd3152bfb
Add relayed messages to channel history
2020-06-08 15:22:41 +10:00
Daniel Oaks
4ecd7fdf43
Allow configuring relay
2020-06-08 15:17:45 +10:00
Daniel Oaks
4ee49f8450
Initial RELAYMSG implementation
2020-06-08 10:19:28 +10:00
Daniel Oaks
6426b3d6ed
Copy Insp's new BOT ISUPPORT token and WHO behaviour
2020-06-07 16:11:30 +10:00
Shivaram Lingamneni
8f778c57a3
test more string cases
2020-06-04 18:40:14 -04:00
Shivaram Lingamneni
cfec0721fe
Merge pull request #1111 from slingamn/shellauth.1
...
fix #1107
2020-06-04 07:46:23 -07:00
Shivaram Lingamneni
75e9476026
review fix
2020-06-04 02:07:39 -04:00
Shivaram Lingamneni
61738782c0
fix #1107
2020-06-04 01:21:56 -04:00
Shivaram Lingamneni
e70acf4c17
fix #1108
2020-06-02 19:05:51 -04:00
Shivaram Lingamneni
0e570ba8ad
fix #1078
2020-06-02 10:00:43 -04:00
Shivaram Lingamneni
c14a9448cc
print full git hash in RPL_INFO
2020-06-01 13:18:12 -04:00
Shivaram Lingamneni
32ee9440c8
fix #1027
2020-06-01 11:55:53 -04:00
Shivaram Lingamneni
44aebf44b7
Merge pull request #1070 from jesopo/isupport-equals
...
don't add trailing = to ISUPPORT tokens when value is empty string
2020-05-31 21:30:17 -07:00
Shivaram Lingamneni
d4e24bbb26
bump to next development version
2020-06-01 00:27:16 -04:00
Shivaram Lingamneni
8430fec333
Merge pull request #1056 from jesopo/services-ctcp
...
handle CTCP VERSION, PING and TIME for services pseudo-users
2020-05-31 21:26:32 -07:00
Shivaram Lingamneni
34b2c3dc99
bump version to 2.1.0
2020-05-31 23:56:25 -04:00
Shivaram Lingamneni
d7c8b96345
make a message less confusing
2020-05-31 14:01:46 -04:00
Shivaram Lingamneni
8c1bae3ea1
Merge pull request #1048 from slingamn/documentation_fixes
...
documentation fixes
2020-05-31 01:00:38 -07:00
Shivaram Lingamneni
805da6780d
Merge pull request #1094 from slingamn/targmax
...
fix #1090
2020-05-30 20:59:44 -07:00
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