--- libaitrpc/src/srv.c 2012/07/22 20:44:13 1.11 +++ libaitrpc/src/srv.c 2012/08/29 14:04:04 1.11.2.1 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: srv.c,v 1.11 2012/07/22 20:44:13 misho Exp $ +* $Id: srv.c,v 1.11.2.1 2012/08/29 14:04:04 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -446,6 +446,7 @@ acceptBLOBClients(sched_task_t *task) rpc_cli_t *c = NULL; register int i; socklen_t salen = sizeof(io_sockaddr_t); + int n = 1; /* check free slots for connect */ for (i = 0; i < io_arraySize(srv->srv_blob.clients) && @@ -474,8 +475,10 @@ acceptBLOBClients(sched_task_t *task) AIT_FREE_VAL(&c->cli_buf); io_arrayDel(srv->srv_blob.clients, i, 42); goto end; - } else + } else { + setsockopt(c->cli_sock, IPPROTO_TCP, TCP_NOPUSH, &n, sizeof n); fcntl(c->cli_sock, F_SETFL, fcntl(c->cli_sock, F_GETFL) | O_NONBLOCK); + } schedRead(TASK_ROOT(task), rxBLOB, c, c->cli_sock, NULL, 0); end: