From d018476757e503b614d56f942132dd7c3801c1bb Mon Sep 17 00:00:00 2001
From: "ol.beketov"
Date: Thu, 4 May 2017 16:42:08 +0300
Subject: [PATCH] [IOT-2092] Check null pointer before dereference
Change-Id: Ib8032c41e8910087be5c5b30fee9a7b4a3992f01
Signed-off-by: ol.beketov
Reviewed-on: https://gerrit.iotivity.org/gerrit/19623
Tested-by: jenkins-iotivity
Reviewed-by: Dan Mihai
Reviewed-by: Andrii Shtompel
Reviewed-by: Randeep Singh
---
plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c b/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c
index 877cf06..a42926d 100644
--- a/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c
+++ b/plugins/zigbee_wrapper/telegesis_wrapper/src/telegesis_socket.c
@@ -475,11 +475,10 @@ TWResultCode TWRetrieveEUI(PIPlugin_Zigbee * plugin, TWSock * twSock)
entry = readEntry(twSock->fd);
if(!entry)
{
- result = TWReleaseMutex(&twSock->mutex);
- if(result != TW_RESULT_OK)
- {
- goto exit;
- }
+ TWReleaseMutex(&twSock->mutex);
+ // in case entry is NULL, further processing will cause crash or UB
+ result = TW_RESULT_ERROR;
+ goto exit;
}
twSock->eui = (char *) OICMalloc(strlen(entry->lines[0].line)+1);
if(!twSock->eui)
--
2.7.4