SVACE issue fix 78/129578/3 accepted/tizen/unified/20170518.061105 submit/tizen/20170517.060058 tizen_4.0.m1_release
authorManasij Sur Roy <manasij.r@samsung.com>
Wed, 17 May 2017 05:04:22 +0000 (10:34 +0530)
committerManasij Sur Roy <manasij.r@samsung.com>
Wed, 17 May 2017 05:48:45 +0000 (11:18 +0530)
Change-Id: I7f25c8ee5e4455db7e76ecee5e74a0a85fd8d751
Signed-off-by: Manasij Sur Roy <manasij.r@samsung.com>
common/uafv1tlvutil/src/GetInfoRespTlvEncoder.cpp
common/uafv1tlvutil/src/SignedDataTlvEncoder.cpp
common/uafv1tlvutil/src/Uafv1KrdTlvEncoder.cpp

index 132a586..10d3983 100644 (file)
@@ -463,8 +463,16 @@ AuthInfoTlvEncoder::decode(const unsigned char *rawData)
                SAFE_DELETE(child);
 
                child = tlv_decode(rawData + rawIter);
+               if (child == NULL) {
+                       SAFE_DELETE(tlv->val);
+                       SAFE_DELETE(tlv);
+                       SAFE_DELETE(authInfo);
+
+                       return NULL;
+               }
        }
 
+       SAFE_DELETE(child->val);
        SAFE_DELETE(child);
        SAFE_DELETE(tlv->val);
        SAFE_DELETE(tlv);
@@ -648,6 +656,7 @@ GetInfoRespTlvEncoder::decode(const unsigned char *rawData)
 
        tlv_s *child = tlv_decode(rawData + rawIter);
        if (child == NULL) {
+               SAFE_DELETE(root->val);
                SAFE_DELETE(root);
                return NULL;
        }
@@ -692,6 +701,13 @@ GetInfoRespTlvEncoder::decode(const unsigned char *rawData)
                SAFE_DELETE(child->val);
                SAFE_DELETE(child);
                child = tlv_decode(rawData + rawIter);
+               if (child == NULL) {
+                       SAFE_DELETE(root->val);
+                       SAFE_DELETE(root);
+                       SAFE_DELETE(getInfoResp);
+
+                       return NULL;
+               }
        }
 
        SAFE_DELETE(child->val);
index 94829f0..528cd27 100644 (file)
@@ -90,7 +90,7 @@ SignedDataTlvEncoder::decode(const unsigned char *rawData)
        RET_IF_FAIL(rawData != NULL, NULL);
 
        tlv_s *root = tlv_decode(rawData);
-       RET_IF_FAIL(rawData != NULL, NULL);
+       RET_IF_FAIL(root != NULL, NULL);
 
        int rawIter = 2 + 2;
        int endIter = rawIter + root->len;
index d70db73..0f8640e 100644 (file)
@@ -103,6 +103,7 @@ Uafv1KrdTlvEncoder::decode(const unsigned char *rawData)
        tlv_s *child = tlv_decode(rawData + rawIter);
        if (child == NULL) {
                free(getKrdInfo);
+               SAFE_DELETE(root->val);
                SAFE_DELETE(root);
                return NULL;
        }