BOOL send_keepalive(int client) { unsigned char buf[4]; buf[0] = 0x85; buf[1] = buf[2] = buf[3] = 0; return(write_socket_data(client,(char *)buf,4) == 4); }
/************************************************************************** flush'em **************************************************************************/ void flush_connection_send_buffer_all(struct connection *pc) { if(pc && pc->used && pc->send_buffer->ndata > 0) { write_socket_data(pc, pc->send_buffer, 0); if (pc->notify_of_writable_data) { pc->notify_of_writable_data(pc, pc->send_buffer && pc->send_buffer->ndata > 0); } } }
/************************************************************************** flush'em **************************************************************************/ static void flush_connection_send_buffer_packets(struct connection *pc) { if(pc && pc->used && pc->send_buffer->ndata >= MAX_LEN_PACKET) { write_socket_data(pc, pc->send_buffer, MAX_LEN_PACKET-1); if (pc->notify_of_writable_data) { pc->notify_of_writable_data(pc, pc->send_buffer && pc->send_buffer->ndata > 0); } } }
ssize_t write_socket(int fd,char *buf,size_t len) { ssize_t ret=0; DEBUG(6,("write_socket(%d,%d)\n",fd,(int)len)); ret = write_socket_data(fd,buf,len); DEBUG(6,("write_socket(%d,%d) wrote %d\n",fd,(int)len,(int)ret)); if(ret <= 0) DEBUG(0,("write_socket: Error writing %d bytes to socket %d: ERRNO = %s\n", (int)len, fd, strerror(errno) )); return(ret); }