4ce5822550PacketProtoDecoder, StreamPeerIO: fix bug: when an error occured in PacketProtoDecoder, it was supposed to be freed, but StreamPeerIO didn't free it. Fix by not requiring freeing the decoder, and instead make it reset itself automatically when an error occurs.
ambrop7
2010-11-10 22:10:57 +00:00
3871364fceflow: remove unused code from interfaces
ambrop7
2010-11-10 21:36:28 +00:00
ae37921c61BPRFileDesc: minor changes
ambrop7
2010-11-08 21:14:27 +00:00
1fcd2f9997BPRFileDesc: execute handlers such that after executing a handler, control is returned to the reactor. This makes sure all the handler's work is done before another handler is called. Implemented similarly as in BSocket in a previous commit.
ambrop7
2010-11-08 21:09:16 +00:00
4b25f9ad36PacketBuffer: call Recv before calling Send, so that sending has priority over receiving (it's a LIFO...)
ambrop7
2010-11-08 19:32:52 +00:00
ff876da29eserver: minor changes
ambrop7
2010-11-08 18:01:45 +00:00
df4ea40f5eBSocket: minor changes
ambrop7
2010-11-08 14:31:09 +00:00
b9c13e8911BSocket: execute handlers such that after executing a handler, control is returned to the reactor. This makes sure all the handler's work is done before another handler is called.
ambrop7
2010-11-08 11:42:49 +00:00
25604cb4d5BReactor: add note about a bug that could cause an infinite loop if an error occurs, but no events are requested. Seems not to happen in practice.
ambrop7
2010-11-08 11:13:27 +00:00
00cd64a636Introduce a brand new design based on a LIFO list of jobs pending execution:
ambrop7
2010-11-07 20:45:10 +00:00
e50058d7bdBSocket: don't complain if WSASendMsg/WSARecvMsg are not available
ambrop7
2010-11-07 13:56:19 +00:00
d4fbebc2ffBSocket: interpret setsockopt return value correctly, fallback to WSASendTo/WSARecvFrom if WSASendMsg/WSARecvMsg isn't available
ambrop7
2010-11-07 13:27:41 +00:00
e3baf7cad9client: fix wrong goto in error path for program initialization
ambrop7
2010-11-06 16:36:58 +00:00
5218d6b14bPacketPassFairQueue: when assigning time to a flow, also consider the time of flows in the queue, not just of the sending flow. Otherwise we could assign a zero time to a flow even if there are other flows waiting and give it enormous precedence.
ambrop7
2010-11-05 20:49:27 +00:00
9e183b6265PacketCopier: revert using jobs to call Done, it makes no sense
ambrop7
2010-11-02 12:33:50 +00:00
5880e9b52bBIPCServer: remove unused dead var
ambrop7
2010-11-02 07:54:32 +00:00
d1e5f0154cipc_client: raise maximum packets
ambrop7
2010-11-02 07:51:21 +00:00
39b4f5abf0PacketProtoDecoder: operate synchronously, not as a buffer
ambrop7
2010-11-01 23:51:34 +00:00
5b8923d17fUnix sockets suck at message oriented communication. Just use a stream socket and PacketProto.
ambrop7
2010-11-01 21:28:27 +00:00
3ffeaefbbaRemove seqsocket socket type. Unix socket of type SOCK_SEQPACKET are broken (Linux) because they do not support the MSG_EOR flag. Instead use SOCK_DGRAM unix sockets for IPC, which are (hopefully) reliable and preserve message boundaries across send()/recv(). Also some minor refactoring in BSocket.
ambrop7
2010-11-01 20:32:37 +00:00
615cc2cff3SeqPacketSocketSource: interpret return value 0 from recv as connection closed. Looks like we can't have zero packets.
ambrop7
2010-11-01 16:44:05 +00:00
dc71e58dd3ipc: only build on non-windows
ambrop7
2010-11-01 14:04:06 +00:00
59243516ddipc: move BIPC, BIPCServer from system
ambrop7
2010-11-01 13:53:06 +00:00
f8fb5c1bc0server: when initializing client flows, initialize input after output. Fixes a bug where if a new client sent hello very quickly, it would be disconnected immediately.
ambrop7
2010-10-28 10:22:25 +00:00