From dfae5feb8c09c285a7af403f07a18254d0a86ad3 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Thu, 26 Sep 2013 14:55:47 +0200 Subject: mmrfc5424addhmac: correctly handle empty structured data --- plugins/mmrfc5424addhmac/mmrfc5424addhmac.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'plugins/mmrfc5424addhmac/mmrfc5424addhmac.c') 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; } -- cgit v1.2.3