diff options
author | Warlockbugs <Warlockbugs@users.noreply.github.com> | 2018-03-04 17:53:41 +0300 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2018-03-04 15:53:41 +0100 |
commit | efef6b5e36a8cd8eca023b8aa6a5d8cbd532ca68 (patch) | |
tree | 47e8c0cf598600387543431db2a2312c14f9129a /src/common/Cryptography/ARC4.cpp | |
parent | 1560224d73085801fbde85056bb1117905d1308c (diff) |
Core/Crypto: Transitional Cryptography update for OpenSSL 1.1 (#21533)
Support for both OpenSSL 1.0 LTS and OpenSSL 1.1 versions.
Many Linux distributions are still on 1.0 and will stay on LTS for quite
some time.
Port of CMaNGOS commit: https://github.com/cmangos/mangos-wotlk/commit/e1b0048f052eda46bb27d20224d0339960816ac2
Diffstat (limited to 'src/common/Cryptography/ARC4.cpp')
-rw-r--r-- | src/common/Cryptography/ARC4.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/common/Cryptography/ARC4.cpp b/src/common/Cryptography/ARC4.cpp index a05cf49d6f8..a5e77e92646 100644 --- a/src/common/Cryptography/ARC4.cpp +++ b/src/common/Cryptography/ARC4.cpp @@ -18,34 +18,34 @@ #include "ARC4.h" -ARC4::ARC4(uint32 len) : m_ctx() +ARC4::ARC4(uint32 len) : m_ctx(EVP_CIPHER_CTX_new()) { - EVP_CIPHER_CTX_init(&m_ctx); - EVP_EncryptInit_ex(&m_ctx, EVP_rc4(), nullptr, nullptr, nullptr); - EVP_CIPHER_CTX_set_key_length(&m_ctx, len); + EVP_CIPHER_CTX_init(m_ctx); + EVP_EncryptInit_ex(m_ctx, EVP_rc4(), nullptr, nullptr, nullptr); + EVP_CIPHER_CTX_set_key_length(m_ctx, len); } -ARC4::ARC4(uint8 *seed, uint32 len) : m_ctx() +ARC4::ARC4(uint8* seed, uint32 len) : m_ctx(EVP_CIPHER_CTX_new()) { - EVP_CIPHER_CTX_init(&m_ctx); - EVP_EncryptInit_ex(&m_ctx, EVP_rc4(), nullptr, nullptr, nullptr); - EVP_CIPHER_CTX_set_key_length(&m_ctx, len); - EVP_EncryptInit_ex(&m_ctx, nullptr, nullptr, seed, nullptr); + EVP_CIPHER_CTX_init(m_ctx); + EVP_EncryptInit_ex(m_ctx, EVP_rc4(), nullptr, nullptr, nullptr); + EVP_CIPHER_CTX_set_key_length(m_ctx, len); + EVP_EncryptInit_ex(m_ctx, nullptr, nullptr, seed, nullptr); } ARC4::~ARC4() { - EVP_CIPHER_CTX_cleanup(&m_ctx); + EVP_CIPHER_CTX_free(m_ctx); } -void ARC4::Init(uint8 *seed) +void ARC4::Init(uint8* seed) { - EVP_EncryptInit_ex(&m_ctx, nullptr, nullptr, seed, nullptr); + EVP_EncryptInit_ex(m_ctx, nullptr, nullptr, seed, nullptr); } -void ARC4::UpdateData(int len, uint8 *data) +void ARC4::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); } |