From 3a7e06653206f488731c49e3e70f69f2ab99cc19 Mon Sep 17 00:00:00 2001 From: Ashwini Kumar Date: Mon, 21 Mar 2016 10:46:26 +0530 Subject: [PATCH] Fixed json2cbor to handle private Data - defined MAX_RANGE for file read Change-Id: Ia7c2b30e1bb97d2aee239cf0916eab52c0d404c4 Signed-off-by: Ashwini Kumar Reviewed-on: https://gerrit.iotivity.org/gerrit/6117 Tested-by: jenkins-iotivity Reviewed-by: dongik Lee Reviewed-by: Randeep Singh --- resource/csdk/security/tool/json2cbor.c | 13 +++++++++++-- .../csdk/stack/samples/linux/secure/oic_amss_db.dat | Bin 586 -> 599 bytes .../stack/samples/linux/secure/oic_svr_db_client.dat | Bin 470 -> 483 bytes .../stack/samples/linux/secure/oic_svr_db_server.dat | Bin 1332 -> 1377 bytes 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/resource/csdk/security/tool/json2cbor.c b/resource/csdk/security/tool/json2cbor.c index 3739eab..61a9303 100644 --- a/resource/csdk/security/tool/json2cbor.c +++ b/resource/csdk/security/tool/json2cbor.c @@ -41,7 +41,7 @@ #include "security_internals.h" #define TAG "JSON2CBOR" -#define MAX_RANGE 18446744073709551615 +#define MAX_RANGE ((size_t)-1) //SVR database buffer block size static const size_t DB_FILE_SIZE_BLOCK = 1023; @@ -768,7 +768,16 @@ OicSecCred_t * JSONToCredBin(const char * jsonStr) jsonObjLen = strlen(jsonObj->valuestring) + 1; cred->privateData.data = (uint8_t *)OICCalloc(1, jsonObjLen); VERIFY_NON_NULL(TAG, (cred->privateData.data), ERROR); - memcpy(cred->privateData.data, jsonObj->valuestring, jsonObjLen); + outLen = 0; + uint8_t pskKey[OWNER_PSK_LENGTH_256] = {}; + + memset(pskKey, 0, sizeof(pskKey)); + b64Ret = b64Decode(jsonObj->valuestring, strlen(jsonObj->valuestring), + pskKey, sizeof(pskKey), &outLen); + VERIFY_SUCCESS(TAG, (b64Ret == B64_OK && + outLen <= OWNER_PSK_LENGTH_256), ERROR); + memcpy(cred->privateData.data, pskKey, outLen); + cred->privateData.len = outLen; } #ifdef __WITH_X509__ else if (SIGNED_ASYMMETRIC_KEY == cred->credType && cJSON_Object == jsonObj->type) diff --git a/resource/csdk/stack/samples/linux/secure/oic_amss_db.dat b/resource/csdk/stack/samples/linux/secure/oic_amss_db.dat index 3ece40918ac9d5e5ec2cfd93250fefe3f2fb1738..4a427c4685a9598d46dbd064946365824ee2c642 100644 GIT binary patch delta 52 vcmX@ba-C(vGDfC=<&#%1ny@CP6eNF{e1}nnF=FyhMt#8mCp0kGkVz5%_MH&^ delta 38 scmcc4a*AccGDarvWs_GhnoNGkD8m>q`5&V`r$=D6moo@Ywque6024F})&Kwi diff --git a/resource/csdk/stack/samples/linux/secure/oic_svr_db_client.dat b/resource/csdk/stack/samples/linux/secure/oic_svr_db_client.dat index e258f9e3b932880de76a2b81c2dc317394983729..e2de34b75c1d5e545cc1e369cccf6f13491a2b69 100644 GIT binary patch delta 77 zcmcb{{Fr$IFC$aH^2z*+CMwA(1<7Ah^2_sz0*uf=N^((ZN_QW9 S1M0~3at7ha8<`{+{{sO3ks*)( -- 2.7.4