Disable checking parameters for non symmetric key
authorDmitrii Zhuravlev <d.zhuravlev@samsung.com>
Tue, 22 Sep 2015 13:18:32 +0000 (16:18 +0300)
committerSachin Agrawal <sachin.agrawal@intel.com>
Fri, 2 Oct 2015 00:29:30 +0000 (00:29 +0000)
Disables the second device and key length checking,
in the case of credential provisioning based on the types
that are different from SYMMETRIC_PAIR_WISE_KEY.

Change-Id: I8dc8581e7af7ef104e7e2dd473c53d60acc1c9d9
Signed-off-by: Dmitrii Zhuravlev <d.zhuravlev@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/2931
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Sachin Agrawal <sachin.agrawal@intel.com>
(cherry picked from commit 84a8188c7d02881a46dc1f682e046463fed74c14)
Reviewed-on: https://gerrit.iotivity.org/gerrit/3379
Reviewed-by: dongik Lee <dongik.lee@samsung.com>
resource/csdk/security/provisioning/src/secureresourceprovider.c

index 78846ff..a6a9e35 100755 (executable)
@@ -618,10 +618,14 @@ OCStackResult SRPProvisionCredentials(void *ctx, OicSecCredType_t type, size_t k
                                       OCProvisionResultCB resultCallback)
 {
     VERIFY_NON_NULL(TAG, pDev1, ERROR,  OC_STACK_INVALID_PARAM);
-    VERIFY_NON_NULL(TAG, pDev2, ERROR,  OC_STACK_INVALID_PARAM);
+    if (SYMMETRIC_PAIR_WISE_KEY == type)
+    {
+        VERIFY_NON_NULL(TAG, pDev2, ERROR,  OC_STACK_INVALID_PARAM);
+    }
     VERIFY_NON_NULL(TAG, resultCallback, ERROR,  OC_STACK_INVALID_CALLBACK);
 
-    if (!(keySize == OWNER_PSK_LENGTH_128 || keySize == OWNER_PSK_LENGTH_256))
+    if (SYMMETRIC_PAIR_WISE_KEY == type &&
+       !(OWNER_PSK_LENGTH_128 == keySize || OWNER_PSK_LENGTH_256 == keySize))
     {
         OC_LOG(INFO, TAG, "Invalid key size");
         return OC_STACK_INVALID_PARAM;