Shivaram Lingamneni
364d31e10c
implement the strict modern behavior
5 роки тому
Shivaram Lingamneni
521d5bf50f
fix #380
Partially fixed earlier in #467
5 роки тому
Shivaram Lingamneni
c0b554e98c
changes from discussion
5 роки тому
Shivaram Lingamneni
acc9d8c13d
update to proposed draft/resume-0.5 behavior
5 роки тому
Shivaram Lingamneni
71cc9a1adf
review fix
5 роки тому
Shivaram Lingamneni
ef796f1b11
review fix
5 роки тому
Shivaram Lingamneni
1a1d3ff89f
fix #410
5 роки тому
Shivaram Lingamneni
b134a63dc2
simplify "client dead" logic in AddSession
now that we have client.destroyed again, we don't need to test the
"0 sessions && brb disabled" condition in both AddSession() and
destroy()
5 роки тому
Shivaram Lingamneni
dee9740e68
add some testing
5 роки тому
Shivaram Lingamneni
9fe65223db
fix #527
Use []uint32 in bitset instead of []uint64, because it's harder to guarantee
64-bit alignment of []uint64 than I had realized:
https://go101.org/article/memory-layout.html
5 роки тому
Shivaram Lingamneni
5ac7ea5b1c
fix data race on exitedSnomaskSent
5 роки тому
Shivaram Lingamneni
1a7169d75d
fix double-destroy bug
5 роки тому
Shivaram Lingamneni
74732c4aeb
new proposed format for RESUMED messages
5 роки тому
Shivaram Lingamneni
57684fc1e5
fix #518
5 роки тому
Shivaram Lingamneni
ada710b807
fix #521
5 роки тому
Shivaram Lingamneni
8794740f89
be more pedantic about distinguishing skeletons and casefolds
5 роки тому
Chris Smith
a6164cd9c4
Check restricted nicknames against skeletons
Fixes #519
5 роки тому
Shivaram Lingamneni
34925ce4a7
fix #516
5 роки тому
Shivaram Lingamneni
99de53264e
fix a bug in SetQuitMessage
Quit messages aren't supposed to clobber each other under any
circumstances, but actually only the default "Connection closed"
message was non-clobbering, all others would clobber.
5 роки тому
Shivaram Lingamneni
174115deb6
fix #455
5 роки тому
Shivaram Lingamneni
0835ad6af5
fix #514
Also ensure that people can remove their own persistent modes via CS AMODE
5 роки тому
Shivaram Lingamneni
dcb3487566
fix #511
5 роки тому
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
5 роки тому
Shivaram Lingamneni
05459012ef
move fakelag processing back to read loop as well
5 роки тому
Shivaram Lingamneni
4e13f72ca9
put an upper limit on registration messages
Fixes #505
5 роки тому
Shivaram Lingamneni
0af0a0b445
fix a race condition
Setting `closed` on the socket (which can mean either "the socket is broken"
or "we should close the socket at the next opportunity") was racing against
the final write. Even if socket.closed is true, we should attempt to send
buffered message data to the socket, before we send the `finalData` and
actually call `Close`.
5 роки тому
Shivaram Lingamneni
1de166bccb
eliminate client.Realname() getter
5 роки тому
Shivaram Lingamneni
cf153c2b09
restore RESUME SUCCESS message
5 роки тому
Shivaram Lingamneni
1121e3d320
fix #404
5 роки тому
Shivaram Lingamneni
3d445573cf
implement draft/resume-0.4
5 роки тому
Shivaram Lingamneni
a59212f8dc
send nickserv timeout warnings from a full pseudo-nickmask
5 роки тому
Shivaram Lingamneni
f996e6bb87
review fix
5 роки тому
Shivaram Lingamneni
b96fdb2293
support znc.in/playback
5 роки тому
Shivaram Lingamneni
dbf03d5c5e
add AcquireWithTimeout for semaphores
5 роки тому
Shivaram Lingamneni
d5ebebaa5b
add uncommitted test file
5 роки тому
Shivaram Lingamneni
38b228af6a
review fixes
5 роки тому
Shivaram Lingamneni
f10ed05f86
fix a lock access in ResumeManager
5 роки тому
Shivaram Lingamneni
8fc588375b
implement user preferences system
5 роки тому
Shivaram Lingamneni
25974b6881
fix #487
5 роки тому
Daniel Oaks
b8c9de5379
Make strings easier to understand
5 роки тому
Shivaram Lingamneni
58d089020e
send command processing errors to the originating session only
5 роки тому
Daniel Oaks
9fbfee62d5
Update translations
5 роки тому
Shivaram Lingamneni
7d53dd5d81
formalize token munging code
5 роки тому
Shivaram Lingamneni
0346c23ae0
fix #387
5 роки тому
Shivaram Lingamneni
ea70580adc
fix #488
5 роки тому
Shivaram Lingamneni
8f0977f59e
human-readable times for NS SESSIONS
5 роки тому
Shivaram Lingamneni
316d45917d
pass the correct quit message when a proxied client is banned
If you were banned and the ban was only detected when you proxied
(because you were proxying from a DLINE'd IP), you'd get an incorrect
quit message: `QUIT: Bad or unauthorized PROXY command`. This propagates
the correct ban message as the quit line.
5 роки тому
Shivaram Lingamneni
89a50d772c
WHO should leave the client idle
Some clients seem to automatically poll for channel state
5 роки тому
Shivaram Lingamneni
6ded2ea466
fix #483
5 роки тому
Shivaram Lingamneni
0b55fed7c5
consolidate acceptClient into RunNewClient
5 роки тому