No protocol defines it anymore. The last user used to be the monitor-net
stuff that got partially broken already when the tcp_drain() function
moved to conn_sock_drain() with commit
e215bba95 ("MINOR: connection:
make conn_sock_drain() work for all socket families") in 1.9-dev2.
A part of this will surely move back later when non-socket connections
arrive with QUIC but better keep the API clean and implement what's
needed in time instead.
/* functions acting on connections */
void (*accept)(int fd); /* generic accept function */
int (*connect)(struct connection *, int flags); /* connect function if any, see below for flags values */
- int (*drain)(int fd); /* indicates whether we can safely close the fd */
struct list receivers; /* list of receivers using this protocol (under proto_lock) */
int nb_receivers; /* number of receivers (under proto_lock) */
if (!fd_recv_ready(conn->handle.fd))
return 0;
- if (conn->ctrl->drain) {
- if (conn->ctrl->drain(conn->handle.fd) <= 0)
- return 0;
- goto shut;
- }
-
/* no drain function defined, use the generic one */
while (turns) {