LogError("### Line: " << line);
LogError("### Function: " << function);
LogError("########################################################################");
- } catch (Exception) {
+ } catch (Exception &) {
// Just ignore possible double errors
}
"Internal Openssl error in d2i_X509 function.");
}
-static off_t getFileSize(const std::string &location)
+static int getFileSize(const std::string &location, off_t &size)
{
struct stat status;
- stat(location.c_str(), &status);
- return status.st_size;
+ int ret = stat(location.c_str(), &status);
+ size = status.st_size;
+ return ret;
}
CertificatePtr Certificate::createFromFile(const std::string &location)
return CertificatePtr(new Certificate(x509));
}
- off_t filesize = getFileSize(location);
-
+ off_t filesize = 0;
+ if(getFileSize(location, filesize) != 0)
+ VcoreThrowMsg(Certificate::Exception::WrongParamError,
+ "Fail to get file size. : " << location);
if (filesize == 0)
VcoreThrowMsg(Certificate::Exception::WrongParamError,
"File content is empty : " << location);
if (m_fileInfoSet.size() < 2)
return E_SIG_UNKNOWN; // TODO(sangwan.kwon) Add error code (INVALID SIZE)
- VCerr result;
+ VCerr result = E_SIG_UNKNOWN;
for (const auto &sig : m_fileInfoSet) {
m_fileInfo = sig;
m_disregarded = false;
if (m_fileInfoSet.size() < 2)
return E_SIG_UNKNOWN; // TODO(sangwan.kwon) Add error code (INVALID SIZE)
- VCerr result;
+ VCerr result = E_SIG_UNKNOWN;
for (const auto &sig : m_fileInfoSet) {
m_fileInfo = sig;
m_disregarded = false;
vcore_client_delete_certificate_from_store(storeType, certChainName[i]);
free(certChainName[i]);
}
+ free(certChainName);
vcore_client_delete_certificate_from_store(storeType, endCertName.c_str());
}