*/
void flush_connections(struct Client* cptr)
{
+ struct SSLConnection *ssl = cli_connect(cptr)->con_ssl;
if (cptr) {
+ if(ssl)
+ ssl_connection_flush(ssl);
send_queued(cptr);
}
else {
assert(0 < MsgQLength(&(con_sendQ(con))));
send_queued(con_client(con));
}
+ ssl_connection_flush(NULL);
}
}
/* send buffer along */
bump_sentalong(one);
for (cptr = GlobalClientList; cptr; cptr = cli_next(cptr)) {
- if (!IsRegistered(cptr) || IsServer(cptr) ||
- !match_it(from, cptr, to, who) || cli_fd(cli_from(cptr)) < 0 ||
- cli_sentalong(cptr) == sentalong_marker)
+ if (!IsRegistered(cptr) || IsServer(cptr) || cli_fd(cli_from(cptr)) < 0 ||
+ cli_sentalong(cptr) == sentalong_marker ||
+ !match_it(from, cptr, to, who))
continue; /* skip it */
cli_sentalong(cptr) = sentalong_marker;