diff --git a/src/shared/Auth/Hmac.cpp b/src/shared/Auth/Hmac.cpp index 765ba5e..75313be 100644 --- a/src/shared/Auth/Hmac.cpp +++ b/src/shared/Auth/Hmac.cpp @@ -23,13 +23,13 @@ HmacHash::HmacHash(uint32 len, uint8 *seed) { ASSERT(len == SEED_KEY_SIZE); - HMAC_CTX_init(&m_ctx); - HMAC_Init_ex(&m_ctx, seed, SEED_KEY_SIZE, EVP_sha1(), NULL); + m_ctx = HMAC_CTX_new(); + HMAC_Init_ex(m_ctx, seed, SEED_KEY_SIZE, EVP_sha1(), NULL); } HmacHash::~HmacHash() { - HMAC_CTX_cleanup(&m_ctx); + HMAC_CTX_free(m_ctx); } void HmacHash::UpdateBigNumber(BigNumber *bn) @@ -39,19 +39,19 @@ void HmacHash::UpdateBigNumber(BigNumber *bn) void HmacHash::UpdateData(const uint8 *data, int length) { - HMAC_Update(&m_ctx, data, length); + HMAC_Update(m_ctx, data, length); } void HmacHash::Finalize() { uint32 length = 0; - HMAC_Final(&m_ctx, (uint8*)m_digest, (unsigned int*)&length); + HMAC_Final(m_ctx, (uint8*)m_digest, (unsigned int*)&length); ASSERT(length == SHA_DIGEST_LENGTH) } uint8 *HmacHash::ComputeHash(BigNumber *bn) { - HMAC_Update(&m_ctx, bn->AsByteArray(), bn->GetNumBytes()); + HMAC_Update(m_ctx, bn->AsByteArray(), bn->GetNumBytes()); Finalize(); return (uint8*)m_digest; } diff --git a/src/shared/Auth/Hmac.h b/src/shared/Auth/Hmac.h index b72cfd3..822a032 100644 --- a/src/shared/Auth/Hmac.h +++ b/src/shared/Auth/Hmac.h @@ -39,7 +39,7 @@ class HmacHash uint8 *GetDigest() { return (uint8*)m_digest; } int GetLength() { return SHA_DIGEST_LENGTH; } private: - HMAC_CTX m_ctx; + HMAC_CTX *m_ctx; uint8 m_digest[SHA_DIGEST_LENGTH]; }; #endif diff --git a/src/shared/Auth/SARC4.cpp b/src/shared/Auth/SARC4.cpp index e9c4114..9d421cc 100644 --- a/src/shared/Auth/SARC4.cpp +++ b/src/shared/Auth/SARC4.cpp @@ -21,32 +21,32 @@ SARC4::SARC4() { - EVP_CIPHER_CTX_init(&m_ctx); - EVP_EncryptInit_ex(&m_ctx, EVP_rc4(), NULL, NULL, NULL); - EVP_CIPHER_CTX_set_key_length(&m_ctx, SHA_DIGEST_LENGTH); + m_ctx = EVP_CIPHER_CTX_new(); + EVP_EncryptInit_ex(m_ctx, EVP_rc4(), NULL, NULL, NULL); + EVP_CIPHER_CTX_set_key_length(m_ctx, SHA_DIGEST_LENGTH); } SARC4::SARC4(uint8 *seed) { - EVP_CIPHER_CTX_init(&m_ctx); - EVP_EncryptInit_ex(&m_ctx, EVP_rc4(), NULL, NULL, NULL); - EVP_CIPHER_CTX_set_key_length(&m_ctx, SHA_DIGEST_LENGTH); - EVP_EncryptInit_ex(&m_ctx, NULL, NULL, seed, NULL); + m_ctx = EVP_CIPHER_CTX_new(); + EVP_EncryptInit_ex(m_ctx, EVP_rc4(), NULL, NULL, NULL); + EVP_CIPHER_CTX_set_key_length(m_ctx, SHA_DIGEST_LENGTH); + EVP_EncryptInit_ex(m_ctx, NULL, NULL, seed, NULL); } SARC4::~SARC4() { - EVP_CIPHER_CTX_cleanup(&m_ctx); + EVP_CIPHER_CTX_cleanup(m_ctx); } void SARC4::Init(uint8 *seed) { - EVP_EncryptInit_ex(&m_ctx, NULL, NULL, seed, NULL); + EVP_EncryptInit_ex(m_ctx, NULL, NULL, seed, NULL); } void SARC4::UpdateData(int len, uint8 *data) { int outlen = 0; - EVP_EncryptUpdate(&m_ctx, data, &outlen, data, len); - EVP_EncryptFinal_ex(&m_ctx, data, &outlen); + EVP_EncryptUpdate(m_ctx, data, &outlen, data, len); + EVP_EncryptFinal_ex(m_ctx, data, &outlen); } diff --git a/src/shared/Auth/SARC4.h b/src/shared/Auth/SARC4.h index 45d1e49..22b9e90 100644 --- a/src/shared/Auth/SARC4.h +++ b/src/shared/Auth/SARC4.h @@ -31,6 +31,6 @@ class SARC4 void Init(uint8 *seed); void UpdateData(int len, uint8 *data); private: - EVP_CIPHER_CTX m_ctx; + EVP_CIPHER_CTX *m_ctx; }; #endif