Commit graph

145 commits

Author SHA1 Message Date
ehouse
0b4214c82b fix bug where client connecting before server would result in attempt
to forward packet to host not yet available.  Drop such packets now.
2005-08-02 04:57:13 +00:00
ehouse
051108e14e make overly verbose logging conditional 2005-08-02 04:56:08 +00:00
ehouse
a26549afa9 Pass protocol version code with connect request, and return error if
it isn't what relay can handle.  Report error to user.
2005-07-06 01:36:52 +00:00
ehouse
4e3e67c7b2 Honor cookieID passed in connect message, falling back to cookie only
when the ID isn't set, and using it rather than assigning a new one
even if the game can't be found.
2005-07-06 00:54:38 +00:00
ehouse
326a639ea5 cleanup 2005-07-06 00:53:19 +00:00
ehouse
93b78bc3f6 Make cookieID a 32-bit value instead of 16-bit 2005-07-05 23:02:15 +00:00
ehouse
711046f94b move to using a formal table-driven state machine for each game (cref
object).  While it makes things more complex at this point, it should
make it easier in the long run to add error handling, timeouts, etc.
2005-07-05 22:05:37 +00:00
ehouse
19668620fd add include file 2005-07-05 21:57:00 +00:00
ehouse
db5b2f843d fix leak 2005-07-05 21:52:24 +00:00
ehouse
210dcc88c0 heartbeats: send to clients in connection response; note when
heartbeat and other messages arrive; and periodically reap sockets
that haven't been active in long enough.
2005-06-23 04:26:44 +00:00
ehouse
2c37dc2366 log incoming ip addr 2005-05-01 17:38:11 +00:00
ehouse
fc9a3716d9 lots of little changes; cleanup and support ctrl functions 2005-04-20 12:13:20 +00:00
ehouse
af7a820bb8 reorganize; support ctrl functions 2005-04-20 12:10:05 +00:00
ehouse
0b316408ae count bytes sent 2005-04-20 12:08:33 +00:00
ehouse
7723fa5e19 use rwlock instead of mutex 2005-04-20 12:06:25 +00:00
ehouse
176e2bf68d move to using rwlock 2005-04-20 12:03:58 +00:00
ehouse
f625557cd9 more debug info 2005-04-20 11:59:08 +00:00
ehouse
9e572d1743 add several new commands 2005-04-20 11:57:26 +00:00
ehouse
bf41f95f44 fix warnings 2005-04-08 14:28:04 +00:00
ehouse
6a5b03f1aa add rwlock helper classes 2005-04-08 14:18:14 +00:00
ehouse
37062d4ab6 mutex replaced by rwlock 2005-04-08 14:17:28 +00:00
ehouse
d783a5ba2e replace mutex with rwlock; move creation inside class so can be
controlled by same rwlock.
2005-04-08 14:15:23 +00:00
ehouse
a9c3bac6df move creation inside class so can be controlled by same rwlock 2005-04-08 14:13:25 +00:00
ehouse
26ebce5853 turn on warnings 2005-04-08 14:11:00 +00:00
ehouse
97b0998eaf don't assert after poll returns! Instead close socket on hangup. 2005-04-03 17:02:09 +00:00
ehouse
6baa887b77 add command parsing and dispatch table 2005-03-31 02:20:50 +00:00
ehouse
c1c224cdae first checked in. works but not robust 2005-03-31 02:11:51 +00:00
ehouse
c41dc77934 break up compile; new file 2005-03-30 02:00:15 +00:00
ehouse
bf6837a9d0 this file owns thread creation now 2005-03-30 01:52:10 +00:00
ehouse
5582b5be2c new include 2005-03-30 01:49:40 +00:00
ehouse
7bafdf8e5a first checked in 2005-03-30 01:47:55 +00:00
ehouse
863e241fc6 use new thread pool class 2005-03-30 01:42:28 +00:00
ehouse
12795788ea cleanup 2005-03-30 01:32:02 +00:00
ehouse
1ec9e7b851 add cmd to lock/unlock main mutex 2005-03-25 03:24:00 +00:00
ehouse
7a6a5df437 use new stack-based lock 2005-03-25 03:21:16 +00:00
ehouse
f17a3bec58 add mutexes; general improvements 2005-03-25 02:59:44 +00:00
ehouse
9fb0b2691d first checked in 2005-03-25 02:59:10 +00:00
ehouse
d4edf4d446 don't kill socket when client connects before server 2005-03-21 05:30:55 +00:00
ehouse
95772d3ad1 remove null-dereference when socket closed by two threads 2005-03-21 05:30:12 +00:00
ehouse
12b0c74790 first checked in. 2005-03-19 22:16:49 +00:00
ehouse
8202b041b3 first checked in. primative, but works. 2005-03-19 22:14:27 +00:00
ehouse
5d3876fa7b total rewrite. New protocol eliminates need to store and forward
messages: clients connect, then messages are passthru only.  Add
control port.  Use stl map and vector to remove limit on number of
connections.  Also removed synchronization, which need to be re-added.
2005-03-19 22:13:43 +00:00
ehouse
02588f6244 add two new .cpp files 2005-03-19 22:09:03 +00:00
ehouse
131498728c first checked in 2005-03-06 18:30:59 +00:00
ehouse
2f8efe7a6a first checkin. Works about half the time for one or two games at a
time.  Very fragile.
2005-03-06 18:27:16 +00:00