- If not, keep stuff in buffer and exit.
*/
+ buffer_compact(&c->inbuf, MAXBUFSIZE);
+
+ if(sizeof inbuf <= c->inbuf.len) {
+ logger(LOG_ERR, "Input buffer full for %s (%s)", c->name, c->hostname);
+ return false;
+ }
+
inlen = recv(c->socket, inbuf, sizeof inbuf - c->inbuf.len, 0);
if(inlen <= 0) {
if(c->tcplen) {
char *tcpbuffer = buffer_read(&c->inbuf, c->tcplen);
if(tcpbuffer) {
+ c->tcplen = 0;
receive_tcppacket(c, tcpbuffer, c->tcplen);
continue;
} else {
}
} while(inlen);
- buffer_compact(&c->inbuf);
-
return true;
}