Daniel Oaks
317a804644
Fix dates at top of source files
vor 7 Jahren
Daniel Oaks
91fab3ba55
socket: Better deal with chanfloods
vor 7 Jahren
Daniel Oaks
f5536d7945
socket: Add a simple println when SendQ exceeded, config comment update
vor 7 Jahren
Daniel Oaks
c3be2d0d46
socket: Fixup sending code so we can support more connections
vor 7 Jahren
Daniel Oaks
f29a5f0e70
socket: Very initial SendQ limit
vor 7 Jahren
Daniel Oaks
de4db1c6ef
socket: Start overhaul of sockets and writing
vor 7 Jahren
Daniel Oaks
149550b453
socket: Timeout TLS handshakes
vor 7 Jahren
Daniel Oaks
b5e7d8968f
accounts: Add SASL EXTERNAL handler
vor 7 Jahren
Daniel Oaks
49034cb20e
certfp: Add certfp retrieval from client
vor 7 Jahren
Daniel Oaks
2f08401a0f
Attempt to add mostly-correct license info at the top of each file... track this stuff a bit better
vor 8 Jahren
Daniel Oaks
9860094020
socket: Use updated socket code
vor 8 Jahren
Jeremy Latt
4ce4ba31c5
keep track of whether sockets are closed
vor 10 Jahren
Jeremy Latt
6c10add399
improve performance by using less goroutines
- get rid of command channel in Client
- get rid of loginTimer; use other timers instead
- move debugging code to debug.go
vor 10 Jahren
Jeremy Latt
142bf3d3bb
don't async buffer flushing
vor 10 Jahren
Jeremy Latt
b0bb0faadc
remove unnecessary String()s; rename parse functions
vor 10 Jahren
Jeremy Latt
3b12dec207
cleanup
vor 10 Jahren
Jeremy Latt
2dc69c7e3d
use a Scanner instead of ReadString
vor 10 Jahren
Jeremy Latt
5f268e4847
async all write buffer flushes
vor 10 Jahren
Jeremy Latt
d696f2313e
stop leaking client goroutines; closes #34
vor 10 Jahren
Jeremy Latt
e15f47c766
move to channel-based logging
vor 10 Jahren
Jeremy Latt
77d053ccac
get rid of editableCommand
vor 10 Jahren
Jeremy Latt
04f0b2c48d
trim trailing space from commands
vor 10 Jahren
Jeremy Latt
6f00f89efa
relax unicode parsing rules
NFKC was previously used for all text. Now, we use NFKC for all args but
the last, which may be free text. This arg is normalized with NFC to
allow for formatting characters.
vor 10 Jahren
Jeremy Latt
45bb0d05e7
normalize all unicode input from the client
vor 10 Jahren
Jeremy Latt
be089e7f5f
do bcrypt in the client main routine
vor 10 Jahren
Jeremy Latt
41e6baf9d4
get rid of a race; use pointers where possible
vor 10 Jahren
Jeremy Latt
0856a9fa81
flag socket as closed when writes fail
vor 10 Jahren
Jeremy Latt
0bf968e19e
move command parsing and hostname lookups into the socket routine
vor 10 Jahren
Jeremy Latt
3b56b5bf42
expose various go internals as a DEBUG command
vor 10 Jahren
Jeremy Latt
ad513da486
do hostname lookups in the client read thread
vor 10 Jahren
Jeremy Latt
c0dc733351
don't wait for writing to complete
vor 10 Jahren
Jeremy Latt
6265b70622
get rid of goroutines on client socket
vor 10 Jahren
Jeremy Latt
f090c616b3
reduce writes
vor 10 Jahren
Jeremy Latt
dcb4ac90e2
use a buffered channel for socket writing
vor 10 Jahren
Jeremy Latt
4f106e7d3e
make server logging consistent with other logs
vor 10 Jahren
Jeremy Latt
58517ad4e8
fix closed channel on socket close
vor 10 Jahren
Jeremy Latt
9c1ab4f610
fix socket close race
vor 10 Jahren
Jeremy Latt
bd3ca4ae47
fix race in idle timeout; fix some string trimming; fix some replies
vor 10 Jahren
Jeremy Latt
cd4503be31
allow blank lines from the client
vor 10 Jahren
Jeremy Latt
4e56ea1bdc
get rid of unnecessary concurrency for channels and clients
vor 10 Jahren
Jeremy Latt
50f1012c92
don't close socket sending channel
vor 10 Jahren
Jeremy Latt
3a9027e3dc
don't double-close socket
vor 10 Jahren
Jeremy Latt
6ea3c8f4d1
fix race conditions
vor 10 Jahren
Jeremy Latt
541a40b056
touch should respect destroyed
vor 10 Jahren
Jeremy Latt
42ff4410ad
more logging
vor 10 Jahren
Jeremy Latt
11537ad975
abstract net operations as Socket
vor 10 Jahren