[IOT-1652] Fix Doxm Handler to check ehRet during ownership transfer
authorJongmin Choi <jminl.choi@samsung.com>
Mon, 12 Dec 2016 07:42:47 +0000 (16:42 +0900)
committerRandeep Singh <randeep.s@samsung.com>
Wed, 14 Dec 2016 04:01:18 +0000 (04:01 +0000)
Kevin noted that ehRet value set at lines 1120 or 1125 of doxmresource.c
will be overwritten and never checked if __WITH_DTLS__ or __WITH_TLS__ is defined
due to the patch https://gerrit.iotivity.org/gerrit/#/c/14739
This patch fixes the issue.
https://jira.iotivity.org/browse/IOT-1652

Patch #1: Initial upload

Change-Id: Ieda643f10d3116d785f293604393e8709c94fe80
Signed-off-by: Jongmin Choi <jminl.choi@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/15463
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Jongsung Lee <js126.lee@samsung.com>
Reviewed-by: Kevin Kane <kkane@microsoft.com>
Reviewed-by: Randeep Singh <randeep.s@samsung.com>
(cherry picked from commit 8e088ff2f9e41f339b0cef663b9d8cb688840e14)
Reviewed-on: https://gerrit.iotivity.org/gerrit/15539

resource/csdk/security/src/doxmresource.c

index 2070117..317a079 100644 (file)
@@ -1131,6 +1131,7 @@ static OCEntityHandlerResult HandleDoxmPostRequest(OCEntityHandlerRequest * ehRe
                         {
                             OIC_LOG(WARNING, TAG, "Failed to update DOXM in persistent storage");
                             ehRet = OC_EH_ERROR;
+                            goto exit;
                         }
                         OIC_LOG (INFO, TAG, "Doxm EntityHandle  enabling AnonECDHCipherSuite");
 #if defined(__WITH_DTLS__) || defined(__WITH_TLS__)
@@ -1153,6 +1154,7 @@ static OCEntityHandlerResult HandleDoxmPostRequest(OCEntityHandlerRequest * ehRe
                         {
                             OIC_LOG(ERROR, TAG, "Failed to update DOXM in persistent storage");
                             ehRet = OC_EH_ERROR;
+                            goto exit;
                         }
 
                         /*