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
Shivaram Lingamneni
e1e3062dad
Merge pull request #797 from slingamn/issue775_passlength
...
fix #775
2020-02-22 20:07:14 -08:00
Shivaram Lingamneni
010bb3e926
Merge pull request #796 from slingamn/issue715_upgradedb
...
fix #715
2020-02-22 20:07:03 -08:00
Shivaram Lingamneni
85a536977c
factor out confirmation codes into utils, change their format
2020-02-22 22:34:39 -05:00
Shivaram Lingamneni
93708c23eb
update draft/chathistory spec link in /help
2020-02-21 13:10:08 -05:00
Shivaram Lingamneni
490b3722bd
add a logline and a help description for CRASHSERVER
2020-02-21 13:07:22 -05:00
Shivaram Lingamneni
41813cc15a
fix #791
2020-02-21 12:41:04 -05:00
Shivaram Lingamneni
904fa9653c
clear reg date and settings during logout
2020-02-21 06:36:32 -05:00
Shivaram Lingamneni
438fffab99
fix #725
2020-02-21 06:10:35 -05:00
Shivaram Lingamneni
91bb7f5877
fix #775
2020-02-21 04:26:17 -05:00
Shivaram Lingamneni
829481ab40
fix #715
2020-02-21 04:24:18 -05:00
Shivaram Lingamneni
5fe4d0b133
fix #794
...
Remove support for `listen` config block
2020-02-21 04:12:00 -05:00
Shivaram Lingamneni
fd90893fa6
handle old bouncer name for multiclient config
2020-02-21 00:33:55 -05:00
Shivaram Lingamneni
f5ca35ed72
rename 'bouncer' to 'multiclient'
2020-02-21 00:33:55 -05:00
Shivaram Lingamneni
03378da81b
CHATHISTORY with no results SHOULD send an empty batch
2020-02-21 00:33:48 -05:00
Shivaram Lingamneni
98a7b45d96
add mysql timeouts
2020-02-21 00:33:48 -05:00
Shivaram Lingamneni
8123e3c08f
improve nick and channel length validation
2020-02-21 00:33:37 -05:00
Shivaram Lingamneni
108ef3f424
don't double-store messages users send to themselves
2020-02-21 00:33:37 -05:00
Shivaram Lingamneni
fab0630180
time.Unix still requires normalization to UTC
2020-02-21 00:33:37 -05:00
Shivaram Lingamneni
8031085c26
clean up nil checks relevant to always-on join
2020-02-21 00:33:37 -05:00
Shivaram Lingamneni
282e7a4d57
don't write to mysql while holding joinPartMutex
2020-02-21 00:33:37 -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
82732d5b5d
fix behavior of echo-message without message-tags
2020-02-20 01:51:19 -05:00
Shivaram Lingamneni
5892680f60
consolidate sending DMs to targets with sending copies to non-originating sessions
2020-02-20 01:51:19 -05:00
Shivaram Lingamneni
ef161c47ed
use custime.Duration for more config fields
2020-02-20 00:09:39 -05:00
Shivaram Lingamneni
7b3caed20f
fix/enhancement to custime
2020-02-19 02:45:50 -05:00
Shivaram Lingamneni
e59aa43225
fix StringToBool (thanks @wrmsr)
2020-02-19 00:54:42 -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
306ca986a8
minor fixes
2020-02-11 22:08:41 -05:00
Shivaram Lingamneni
0c2d8adeac
improve maintainability and license compliance
...
0. Maximum parity with upstream code
1. Added Apache-required modification notices
2. Added Apache license
2020-02-11 16:13:12 -05:00
Shivaram Lingamneni
c13597f807
additional LDAP support
2020-02-11 06:35:17 -05:00
Matt Ouille
5ba2527eb0
Fix compilation errors
2020-02-09 22:13:12 -05:00
Matt Ouille
d4afb027e5
Add LDAP support
2020-02-09 22:13:02 -05:00
Shivaram Lingamneni
b964a201c1
fix #776
2020-02-07 13:28:49 -05:00
Shivaram Lingamneni
a3f008e348
mitigate #772
2020-02-06 17:56:10 -05:00
Shivaram Lingamneni
88d7e98011
add vhost snomasks
2020-02-02 02:03:08 -05:00
Shivaram Lingamneni
5426c9fdc0
disallow TAKE and REQUEST while under a FORBID
2020-02-01 23:51:29 -05:00
Shivaram Lingamneni
e1f56aaee3
fix #764
2020-02-01 22:19:33 -05:00
Shivaram Lingamneni
52d85517cd
actually fix #760
2020-01-29 16:27:59 -05:00
Shivaram Lingamneni
fd46874ad3
fix #760
2020-01-29 15:45:50 -05:00
Shivaram Lingamneni
b329cf430e
Merge pull request #744 from slingamn/hostserv_offer.1
...
add support for offering vhosts
2020-01-28 19:36:17 -08:00
Shivaram Lingamneni
955cdbdfef
impose throttle checks on HS TAKE
2020-01-28 22:27:56 -05:00
Shivaram Lingamneni
dedf78d0e9
review fixes
2020-01-28 21:23:31 -05:00
Shivaram Lingamneni
7d3c0f7884
fix #757
2020-01-27 21:10:24 -05:00
Shivaram Lingamneni
166dc60729
fix #753
...
Also add +C no-ctcp mode, since it's not conflicted
2020-01-26 21:07:20 -05:00
Shivaram Lingamneni
1fc9a04503
fix #754
2020-01-25 21:06:55 -05:00
Shivaram Lingamneni
6e2b2a44b8
set the time of a multiline message at BATCH -
2020-01-20 00:37:13 -05:00
Shivaram Lingamneni
5d662742b9
remove oragono.io/maxline-2 and fmsgid
2020-01-18 23:47:05 -05:00
Shivaram Lingamneni
0cebdba82c
Merge pull request #750 from slingamn/isupport_fix
...
fix incorrect values of UTF8MAPPING for non-PRECIS casefoldings
2020-01-14 13:11:53 -05:00
Shivaram Lingamneni
d807f1252f
move generateISupport to config.go
2020-01-14 01:21:47 -05:00
Shivaram Lingamneni
3ff586e821
don't read globalCasemappingSetting in generateISupport
...
The isupport is always a pure function of the Config object,
not of Server or any globals.
2020-01-14 01:19:48 -05:00
Shivaram Lingamneni
90b428b416
fix #745
2020-01-12 11:24:11 -05:00
Shivaram Lingamneni
2db14c91b9
review fixes
2020-01-11 22:52:30 -05:00
Shivaram Lingamneni
05cb80507f
fix #741
2020-01-11 22:43:40 -05:00
Shivaram Lingamneni
11ca86028c
fix #741
2020-01-09 13:49:36 -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
2110f3dad7
fix #705
2020-01-08 02:20:37 -05:00
Shivaram Lingamneni
eb630b7657
Revert "never set the certfp lookup key before verification"
...
This reverts commit a120cc2443
.
2020-01-06 15:00:26 -05:00
Shivaram Lingamneni
a120cc2443
never set the certfp lookup key before verification
2020-01-06 12:53:21 -05:00
Shivaram Lingamneni
1b35c6887f
fix #733
2020-01-06 12:21:52 -05:00
Shivaram Lingamneni
1ae38091a3
Merge pull request #728 from slingamn/issue727_group_ghost.1
...
fix #727
2020-01-05 03:26:26 -05:00
Shivaram Lingamneni
d67d77bee7
fix #731
2020-01-03 09:46:55 -05:00
Shivaram Lingamneni
bc0712b19b
fix #727
2019-12-31 21:19:28 -05:00
Shivaram Lingamneni
bd822853bc
fix some translation warnings
2019-12-30 14:47:22 -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
f6757f814e
Merge pull request #707 from slingamn/multiline.4
...
implement draft/multiline
2019-12-26 23:18:54 -05:00
Shivaram Lingamneni
47ac8e984f
remove unnecessary helper
2019-12-26 22:54:00 -05:00
Shivaram Lingamneni
68e3b74b79
Merge pull request #717 from slingamn/issue716
...
fix #716
2019-12-25 21:11:53 -05:00
Shivaram Lingamneni
8c1db7a2f5
better UX for cancelling channel transfers
2019-12-25 15:59:38 -05:00
Shivaram Lingamneni
33c8b2177e
fix a bug
...
In the previous commit, the client would receive a failure message but would
actually remain logged in after an authzid/authcid mismatch. This was a
correctness rather than a security issue, but now it's fixed so that the client
never logs in in the first place.
2019-12-25 15:06:26 -05:00
Shivaram Lingamneni
c8ccf94936
fix #716
2019-12-25 12:44:55 -05:00
Shivaram Lingamneni
9b5d6bf746
fix #713
2019-12-24 16:20:18 -05:00
Shivaram Lingamneni
1487980fe0
Fix #710
2019-12-24 15:03:37 -05:00
Shivaram Lingamneni
cd3ff3922e
fill in more authzid/authcid details
2019-12-24 12:46:31 -05:00
Pavel Djundik
6831b0ffdc
Fix authcid
variable name
2019-12-24 19:33:33 +02:00
Shivaram Lingamneni
358c4b7d81
implement draft/multiline
2019-12-24 09:29:54 -05:00
Shivaram Lingamneni
7a6925fa3f
Merge remote-tracking branch 'origin/master' into issue702
2019-12-23 11:32:15 -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
4391b1ba5a
restrict ASCII mode to printable characters only
2019-12-22 09:57:49 -05:00
Shivaram Lingamneni
781bb6b051
more systematic bad-character check in permissive mode
2019-12-22 09:31:51 -05:00
Shivaram Lingamneni
2d4dbeba1c
disallow some bad characters in foldPermissive
2019-12-22 09:19:28 -05:00
Shivaram Lingamneni
76a8768d05
make rehash-enable logic a little more uniform
2019-12-22 08:42:56 -05:00
Shivaram Lingamneni
bd6c2117e8
fix analogous issue for history
...
History couldn't be enabled by rehash if autoresize-window was nonzero.
2019-12-22 08:11:24 -05:00
Shivaram Lingamneni
26ca016c66
fix the analogous issue for vhosts
2019-12-21 20:26:40 -05:00
Shivaram Lingamneni
25c4eb2996
fix #702
2019-12-21 20:19:19 -05:00
Shivaram Lingamneni
0df25e0e30
remove redundant error check
2019-12-19 18:41:46 -05:00
Shivaram Lingamneni
c4e66d8b83
Merge pull request #698 from slingamn/issue616_prefs.2
...
fix #616
2019-12-19 18:38:18 -05:00
Shivaram Lingamneni
9bc5fb78cf
Merge pull request #700 from slingamn/issue347_snomasks
...
fix #347
2019-12-19 18:35:19 -05:00
Shivaram Lingamneni
01488bfe2e
slightly more defensive implementation of /OPER check
2019-12-19 18:30:19 -05:00
Shivaram Lingamneni
78da024b24
improve an error message
2019-12-19 09:30:49 -05:00
Shivaram Lingamneni
0c33c3399f
fix #347
2019-12-19 09:27:54 -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
6033d9f569
tweaks for consistency
2019-12-18 20:33:58 -05:00
Shivaram Lingamneni
6740222ecb
fix #616
2019-12-18 17:38:14 -05:00
Shivaram Lingamneni
e143aaa83f
fix #696
2019-12-18 16:04:43 -05:00
Shivaram Lingamneni
f9b5224ae0
have realSkeleton use cases.Fold as well
2019-12-18 12:26:09 -05:00
Shivaram Lingamneni
91d6888b7e
fix #693
2019-12-18 12:26:09 -05:00
Shivaram Lingamneni
ab444a3980
remove unnecessary uses of Casefold
2019-12-18 12:21:03 -05:00
Shivaram Lingamneni
f1e2bbc0e4
more permissive hostname validation
...
In particular, allow hostnames without periods (like on a LAN).
This shouldn't be a client compability concern since we allow
vhosts without periods.
2019-12-18 09:21:45 -05:00
Shivaram Lingamneni
4b37b5dd3e
tweak to avoid a potential data race
2019-12-17 19:57:23 -05:00
Shivaram Lingamneni
b468baa959
allow NS SESSIONS targeting yourself
2019-12-17 19:37:33 -05:00
Shivaram Lingamneni
3480f124cd
fix #688
2019-12-17 19:37:33 -05:00
Shivaram Lingamneni
c5a81d59ff
fix #581
2019-12-17 13:21:26 -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
438d1f0488
fix bad ERR_WASNOSUCHNICK responses
2019-12-05 08:31:17 -05:00
Shivaram Lingamneni
bcc58be8af
remove some redundant casefolds
2019-12-05 07:44:28 -05:00
Shivaram Lingamneni
08f351060e
fix #682
2019-12-05 07:29:27 -05:00
Shivaram Lingamneni
0880f20f4b
fix analogous invalid parameters for ERR_NOSUCHNICK
2019-12-05 06:52:07 -05:00
Shivaram Lingamneni
aa8579b6e8
Assorted fixes
...
* Fix #679 (borked reply to `JOIN #chan,\r\n`)
* Replace invalid error parameters with *'s in various places
* Fix PART with no message sending an empty trailing parameter to the channel
* Fix some error responses not getting labeled
2019-12-02 21:13:09 -05:00
Shivaram Lingamneni
fec1139dc8
Merge pull request #673 from slingamn/proxytls.18
...
fix #561 , take two
2019-11-23 22:09:45 -05:00
Shivaram Lingamneni
c6bd0aea8d
Merge pull request #672 from slingamn/issue671
...
fix #671
2019-11-23 22:09:37 -05:00
Shivaram Lingamneni
2d456c2106
review feedback: rename a key
2019-11-23 22:01:24 -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
42db1778ac
unexport rawLimiterConfig
2019-11-18 17:30:54 -05:00
Shivaram Lingamneni
babd8b1da9
fix #671
2019-11-18 17:21:28 -05:00
Shivaram Lingamneni
4050b6571a
fix #646
...
Includes a partially backwards-incompatible config change
2019-11-18 01:47:18 -05:00
Shivaram Lingamneni
149c9b45e8
bump version
2019-11-16 18:49:30 -05:00
Shivaram Lingamneni
d1ed5e4cbf
bump version and changelog
2019-11-16 18:14:20 -05:00
Shivaram Lingamneni
ae9aecbbb0
increase max cap line length
...
Workaround for #661 : this makes the `CAP LS 302` line from the default config
fit on a single line, as long as the server name is at most 35 characters.
2019-11-09 22:43:07 -05:00
Shivaram Lingamneni
a75d26a46b
refactor cap line splitting
2019-11-09 20:31:39 -05:00
Shivaram Lingamneni
507740464a
bump version
2019-11-03 12:39:13 -05:00
Shivaram Lingamneni
b6cdb51f00
fix #652
2019-10-23 11:32:32 -04:00
Shivaram Lingamneni
baa71ba2be
remove unnecessary special-casing for ASCII
2019-10-23 02:18:45 -04:00
Shivaram Lingamneni
82c5041225
fix #649
2019-10-16 18:10:32 -04:00
Shivaram Lingamneni
332f0d8d91
fix #644
2019-10-16 12:51:40 -04:00
Shivaram Lingamneni
cddc51d6cf
Merge pull request #640 from slingamn/issue639_emptystruct.1
...
make semaphores O(1) in storage
2019-10-12 18:13:07 -07:00
Shivaram Lingamneni
24c103da5a
fix #642
2019-10-05 23:50:11 -04:00
Shivaram Lingamneni
40df122c73
remove unused getters
2019-10-04 02:08:49 -04:00
Shivaram Lingamneni
45476079a1
make semaphores O(1) in storage
2019-10-03 00:03:00 -04:00