ei: queue unsent messages for later delivery if our buffer is full
If we fail to write data with EAGAIN
, put the data into a queue and attempt to write it later. This way a (temporarily) slow EIS connection won't automatically cause a disconnection. This is a relatively simple implementation, if EIS never processes events but we keep sending them we'll eventually run out of memory.
Note: this is the libei side only atm but a similar patchs should work for libei. Likewise, this should also work for EINTR
though that bit is missing atm.
Fixes #46 (closed)
cc @pnowack