Blame SOURCES/net-snmp-5.8-clientaddr-error-message.patch

5ab818
diff -urNp a/snmplib/snmp_api.c b/snmplib/snmp_api.c
5ab818
--- a/snmplib/snmp_api.c	2020-11-26 11:05:51.084788775 +0100
5ab818
+++ b/snmplib/snmp_api.c	2020-11-26 11:08:27.850751397 +0100
5ab818
@@ -235,7 +235,7 @@ static const char *api_errors[-SNMPERR_M
5ab818
     "No error",                 /* SNMPERR_SUCCESS */
5ab818
     "Generic error",            /* SNMPERR_GENERR */
5ab818
     "Invalid local port",       /* SNMPERR_BAD_LOCPORT */
5ab818
-    "Unknown host",             /* SNMPERR_BAD_ADDRESS */
5ab818
+    "Invalid address",          /* SNMPERR_BAD_ADDRESS */
5ab818
     "Unknown session",          /* SNMPERR_BAD_SESSION */
5ab818
     "Too long",                 /* SNMPERR_TOO_LONG */
5ab818
     "No socket",                /* SNMPERR_NO_SOCKET */
5ab818
@@ -1662,7 +1662,9 @@ _sess_open(netsnmp_session * in_session)
5ab818
         DEBUGMSGTL(("_sess_open", "couldn't interpret peername\n"));
5ab818
         in_session->s_snmp_errno = SNMPERR_BAD_ADDRESS;
5ab818
         in_session->s_errno = errno;
5ab818
-        snmp_set_detail(in_session->peername);
5ab818
+        if (!netsnmp_ds_get_string(NETSNMP_DS_LIBRARY_ID,
5ab818
+                                    NETSNMP_DS_LIB_CLIENT_ADDR))
5ab818
+            snmp_set_detail(in_session->peername);
5ab818
         return NULL;
5ab818
     }
5ab818
 
5ab818
diff -ruNp a/snmplib/transports/snmpUDPIPv4BaseDomain.c b/snmplib/transports/snmpUDPIPv4BaseDomain.c
5ab818
--- a/snmplib/transports/snmpUDPIPv4BaseDomain.c	2021-01-06 12:51:51.948106797 +0100
5ab818
+++ b/snmplib/transports/snmpUDPIPv4BaseDomain.c	2021-01-06 14:17:31.029745744 +0100
5ab818
@@ -209,6 +209,8 @@ netsnmp_udpipv4base_transport_bind(netsn
5ab818
         DEBUGMSGTL(("netsnmp_udpbase",
5ab818
                     "failed to bind for clientaddr: %d %s\n",
5ab818
                     errno, strerror(errno)));
5ab818
+        NETSNMP_LOGONCE((LOG_ERR, "Cannot bind for clientaddr: %s\n",
5ab818
+                    strerror(errno)));
5ab818
         netsnmp_socketbase_close(t);
5ab818
         return 1;
5ab818
     }