/* flags used to report connection errors or other closing conditions */
CO_FL_ERROR = 0x00100000, /* a fatal error was reported */
CO_FL_NOTIFY_DONE = 0x001C0000, /* any xprt shut/error flags above needs to be reported */
- CO_FL_NOTIFY_DATA = 0x001C0000, /* any shut/error flags above needs to be reported */
/* flags used to report connection status updates */
CO_FL_CONNECTED = 0x00200000, /* L4+L6 now ready ; extra handshakes may or may not exist */
* data layer activity (successful send/recv), connection establishment,
* shutdown and fatal errors. We need to consider the following
* situations to wake up the data layer :
- * - change among the CO_FL_NOTIFY_DATA flags :
- * {DATA,SOCK}_{RD,WR}_SH, ERROR,
+ * - change among the CO_FL_NOTIFY_DONE flags :
+ * SOCK_{RD,WR}_SH, ERROR,
* - absence of any of {L4,L6}_CONN and CONNECTED, indicating the
* end of handshake and transition to CONNECTED
* - raise of CONNECTED with HANDSHAKE down
* Note that the wake callback is allowed to release the connection and
* the fd (and return < 0 in this case).
*/
- if ((io_available || (((conn->flags ^ flags) & CO_FL_NOTIFY_DATA) ||
+ if ((io_available || (((conn->flags ^ flags) & CO_FL_NOTIFY_DONE) ||
((flags & (CO_FL_CONNECTED|CO_FL_HANDSHAKE)) != CO_FL_CONNECTED &&
(conn->flags & (CO_FL_CONNECTED|CO_FL_HANDSHAKE)) == CO_FL_CONNECTED))) &&
conn->mux && conn->mux->wake && conn->mux->wake(conn) < 0)