summaryrefslogtreecommitdiffstats
path: root/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-09-26 14:55:47 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2013-09-26 14:55:47 +0200
commitdfae5feb8c09c285a7af403f07a18254d0a86ad3 (patch)
treec9622a02caa86218c8b31ed1df261bbb88a7544f /plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
parentb810f0dd3ade85efeb7dc9b99fade798764d0ac2 (diff)
downloadrsyslog-dfae5feb8c09c285a7af403f07a18254d0a86ad3.tar.gz
rsyslog-dfae5feb8c09c285a7af403f07a18254d0a86ad3.tar.bz2
rsyslog-dfae5feb8c09c285a7af403f07a18254d0a86ad3.zip
mmrfc5424addhmac: correctly handle empty structured data
Diffstat (limited to 'plugins/mmrfc5424addhmac/mmrfc5424addhmac.c')
-rw-r--r--plugins/mmrfc5424addhmac/mmrfc5424addhmac.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c b/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
index 6adad187..a7aea9b4 100644
--- a/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
+++ b/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
@@ -276,8 +276,11 @@ isHmacPresent(instanceData *pData, msg_t *pMsg)
uchar sdid[33]; /* RFC-based size limit */
MsgGetStructuredData(pMsg, &sdbuf, &sdlen);
-
found = 0;
+
+ if(sdbuf[0] == '-') /* RFC: struc data is empty! */
+ goto done;
+
i = 0;
while(i < sdlen && !found) {
getSDID(sdbuf, sdlen, &i, sdid);
@@ -288,6 +291,7 @@ isHmacPresent(instanceData *pData, msg_t *pMsg)
skipSDID(sdbuf, sdlen, &i);
}
+done:
return found;
}