Hello, As you may have noticed multiple people asked to add SO_BINDTODEVICE support to Net-SNMP. This patch series adds such support by allowing to specify the name of the network interface to bind a Net-SNMP endpoint to as "@<interface name>". An example:
agent/snmpd -Mmibs -f -Lo -c .../snmpd.conf udp6:localhost@lo:1161 -r apps/snmpwalk -Mmibs -v2c -cpublic udp6:localhost:1161 .1 The reason I'm posting this patch series on the Net-SNMP mailing list is to gather feedback about this patch series. Does everyone agree with the code changes in this patch series? If so, on which branch(es) should these patches be applied? Master only or v5.8 and master? See also: * Add SO_BINDTODEVICE support (https://sourceforge.net/p/net-snmp/patches/1296/). * Add Linux VRF support (https://sourceforge.net/p/net-snmp/patches/1376/). Thanks, Bart. Bart Van Assche (6): libsnmp/transports: Introduce netsnmp_parse_ep_str() libsnmp/transports: Introduce netsnmp_sockaddr_in3() and netsnmp_sockaddr_in6_3() libsnmp/transports: Change multiple sockaddr_in* arguments into netsnmp_ep configure: Add a test for SO_BINDTODEVICE libsnmp/transports: Add support for interface binding testing/fulltests/unit-tests: Add netsnmp_parse_ep_str() unit test configure | 34 +++ configure.d/config_os_misc4 | 15 ++ include/net-snmp/library/snmpDTLSUDPDomain.h | 4 +- include/net-snmp/library/snmpIPBaseDomain.h | 36 +++ include/net-snmp/library/snmpIPv4BaseDomain.h | 7 + include/net-snmp/library/snmpIPv6BaseDomain.h | 5 + include/net-snmp/library/snmpTCPDomain.h | 4 +- include/net-snmp/library/snmpTCPIPv6Domain.h | 4 +- include/net-snmp/library/snmpUDPDomain.h | 8 +- .../net-snmp/library/snmpUDPIPv4BaseDomain.h | 12 +- include/net-snmp/library/snmpUDPIPv6Domain.h | 11 +- .../net-snmp/library/snmpUDPsharedDomain.h | 6 +- include/net-snmp/net-snmp-config.h.in | 3 + snmplib/transports/snmpDTLSUDPDomain.c | 36 +-- snmplib/transports/snmpIPBaseDomain.c | 114 +++++++++ snmplib/transports/snmpIPv4BaseDomain.c | 118 +++------ snmplib/transports/snmpIPv6BaseDomain.c | 238 ++++-------------- snmplib/transports/snmpTCPDomain.c | 24 +- snmplib/transports/snmpTCPIPv6Domain.c | 23 +- snmplib/transports/snmpUDPDomain.c | 22 +- snmplib/transports/snmpUDPIPv4BaseDomain.c | 58 +++-- snmplib/transports/snmpUDPIPv6Domain.c | 70 +++--- snmplib/transports/snmpUDPsharedDomain.c | 90 ++++--- testing/fulltests/support/clib_build | 1 + .../T022netsnmp_parse_ep_str_clib.c | 55 ++++ win32/libsnmp/Makefile.in | 1 + win32/libsnmp_dll/Makefile.in | 1 + 27 files changed, 561 insertions(+), 439 deletions(-) create mode 100644 include/net-snmp/library/snmpIPBaseDomain.h create mode 100644 snmplib/transports/snmpIPBaseDomain.c create mode 100644 testing/fulltests/unit-tests/T022netsnmp_parse_ep_str_clib.c -- 2.19.1 _______________________________________________ Net-snmp-coders mailing list Net-snmp-coders@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/net-snmp-coders