static int connecting_fdpass_sock;
static void connect_attempt_discard(void) {
- reconnect_blocking_event();
if (connecting_child) {
int status= xwaitpid(&connecting_child, "connect");
if (!(WIFEXITED(status) ||
x:
conn_dispose(conn);
connect_attempt_discard();
+ reconnect_blocking_event();
return OOP_CONTINUE;
}
assert(!connecting_fdpass_sock);
info("starting connection attempt");
+ int ok_reconnect_delay_periods= reconnect_delay_periods;
reconnect_blocking_event();
int socks[2];
connecting_fdpass_sock= socks[0];
xsetnonblock(connecting_fdpass_sock, 1);
on_fd_read_except(connecting_fdpass_sock, connchild_event);
+
+ if (!conns.count)
+ reconnect_delay_periods= ok_reconnect_delay_periods;
}
/*---------- assigning articles to conns, and transmitting ----------*/