Resolves: #2001430 - fix FTBFS due of OpenSSL update

This commit is contained in:
Josef Řídký 2021-10-13 08:55:54 +02:00
parent 19cb4ba13d
commit 35f76abf9a
2 changed files with 57 additions and 22 deletions

View File

@ -1,3 +1,38 @@
diff -urNp a/include/net-snmp/library/snmp_openssl.h b/include/net-snmp/library/snmp_openssl.h
--- a/include/net-snmp/library/snmp_openssl.h 2021-09-15 07:55:39.829901038 +0200
+++ b/include/net-snmp/library/snmp_openssl.h 2021-09-15 07:56:18.656412998 +0200
@@ -44,7 +44,6 @@ extern "C" {
/*
* misc
*/
- void netsnmp_openssl_err_log(const char *prefix);
void netsnmp_openssl_null_checks(SSL *ssl, int *nullAuth, int *nullCipher);
/*
diff -urNp a/snmplib/snmp_openssl.c b/snmplib/snmp_openssl.c
--- a/snmplib/snmp_openssl.c 2021-09-15 07:55:39.785900458 +0200
+++ b/snmplib/snmp_openssl.c 2021-09-15 07:57:30.914417600 +0200
@@ -937,20 +937,6 @@ netsnmp_openssl_cert_issued_by(X509 *iss
return (X509_check_issued(issuer, cert) == X509_V_OK);
}
-
-#ifndef NETSNMP_FEATURE_REMOVE_OPENSSL_ERR_LOG
-void
-netsnmp_openssl_err_log(const char *prefix)
-{
- unsigned long err;
- for (err = ERR_get_error(); err; err = ERR_get_error()) {
- snmp_log(LOG_ERR,"%s: %ld\n", prefix ? prefix: "openssl error", err);
- snmp_log(LOG_ERR, "library=%d, function=%d, reason=%d\n",
- ERR_GET_LIB(err), ERR_GET_FUNC(err), ERR_GET_REASON(err));
- }
-}
-#endif /* NETSNMP_FEATURE_REMOVE_OPENSSL_ERR_LOG */
-
void
netsnmp_openssl_null_checks(SSL *ssl, int *null_auth, int *null_cipher)
{
diff -urNp a/snmplib/transports/snmpTLSBaseDomain.c b/snmplib/transports/snmpTLSBaseDomain.c diff -urNp a/snmplib/transports/snmpTLSBaseDomain.c b/snmplib/transports/snmpTLSBaseDomain.c
--- a/snmplib/transports/snmpTLSBaseDomain.c 2021-05-18 11:15:09.247472175 +0200 --- a/snmplib/transports/snmpTLSBaseDomain.c 2021-05-18 11:15:09.247472175 +0200
+++ b/snmplib/transports/snmpTLSBaseDomain.c 2021-05-24 09:39:29.297494727 +0200 +++ b/snmplib/transports/snmpTLSBaseDomain.c 2021-05-24 09:39:29.297494727 +0200
@ -19,34 +54,31 @@ diff -urNp a/snmplib/transports/snmpTLSBaseDomain.c b/snmplib/transports/snmpTLS
/* this is called during negotiation */ /* this is called during negotiation */
int verify_callback(int ok, X509_STORE_CTX *ctx) { int verify_callback(int ok, X509_STORE_CTX *ctx) {
int err, depth; int err, depth;
@@ -1218,14 +1207,14 @@ void _openssl_log_error(int rc, SSL *con @@ -1187,27 +1176,6 @@ void _openssl_log_error(int rc, SSL *con
ERR_reason_error_string(ERR_get_error()));
} }
-
/* other errors */ - /* other errors */
- while ((numerical_reason = - while ((numerical_reason =
+/* while ((numerical_reason = - ERR_get_error_all(&file, &line, &func, &data, &flags)) != 0) {
ERR_get_error_all(&file, &line, &func, &data, &flags)) != 0) { - snmp_log(LOG_ERR, "%s (file %s, func %s, line %d)\n",
snmp_log(LOG_ERR, "%s (file %s, func %s, line %d)\n",
- ERR_error_string(numerical_reason, NULL), file, func, line); - ERR_error_string(numerical_reason, NULL), file, func, line);
+ ERR_error_string(numerical_reason, NULL), file, func, line);*/ -
- /* if we have a text translation: */
/* if we have a text translation: */
- if (data && (flags & ERR_TXT_STRING)) { - if (data && (flags & ERR_TXT_STRING)) {
- snmp_log(LOG_ERR, " Textual Error: %s\n", data); - snmp_log(LOG_ERR, " Textual Error: %s\n", data);
+/* if (data && (flags & ERR_TXT_STRING)) { - /*
+ snmp_log(LOG_ERR, " Textual Error: %s\n", data);*/ - * per openssl man page: If it has been allocated by
/* - * OPENSSL_malloc(), *flags&ERR_TXT_MALLOCED is true.
* per openssl man page: If it has been allocated by - *
* OPENSSL_malloc(), *flags&ERR_TXT_MALLOCED is true. - * arggh... stupid openssl prototype for ERR_get_error_line_data
@@ -1234,9 +1223,9 @@ void _openssl_log_error(int rc, SSL *con - * wants a const char **, but returns something that we might
* wants a const char **, but returns something that we might - * need to free??
* need to free?? - */
*/
- if (flags & ERR_TXT_MALLOCED) - if (flags & ERR_TXT_MALLOCED)
+/* if (flags & ERR_TXT_MALLOCED) - OPENSSL_free(NETSNMP_REMOVE_CONST(void *, data)); }
OPENSSL_free(NETSNMP_REMOVE_CONST(void *, data)); }
- } - }
+ }*/
snmp_log(LOG_ERR, "---- End of OpenSSL Errors ----\n"); snmp_log(LOG_ERR, "---- End of OpenSSL Errors ----\n");
} }

View File

@ -10,7 +10,7 @@
Summary: A collection of SNMP protocol tools and libraries Summary: A collection of SNMP protocol tools and libraries
Name: net-snmp Name: net-snmp
Version: 5.9.1 Version: 5.9.1
Release: 6%{?dist} Release: 7%{?dist}
Epoch: 1 Epoch: 1
License: BSD License: BSD
@ -498,6 +498,9 @@ LD_LIBRARY_PATH=%{buildroot}/%{_libdir} make test
%{_libdir}/libnetsnmptrapd*.so.%{soname}* %{_libdir}/libnetsnmptrapd*.so.%{soname}*
%changelog %changelog
* Wed Oct 13 2021 Josef Ridky <jridky@redhat.com> - 1:5.9.1-7
- fix FTBFS due of OpenSSL update (#2001430)
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1:5.9.1-6 * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1:5.9.1-6
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688 Related: rhbz#1991688