From: Kyungwook Tak Date: Thu, 12 Nov 2015 11:45:11 +0000 (+0900) Subject: Fix array out of bound access and mem err handling X-Git-Tag: accepted/tizen/mobile/20151214.134330~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F33%2F51733%2F2;p=platform%2Fcore%2Fsecurity%2Fdrm-service-core-tizen.git Fix array out of bound access and mem err handling Change-Id: I5584f33a3fa41b7b99301b6263c7f6f7e7cb3811 Signed-off-by: Kyungwook Tak --- diff --git a/tadcore/TADCCore/TADC_Core.cpp b/tadcore/TADCCore/TADC_Core.cpp index a28c4fc..e40bb58 100644 --- a/tadcore/TADCCore/TADC_Core.cpp +++ b/tadcore/TADCCore/TADC_Core.cpp @@ -1001,6 +1001,8 @@ int TADC_GetResponseROInfo(IN LPBYTE pszXML, T_RO *t_RO) if (t_RO->t_Permission.t_Individual.DUID == NULL) { DRM_TAPPS_EXCEPTION("TADC_IF_MemCmp Error Code = %x", TADC_MEMAlOC_ERROR); + nResult = -2; + goto finish; } TADC_IF_MemSet(t_RO->t_Permission.t_Individual.DUID, 0, length + 1); diff --git a/tappsd/src/rights/DTapps2Rights.cpp b/tappsd/src/rights/DTapps2Rights.cpp index 3f0143e..6efcc68 100644 --- a/tappsd/src/rights/DTapps2Rights.cpp +++ b/tappsd/src/rights/DTapps2Rights.cpp @@ -699,6 +699,8 @@ int DTappsGetROInfo(const char* pszXML, T_RO *t_RO, unsigned char* name) if (t_RO->t_Permission.t_Individual.DUID == NULL) { DRM_TAPPS_EXCEPTION("TADC_IF_MemCmp Error Code = %x", TADC_MEMAlOC_ERROR); + nResult = -2; + goto finish; } TADC_IF_MemSet(t_RO->t_Permission.t_Individual.DUID, 0, length + 1); diff --git a/tappsd/src/util/DTapps2Base64.cpp b/tappsd/src/util/DTapps2Base64.cpp index e7800ae..205c9d7 100644 --- a/tappsd/src/util/DTapps2Base64.cpp +++ b/tappsd/src/util/DTapps2Base64.cpp @@ -94,7 +94,7 @@ int DTappsB64Decode(unsigned char* in, int in_size, unsigned char* out, int& out for( i=j=k=0; i < in_size; i++ ) { - if( in[i] > 128 ) + if( in[i] >= 128 ) continue; c[j] = MAP[(unsigned char)in[i]]; if( c[j] == 64 )