summaryrefslogtreecommitdiffstats
path: root/plugins/imptcp/imptcp.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/imptcp/imptcp.c')
-rw-r--r--plugins/imptcp/imptcp.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/plugins/imptcp/imptcp.c b/plugins/imptcp/imptcp.c
index 1fecaee5..a568e5fe 100644
--- a/plugins/imptcp/imptcp.c
+++ b/plugins/imptcp/imptcp.c
@@ -830,6 +830,12 @@ DataRcvdUncompressed(ptcpsess_t *pThis, char *pData, size_t iLen, struct syslogT
assert(pData != NULL);
assert(iLen > 0);
+{size_t i;
+dbgprintf("Data received(%u): '", (unsigned) iLen);
+for(i=0;i<iLen;++i)
+ dbgprintf("%c", pData[i]);
+dbgprintf("'\n");
+}
if(ttGenTime == 0)
datetime.getCurrTime(stTime, &ttGenTime);
multiSub.ppMsgs = pMsgs;
@@ -861,12 +867,16 @@ DataRcvdCompressed(ptcpsess_t *pThis, char *buf, size_t len)
// TODO: can we do stats counters? Even if they are not 100% correct under all cases,
// by simply updating the input and output sizes?
uint64_t outtotal;
+dbgprintf("DDDD: in DataRcvdCompressed, init done %d\n", pThis->bzInitDone);
datetime.getCurrTime(&stTime, &ttGenTime);
outtotal = 0;
if(!pThis->bzInitDone) {
+dbgprintf("DDDD; inside zlib init code\n");
/* allocate deflate state */
+ pThis->zstrm.next_in = (Bytef*) buf;
+ pThis->zstrm.avail_in = 0;
pThis->zstrm.zalloc = Z_NULL;
pThis->zstrm.zfree = Z_NULL;
pThis->zstrm.opaque = Z_NULL;
@@ -885,7 +895,8 @@ DataRcvdCompressed(ptcpsess_t *pThis, char *buf, size_t len)
DBGPRINTF("imptcp: in inflate() loop, avail_in %d, total_in %ld\n", pThis->zstrm.avail_in, pThis->zstrm.total_in);
pThis->zstrm.avail_out = sizeof(zipBuf);
pThis->zstrm.next_out = zipBuf;
- zRet = inflate(&pThis->zstrm, Z_NO_FLUSH); /* no bad return value */
+ zRet = inflate(&pThis->zstrm, Z_SYNC_FLUSH); /* no bad return value */
+ //zRet = inflate(&pThis->zstrm, Z_NO_FLUSH); /* no bad return value */
DBGPRINTF("after inflate, ret %d, avail_out %d\n", zRet, pThis->zstrm.avail_out);
outavail = sizeof(zipBuf) - pThis->zstrm.avail_out;
if(outavail != 0) {