Commit graph

21 commits

Author SHA1 Message Date
ehouse
7a24d40d1f Attempt to detect connections that are duplicates by checking if that
socket is already in a connection.  This doesn't seem to always work,
and I may be leaking cref instances when it does, so needs debugging
still.
2009-02-01 16:00:20 +00:00
ehouse
1d4c68d8d2 replace int with bool where appropriate; fix to compile with newer g++ 2008-12-30 05:13:30 +00:00
ehouse
8a94d0d6ef initialize mutex before using; fixes a hang since could never aquire
lock.  (This bug has always been there, but didn't matter before;
maybe pthreads changed.)  Comment out self-spawning stuff until can
fix df-transfer problems.  Other minor changes around logging.
2007-02-06 05:52:22 +00:00
ehouse
d5511d2ab3 include result of strerror in messages logging errno 2007-02-03 21:35:07 +00:00
ehouse
2bcac176e9 include stdio.h for freebsd 2006-03-21 04:05:33 +00:00
ehouse
dcd31cd092 update email address in header comments: no code change 2006-01-08 01:25:02 +00:00
ehouse
ba294dbe95 add header needed on some installations 2005-10-23 21:35:19 +00:00
ehouse
bdace2be94 shutdown in response to SIGINT 2005-10-23 15:49:48 +00:00
ehouse
be6769a937 cleanup ctrl printing; repeat most recent command; cleanup internal names. 2005-10-16 01:19:25 +00:00
ehouse
6d76de5eaf capitalize public methods on timermgr (no code change) 2005-10-15 15:49:22 +00:00
ehouse
1ba992073b return error to client when flags indicate old version; close sockets
when error occurs in processing message.
2005-10-14 08:29:58 +00:00
ehouse
bf1264b2ee rename states so can format to 80 cols; add log level param. No
change to functionality in this checkin.
2005-10-02 16:08:42 +00:00
ehouse
912859be39 Don't close the underlying socket. Not sure yet when I should close a
socket that hasn't returned an error.  Maybe that's the client's job.
2005-09-05 15:45:22 +00:00
ehouse
8821815fb5 log tweak 2005-09-04 20:44:46 +00:00
ehouse
da323ede86 loads of changes: get settings from config file; remove sockets and
kill crefs via state machine, and protect access to a cref so it can
die without another thread being in it; do timers via timeout to
poll() rather than interrupt (and integrate into state machine);
detect when all players are present and change state so new
connections on that cookie will get a new cref.
2005-09-02 06:56:34 +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
7723fa5e19 use rwlock instead of mutex 2005-04-20 12:06:25 +00:00
ehouse
bf41f95f44 fix warnings 2005-04-08 14:28:04 +00:00
ehouse
97b0998eaf don't assert after poll returns! Instead close socket on hangup. 2005-04-03 17:02:09 +00:00
ehouse
c1c224cdae first checked in. works but not robust 2005-03-31 02:11:51 +00:00