| fix build with libressl >= 3.5.0 |
| |
| Fix the following build failure with libressl >= 3.5.0: |
| |
| auth_priv.cpp: In member function 'virtual int Snmp_pp::AuthMD5::password_to_key(const unsigned char*, unsigned int, const unsigned char*, unsigned int, unsigned char*, unsigned int*)': |
| auth_priv.cpp:1132:20: error: aggregate 'Snmp_pp::MD5HashStateType md5_hash_state' has incomplete type and cannot be defined |
| MD5HashStateType md5_hash_state; |
| ^~~~~~~~~~~~~~ |
| |
| Fixes: |
| - http://autobuild.buildroot.org/results/b50b883c03e82564198a8b7e91bd14bf007772e0 |
| |
| Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> |
| [Upstream status: merged (emailed to katz.agentpp.com@magenta.de)] |
| |
| diff -Naurp snmp++-3.4.9.orig/src/auth_priv.cpp snmp++-3.4.9/src/auth_priv.cpp |
| --- snmp++-3.4.9.orig/src/auth_priv.cpp 2022-05-13 11:39:14.083038544 +0200 |
| +++ snmp++-3.4.9/src/auth_priv.cpp 2022-05-13 15:00:42.576102348 +0200 |
| @@ -79,8 +79,9 @@ static const char *loggerModuleName = "s |
| |
| /* -- START: Defines for OpenSSL -- */ |
| |
| -#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) |
| -// OpenSSL versions up to 1.0.x and LibreSSL |
| +#if OPENSSL_VERSION_NUMBER < 0x10100000L || \ |
| + (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) |
| +// OpenSSL versions up to 1.0.x and LibreSSL versions up to 3.4.x |
| typedef EVP_MD_CTX EVPHashStateType; |
| |
| int evpAllocAndInit(EVP_MD_CTX *ctx, const EVP_MD *md) |
| @@ -138,7 +139,7 @@ typedef EVP_MD_CTX* MD5HashSta |
| #define MD5_PROCESS(s, p, l) EVP_DigestUpdate(*(s), p, l) |
| #define MD5_DONE(s, k) evpDigestFinalAndFree(s, k) |
| |
| -#endif // OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) |
| +#endif // OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) |
| |
| typedef DES_key_schedule DESCBCType; |
| #define DES_CBC_START_ENCRYPT(c, iv, k, kl, r, s) \ |