diff options
Diffstat (limited to 'meta-oe/recipes-extended')
-rw-r--r-- | meta-oe/recipes-extended/net-snmp/files/libnl-3-support.patch | 69 | ||||
-rw-r--r-- | meta-oe/recipes-extended/net-snmp/net-snmp.inc | 4 | ||||
-rw-r--r-- | meta-oe/recipes-extended/net-snmp/net-snmp_5.7.1.bb | 3 |
3 files changed, 73 insertions, 3 deletions
diff --git a/meta-oe/recipes-extended/net-snmp/files/libnl-3-support.patch b/meta-oe/recipes-extended/net-snmp/files/libnl-3-support.patch new file mode 100644 index 0000000000..72699b8dd6 --- /dev/null +++ b/meta-oe/recipes-extended/net-snmp/files/libnl-3-support.patch @@ -0,0 +1,69 @@ +Add support to libnl-3 + +Upstream-Status: Pending + +--- net-snmp-5.6.1/agent/mibgroup/mibII/tcpTable.c.org 2011-03-27 22:39:13.428728506 +0200 ++++ net-snmp-5.6.1/agent/mibgroup/mibII/tcpTable.c 2011-03-27 22:39:47.606956561 +0200 +@@ -555,8 +555,9 @@ + static int + tcpTable_load_netlink(void) + { ++ int err; + /* TODO: perhaps use permanent nl handle? */ +- struct nl_handle *nl = nl_handle_alloc(); ++ struct nl_sock *nl = nl_socket_alloc(); + + if (nl == NULL) { + DEBUGMSGTL(("mibII/tcpTable", "Failed to allocate netlink handle\n")); +@@ -564,10 +565,10 @@ + return -1; + } + +- if (nl_connect(nl, NETLINK_INET_DIAG) < 0) { +- DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ if ((err = nl_connect(nl, NETLINK_INET_DIAG)) < 0) { ++ DEBUGMSGTL(("mibII/tcpTable", "Failed to connect to netlink: %s\n", nl_geterror(err))); ++ snmp_log(LOG_ERR, "snmpd: Couldn't connect to netlink: %s\n", nl_geterror(err)); ++ nl_socket_free(nl); + return -1; + } + +@@ -579,10 +580,10 @@ + struct nl_msg *nm = nlmsg_alloc_simple(TCPDIAG_GETSOCK, NLM_F_ROOT|NLM_F_MATCH|NLM_F_REQUEST); + nlmsg_append(nm, &req, sizeof(struct inet_diag_req), 0); + +- if (nl_send_auto_complete(nl, nm) < 0) { +- DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ if ((err = nl_send_auto_complete(nl, nm)) < 0) { ++ DEBUGMSGTL(("mibII/tcpTable", "nl_send_autocomplete(): %s\n", nl_geterror(err))); ++ snmp_log(LOG_ERR, "snmpd: nl_send_autocomplete(): %s\n", nl_geterror(err)); ++ nl_socket_free(nl); + return -1; + } + nlmsg_free(nm); +@@ -593,9 +594,9 @@ + + while (running) { + if ((len = nl_recv(nl, &peer, &buf, NULL)) <= 0) { +- DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror())); +- snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror()); +- nl_handle_destroy(nl); ++ DEBUGMSGTL(("mibII/tcpTable", "nl_recv(): %s\n", nl_geterror(len))); ++ snmp_log(LOG_ERR, "snmpd: nl_recv(): %s\n", nl_geterror(len)); ++ nl_socket_free(nl); + return -1; + } + +@@ -644,7 +645,7 @@ + free(buf); + } + +- nl_handle_destroy(nl); ++ nl_socket_free(nl); + + if (tcp_head) { + DEBUGMSGTL(("mibII/tcpTable", "Loaded TCP Table using netlink\n")); diff --git a/meta-oe/recipes-extended/net-snmp/net-snmp.inc b/meta-oe/recipes-extended/net-snmp/net-snmp.inc index 159c374bb2..c202751b52 100644 --- a/meta-oe/recipes-extended/net-snmp/net-snmp.inc +++ b/meta-oe/recipes-extended/net-snmp/net-snmp.inc @@ -2,12 +2,12 @@ DESCRIPTION = "Various tools relating to the Simple Network Management Protocol" HOMEPAGE = "http://www.net-snmp.org/" LICENSE = "BSD" -DEPENDS = "openssl" +DEPENDS = "openssl libnl" RDEPENDS_${PN}-server += "net-snmp-mibs" RDEPENDS_${PN}-client += "net-snmp-mibs" RDEPENDS_${PN}-dev = "net-snmp-client (= ${EXTENDPV}) net-snmp-server (= ${EXTENDPV})" RRECOMMENDS_${PN}-dbg = "net-snmp-client (= ${EXTENDPV}) net-snmp-server (= ${EXTENDPV})" -INC_PR = "r0" +INC_PR = "r1" inherit autotools update-rc.d siteinfo diff --git a/meta-oe/recipes-extended/net-snmp/net-snmp_5.7.1.bb b/meta-oe/recipes-extended/net-snmp/net-snmp_5.7.1.bb index 55dd9a6666..9cbc5a81c2 100644 --- a/meta-oe/recipes-extended/net-snmp/net-snmp_5.7.1.bb +++ b/meta-oe/recipes-extended/net-snmp/net-snmp_5.7.1.bb @@ -1,9 +1,10 @@ require net-snmp.inc -PR = "${INC_PR}.1" +PR = "${INC_PR}.2" LIC_FILES_CHKSUM = "file://README;beginline=3;endline=8;md5=7f7f00ba639ac8e8deb5a622ea24634e" SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.tar.gz \ file://sync-with-5.7-branch.patch \ + file://libnl-3-support.patch \ file://init \ file://snmpd.conf \ file://snmptrapd.conf" |