3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-11-10 22:19:31 +01:00
Commit Graph

90 Commits

Author SHA1 Message Date
Jeremy Latt
2229645a39 refactor server command loop 2014-02-23 19:13:45 -08:00
Jeremy Latt
0bf968e19e move command parsing and hostname lookups into the socket routine 2014-02-23 17:04:24 -08:00
Jeremy Latt
3b56b5bf42 expose various go internals as a DEBUG command 2014-02-23 10:04:31 -08:00
Jeremy Latt
c5c7469cf0 good ol' fashioned refactoring 2014-02-22 13:15:31 -08:00
Jeremy Latt
1283bd35c7 encapsulate client replies in method 2014-02-22 11:40:32 -08:00
Jeremy Latt
39fb4bfb53 restrict new channels to channel regex 2014-02-21 17:19:02 -08:00
Jeremy Latt
c8701febd0 loosen restrictions on WHO replies 2014-02-21 11:09:46 -08:00
Jeremy Latt
c1edddb9a1 fix whois reply 2014-02-20 20:47:05 -08:00
Jeremy Latt
e1c4c8e8cc don't send prefix on server-originated string coded replies 2014-02-20 20:08:32 -08:00
Jeremy Latt
23f01ff9ee handle CAP command silently in registration too 2014-02-20 19:55:03 -08:00
Jeremy Latt
ad513da486 do hostname lookups in the client read thread 2014-02-20 13:03:33 -08:00
Jeremy Latt
97881b555d async hostname lookups 2014-02-20 11:51:45 -08:00
Jeremy Latt
9960089226 format replies to strings instead of using a Reply struct 2014-02-19 22:20:34 -08:00
Jeremy Latt
25ebab37d3 replies shouldn't contain references to client 2014-02-19 19:30:49 -08:00
Jeremy Latt
af6a8ee6f0 remove channel buffering 2014-02-19 18:22:57 -08:00
Jeremy Latt
95f267ea4f buffer all channels 2014-02-19 17:48:03 -08:00
Jeremy Latt
f090c616b3 reduce writes 2014-02-18 20:28:35 -08:00
Jeremy Latt
0cd6be8008 clean up nickname setting logic 2014-02-18 15:36:58 -08:00
Jeremy Latt
9e471b5b5d solve quit/connection close race 2014-02-18 13:25:21 -08:00
Jeremy Latt
2bc1b952a0 do idle in the server goroutine instead of the timeout goroutine 2014-02-18 11:22:56 -08:00
Jeremy Latt
4f106e7d3e make server logging consistent with other logs 2014-02-18 10:22:40 -08:00
Jeremy Latt
58517ad4e8 fix closed channel on socket close 2014-02-18 10:13:57 -08:00
Jeremy Latt
9c1ab4f610 fix socket close race 2014-02-17 23:58:02 -08:00
Jeremy Latt
baf83e73d2 support USER from both RFCs 1459 and 2812 2014-02-17 22:10:48 -08:00
Jeremy Latt
bb64d38684 implement who reply like ngircd 2014-02-17 21:30:14 -08:00
Jeremy Latt
b17e62d0b0 names command 2014-02-17 21:02:03 -08:00
Jeremy Latt
046723a709 make whois channels possibly multiline 2014-02-17 20:47:41 -08:00
Jeremy Latt
9a5f21e78c beef up whois 2014-02-17 19:08:57 -08:00
Jeremy Latt
bd3ca4ae47 fix race in idle timeout; fix some string trimming; fix some replies 2014-02-17 18:10:52 -08:00
Jeremy Latt
1a7f56a903 clean up general command and name handling 2014-02-17 17:58:22 -08:00
Jeremy Latt
6d8b381927 convert client bools to a flags map 2014-02-17 13:22:35 -08:00
Jeremy Latt
f0fc3b492c list command 2014-02-16 23:51:27 -08:00
Jeremy Latt
a9d7f64693 kick command 2014-02-16 23:29:11 -08:00
Jeremy Latt
af5a05f390 use a select in the server commands loop 2014-02-16 22:38:43 -08:00
Jeremy Latt
d5c9681a10 instantiate clients in the server command goroutine 2014-02-16 22:30:01 -08:00
Jeremy Latt
dc5e258f88 don't use a goroutine when initializing clients 2014-02-16 22:26:33 -08:00
Jeremy Latt
4e56ea1bdc get rid of unnecessary concurrency for channels and clients 2014-02-16 22:20:42 -08:00
Jeremy Latt
e411dafda7 get rid of mutexes in favor of channel-base syncing 2014-02-16 17:23:47 -08:00
Jeremy Latt
74b8221db7 use mutexes more 2014-02-16 10:42:25 -08:00
Jeremy Latt
81a0f19390 fix bad ref in part command 2014-02-16 09:41:16 -08:00
Jeremy Latt
0f6ee63e6e fix a race 2014-02-15 20:20:37 -08:00
Jeremy Latt
488b2ccf8f implement channel modes and messages properly 2014-02-15 19:49:20 -08:00
Jeremy Latt
0bfa2fb98f channel mode flags and member modes 2014-02-14 21:57:08 -08:00
Jeremy Latt
33b1e6c582 simplify Replier 2014-02-14 19:35:25 -08:00
Jeremy Latt
3a9027e3dc don't double-close socket 2014-02-14 19:05:30 -08:00
Jeremy Latt
4d9742d033 organize server command into phases 2014-02-14 18:28:36 -08:00
Jeremy Latt
9600be82a3 fix more data races 2014-02-14 08:42:56 -08:00
Jeremy Latt
3ba928cee6 remove server command mutex 2014-02-13 20:58:13 -08:00
Jeremy Latt
be01a412d9 only quit registered clients 2014-02-13 20:52:42 -08:00
Jeremy Latt
d35fe6088c attempt to fix hang condition in quit sequence 2014-02-13 20:23:22 -08:00