summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDongsun Lee <ds73.lee@samsung.com>2018-10-02 13:32:06 +0900
committerDongsun Lee <ds73.lee@samsung.com>2018-10-02 13:32:06 +0900
commit8fadf1375a3bd27327faa7e6caff385c059e7888 (patch)
tree365f3d3da5b1fefab6bef5171b4a2b8818946886
parent7032476808fd4502bb6235711707146e5deb681f (diff)
downloaddrm-service-core-tizen-8fadf1375a3bd27327faa7e6caff385c059e7888.tar.gz
drm-service-core-tizen-8fadf1375a3bd27327faa7e6caff385c059e7888.tar.bz2
drm-service-core-tizen-8fadf1375a3bd27327faa7e6caff385c059e7888.zip
Fix SVACE defects
- WGID=246297,246301,246304,246313:UNCHECKED_FUNC_RES.LIB.STRICT Change-Id: I7c63a1fb8835713fd25981384b13aeb55fecd864 Signed-off-by: Dongsun Lee <ds73.lee@samsung.com>
-rw-r--r--tadcore/DrmFileHandleMgr/DrmFileHandler.cpp10
-rw-r--r--tadcore/Svc/DrmTdcSvc.cpp42
-rw-r--r--tadcore/XMLParser/CXMLFile.cpp10
3 files changed, 54 insertions, 8 deletions
diff --git a/tadcore/DrmFileHandleMgr/DrmFileHandler.cpp b/tadcore/DrmFileHandleMgr/DrmFileHandler.cpp
index 879f80a..07b3735 100644
--- a/tadcore/DrmFileHandleMgr/DrmFileHandler.cpp
+++ b/tadcore/DrmFileHandleMgr/DrmFileHandler.cpp
@@ -146,7 +146,10 @@ int DrmFileHandler::Construct(const char *szDrmFilePath)
m_PlaintextStartOffset = t_FileHeader.Offset1 + 35 + t_DRMHeader.XmlSize;
- fseek(m_pFP, 0, SEEK_END);
+ if (fseek(m_pFP, 0, SEEK_END) != 0) {
+ DRM_TAPPS_EXCEPTION("operation fail. fseek");
+ return TADC_FILE_OPEN_ERROR;
+ }
m_OriginEndOffset = ftell(m_pFP);
if (m_OriginEndOffset < m_PlaintextStartOffset) {
DRM_TAPPS_EXCEPTION("Invalid file offset... offset is bigger than file size");
@@ -163,7 +166,10 @@ int DrmFileHandler::Construct(const char *szDrmFilePath)
m_DrmEndOffset = m_plaintextSize;
- fseek(m_pFP, m_PlaintextStartOffset, SEEK_SET);
+ if (fseek(m_pFP, m_PlaintextStartOffset, SEEK_SET) != 0) {
+ DRM_TAPPS_EXCEPTION("operation fail. fseek");
+ return TADC_FILE_OPEN_ERROR;
+ }
m_OriginCurOffset = ftell(m_pFP);
m_DrmCurOffset = 0;
diff --git a/tadcore/Svc/DrmTdcSvc.cpp b/tadcore/Svc/DrmTdcSvc.cpp
index b0b742c..58ed521 100644
--- a/tadcore/Svc/DrmTdcSvc.cpp
+++ b/tadcore/Svc/DrmTdcSvc.cpp
@@ -181,11 +181,29 @@ bool DrmTdcDecryptPackage(const char *pTADCFilepath, const char *pLicenseBuf,
return FALSE;
}
- fseek(hFile1, 0, SEEK_END);
+ if (fseek(hFile1, 0, SEEK_END) != 0) {
+ DRM_TAPPS_EXCEPTION("fseek failed");
+ fclose(hFile1);
+ fclose(hFile2);
+ TADC_MEMFree_FileHeader(&t_FileHeader);
+ TADC_MEMFree_DRMHeader(&t_DRMHeader);
+ TADC_MEMFree_RO(&t_RO);
+ TADC_IF_Free(pReadBuf);
+ return FALSE;
+ }
long size1 = ftell(hFile1);
long offset = static_cast<long>(t_FileHeader.Offset1 + 35 + t_DRMHeader.XmlSize);
- fseek(hFile1, offset, SEEK_SET);
+ if (fseek(hFile1, offset, SEEK_SET) != 0) {
+ DRM_TAPPS_EXCEPTION("fseek failed");
+ fclose(hFile1);
+ fclose(hFile2);
+ TADC_MEMFree_FileHeader(&t_FileHeader);
+ TADC_MEMFree_DRMHeader(&t_DRMHeader);
+ TADC_MEMFree_RO(&t_RO);
+ TADC_IF_Free(pReadBuf);
+ return FALSE;
+ }
if (size1 < offset) {
DRM_TAPPS_EXCEPTION("Invalid offset... offset is bigger than file size");
@@ -319,11 +337,27 @@ bool DrmTdcDecryptPackage2(const char *pTADCFilepath, T_RO t_RO,
return FALSE;
}
- fseek(hFile1, 0, SEEK_END);
+ if (fseek(hFile1, 0, SEEK_END) != 0) {
+ DRM_TAPPS_EXCEPTION("fseek failed");
+ fclose(hFile1);
+ fclose(hFile2);
+ TADC_MEMFree_FileHeader(&t_FileHeader);
+ TADC_MEMFree_DRMHeader(&t_DRMHeader);
+ TADC_IF_Free(pReadBuf);
+ return FALSE;
+ }
long size1 = ftell(hFile1);
long offset = static_cast<long>(t_FileHeader.Offset1 + 35 + t_DRMHeader.XmlSize);
- fseek(hFile1, offset, SEEK_SET);
+ if (fseek(hFile1, offset, SEEK_SET) != 0) {
+ DRM_TAPPS_EXCEPTION("fseek failed");
+ fclose(hFile1);
+ fclose(hFile2);
+ TADC_MEMFree_FileHeader(&t_FileHeader);
+ TADC_MEMFree_DRMHeader(&t_DRMHeader);
+ TADC_IF_Free(pReadBuf);
+ return FALSE;
+ }
if (size1 < offset) {
DRM_TAPPS_EXCEPTION("Invalid offset... offset is bigger than file size");
diff --git a/tadcore/XMLParser/CXMLFile.cpp b/tadcore/XMLParser/CXMLFile.cpp
index d1433a2..52ecfe3 100644
--- a/tadcore/XMLParser/CXMLFile.cpp
+++ b/tadcore/XMLParser/CXMLFile.cpp
@@ -99,9 +99,15 @@ int CXMLFile::LoadFromFile(LPCTSTR pszFileName)
goto finish;
}
- fseek(hFile, 0, SEEK_END);
+ if (fseek(hFile, 0, SEEK_END) != 0) {
+ nResult = -1;
+ goto finish;
+ }
dwFileSize = ftell(hFile);
- fseek(hFile, 0, SEEK_SET);
+ if (fseek(hFile, 0, SEEK_SET) != 0) {
+ nResult = -1;
+ goto finish;
+ }
if (dwFileSize > LONG_MAX - 256) {
nResult = -1;