summaryrefslogtreecommitdiffstats
path: root/runtime/nsd_ptcp.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2009-11-25 13:28:05 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2009-11-25 13:28:05 +0100
commit18749309f333ee83d5fc14d64971e0418eef360d (patch)
tree9f237e80f4e70bb5d4ad2dd528a010d43960ce45 /runtime/nsd_ptcp.c
parente0d77fa90cad334f308da9cbd4369d61f1c97511 (diff)
downloadrsyslog-18749309f333ee83d5fc14d64971e0418eef360d.tar.gz
rsyslog-18749309f333ee83d5fc14d64971e0418eef360d.tar.xz
rsyslog-18749309f333ee83d5fc14d64971e0418eef360d.zip
fixing some potential segfault conditions
Diffstat (limited to 'runtime/nsd_ptcp.c')
-rw-r--r--runtime/nsd_ptcp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/nsd_ptcp.c b/runtime/nsd_ptcp.c
index 6feee71d..96881097 100644
--- a/runtime/nsd_ptcp.c
+++ b/runtime/nsd_ptcp.c
@@ -562,6 +562,7 @@ finalize_it:
static rsRetVal
Rcv(nsd_t *pNsd, uchar *pRcvBuf, ssize_t *pLenBuf)
{
+ char errStr[1024];
DEFiRet;
nsd_ptcp_t *pThis = (nsd_ptcp_t*) pNsd;
ISOBJ_TYPE_assert(pThis, nsd_ptcp);
@@ -571,7 +572,9 @@ Rcv(nsd_t *pNsd, uchar *pRcvBuf, ssize_t *pLenBuf)
if(*pLenBuf == 0) {
ABORT_FINALIZE(RS_RET_CLOSED);
} else if (*pLenBuf < 0) {
- ABORT_FINALIZE(RS_RET_ERR);
+ rs_strerror_r(errno, errStr, sizeof(errStr));
+ dbgprintf("error during recv on NSD %p: %s\n", pNsd, errStr);
+ ABORT_FINALIZE(RS_RET_RCV_ERR);
}
finalize_it: