From cd53d13fd12f8dd86514b2894e62ee6612566975 Mon Sep 17 00:00:00 2001 From: open-license-manager <rillf@maildrop.cc> Date: 周一, 04 8月 2014 00:38:17 +0800 Subject: [PATCH] linux tests ok --- src/license-generator/LicenseSigner.cpp | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/license-generator/LicenseSigner.cpp b/src/license-generator/LicenseSigner.cpp index 15f2268..53fd2f5 100644 --- a/src/license-generator/LicenseSigner.cpp +++ b/src/license-generator/LicenseSigner.cpp @@ -20,10 +20,11 @@ using namespace std; LicenseSigner::LicenseSigner() { - + os_initialize(); } LicenseSigner::LicenseSigner(const std::string& alternatePrimaryKey) { + os_initialize(); } string LicenseSigner::Opensslb64Encode(size_t slen, unsigned char* signature) { @@ -49,9 +50,7 @@ } string LicenseSigner::signString(const string& license) { - ERR_load_ERR_strings(); - ERR_load_crypto_strings(); - OpenSSL_add_all_algorithms(); + size_t slen; unsigned char* signature; signature = NULL; @@ -60,7 +59,8 @@ if (!mdctx) { throw logic_error("Message digest creation context"); } - const char *private_key = PRIVATE_KEY; + const char *private_key = PRIVATE_KEY + ; BIO* bio = BIO_new_mem_buf((void*) (private_key), strlen(private_key)); EVP_PKEY *pktmp = PEM_read_bio_PrivateKey(bio, NULL, NULL, NULL); BIO_free(bio); @@ -98,8 +98,8 @@ */ //bio = BIO_new_fp(stdout, BIO_NOCLOSE); /*int encodedSize = 4 * ceil(slen / 3); - char* buffer = (char*) (malloc(encodedSize + 1)); - memset(buffer,0,encodedSize+1);*/ + char* buffer = (char*) (malloc(encodedSize + 1)); + memset(buffer,0,encodedSize+1);*/ string signatureStr = Opensslb64Encode(slen, signature); /* * BIO *bio, *b64; @@ -125,6 +125,8 @@ */ /* Clean up */ //free(buffer); + if (pktmp) + EVP_PKEY_free(pktmp); if (signature) OPENSSL_free(signature); -- Gitblit v1.9.1