From ad7e52f22b9642778408cad7dae984ef58291139 Mon Sep 17 00:00:00 2001 From: nbd Date: Sun, 13 Feb 2011 03:56:12 +0000 Subject: [PATCH] libnl: update to version 2.0 (patch by Philip Prindeville) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25513 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/libnl/Makefile | 12 ++- package/libnl/patches/100-static.patch | 44 ----------- package/libnl/patches/120-add_if_vlan.h.patch | 77 ------------------- .../130-fix_minor_memleaks_on_exit.patch | 38 --------- .../patches/140-fix-linking-libnl-genl.patch | 66 ---------------- .../patches/150-fix-libnl-pc-config.patch | 11 --- ...0-fix_netlink_local_missing_limits_h.patch | 10 --- 7 files changed, 8 insertions(+), 250 deletions(-) delete mode 100644 package/libnl/patches/100-static.patch delete mode 100644 package/libnl/patches/120-add_if_vlan.h.patch delete mode 100644 package/libnl/patches/130-fix_minor_memleaks_on_exit.patch delete mode 100644 package/libnl/patches/140-fix-linking-libnl-genl.patch delete mode 100644 package/libnl/patches/150-fix-libnl-pc-config.patch delete mode 100644 package/libnl/patches/170-fix_netlink_local_missing_limits_h.patch diff --git a/package/libnl/Makefile b/package/libnl/Makefile index eb9831a21..13756995f 100644 --- a/package/libnl/Makefile +++ b/package/libnl/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libnl -PKG_VERSION:=1.1 -PKG_RELEASE:=4 +PKG_VERSION:=2.0 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/ -PKG_MD5SUM:=ae970ccd9144e132b68664f98e7ceeb1 +PKG_SOURCE_URL:=http://www.infradead.org/~tgr/libnl/files/ +PKG_MD5SUM:=6aaf1e9802a17a7d702bb0638044ffa7 include $(INCLUDE_DIR)/package.mk @@ -46,6 +46,10 @@ endef define Package/libnl/install $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route.so.* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl.so.* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf.so.* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route.so.* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl.so.* $(1)/usr/lib/ endef diff --git a/package/libnl/patches/100-static.patch b/package/libnl/patches/100-static.patch deleted file mode 100644 index 8ff042fc7..000000000 --- a/package/libnl/patches/100-static.patch +++ /dev/null @@ -1,44 +0,0 @@ ---- a/lib/Makefile -+++ b/lib/Makefile -@@ -36,6 +36,7 @@ CFLAGS += -fPIC - OUT_SLIB := $(PACKAGE_NAME).so.$(PACKAGE_VERSION) - LN_SLIB := $(PACKAGE_NAME).so - LN1_SLIB := $(LN_SLIB).1 -+OUT_ALIB := $(PACKAGE_NAME).a - - export - -@@ -44,7 +45,7 @@ export - - all: - @echo " MAKE $(OUT_SLIB)"; \ -- $(MAKE) $(OUT_SLIB) -+ $(MAKE) $(OUT_SLIB) $(OUT_ALIB) - - $(OUT_SLIB): ../Makefile.opts $(OBJ) - @echo " LD $(OUT_SLIB)"; \ -@@ -54,10 +55,15 @@ $(OUT_SLIB): ../Makefile.opts $(OBJ) - @echo " LN $(LN1_SLIB) $(LN_SLIB)"; \ - rm -f $(LN_SLIB) ; $(LN) -s $(LN1_SLIB) $(LN_SLIB) - -+$(OUT_ALIB): ../Makefile.opts $(OBJ) -+ @echo " AR $@"; \ -+ $(AR) rcu $@ $(OBJ); \ -+ $(RANLIB) $@ -+ - clean: - @echo " CLEAN lib"; \ - $(RM) -f $(OBJ) $(OUT_SLIB) $(LN_SLIB) $(LN1_SLIB); \ -- $(RM) -f $(DEPS) $(OUT_SLIB) $(LN_SLIB) $(LN1_SLIB) -+ $(RM) -f $(DEPS) $(OUT_ALIB) $(LN_SLIB) $(LN1_SLIB) - - distclean: - @echo " DISTCLEAN lib"; \ -@@ -66,6 +72,7 @@ distclean: - install: - mkdir -p $(DESTDIR)$(libdir)/ - install -m 0644 $(OUT_SLIB) $(DESTDIR)$(libdir) -+ install -m 0644 $(OUT_ALIB) $(DESTDIR)$(libdir) - rm -f $(DESTDIR)$(libdir)/$(LN1_SLIB) - $(LN) -s $(OUT_SLIB) $(DESTDIR)$(libdir)/$(LN1_SLIB) - rm -f $(DESTDIR)$(libdir)/$(LN_SLIB) diff --git a/package/libnl/patches/120-add_if_vlan.h.patch b/package/libnl/patches/120-add_if_vlan.h.patch deleted file mode 100644 index bb89f4bb6..000000000 --- a/package/libnl/patches/120-add_if_vlan.h.patch +++ /dev/null @@ -1,77 +0,0 @@ -From: Patrick McHardy -Date: Fri, 18 Jan 2008 16:55:48 +0000 (+0100) -Subject: [LIBNL]: Add if_vlan.h -X-Git-Url: http://git.kernel.org/?p=libs%2Fnetlink%2Flibnl.git;a=commitdiff_plain;h=e91bb2ffb090955d443e643a25b250bf3d33534a;hp=7f6b7a8eea0334b34d58dec72c66121a76f08958 - -[LIBNL]: Add if_vlan.h - -vlan support needs VLAN_FLAG_REORDER_HDR, which is not available in -older if_vlan.h versions. Add the current version from the kernel. - -Signed-off-by: Patrick McHardy ---- - ---- /dev/null -+++ b/include/linux/if_vlan.h -@@ -0,0 +1,61 @@ -+/* -+ * VLAN An implementation of 802.1Q VLAN tagging. -+ * -+ * Authors: Ben Greear -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version -+ * 2 of the License, or (at your option) any later version. -+ * -+ */ -+ -+#ifndef _LINUX_IF_VLAN_H_ -+#define _LINUX_IF_VLAN_H_ -+ -+ -+/* VLAN IOCTLs are found in sockios.h */ -+ -+/* Passed in vlan_ioctl_args structure to determine behaviour. */ -+enum vlan_ioctl_cmds { -+ ADD_VLAN_CMD, -+ DEL_VLAN_CMD, -+ SET_VLAN_INGRESS_PRIORITY_CMD, -+ SET_VLAN_EGRESS_PRIORITY_CMD, -+ GET_VLAN_INGRESS_PRIORITY_CMD, -+ GET_VLAN_EGRESS_PRIORITY_CMD, -+ SET_VLAN_NAME_TYPE_CMD, -+ SET_VLAN_FLAG_CMD, -+ GET_VLAN_REALDEV_NAME_CMD, /* If this works, you know it's a VLAN device, btw */ -+ GET_VLAN_VID_CMD /* Get the VID of this VLAN (specified by name) */ -+}; -+ -+enum vlan_flags { -+ VLAN_FLAG_REORDER_HDR = 0x1, -+}; -+ -+enum vlan_name_types { -+ VLAN_NAME_TYPE_PLUS_VID, /* Name will look like: vlan0005 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */ -+ VLAN_NAME_TYPE_PLUS_VID_NO_PAD, /* Name will look like: vlan5 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD, /* Name will look like: eth0.5 */ -+ VLAN_NAME_TYPE_HIGHEST -+}; -+ -+struct vlan_ioctl_args { -+ int cmd; /* Should be one of the vlan_ioctl_cmds enum above. */ -+ char device1[24]; -+ -+ union { -+ char device2[24]; -+ int VID; -+ unsigned int skb_priority; -+ unsigned int name_type; -+ unsigned int bind_type; -+ unsigned int flag; /* Matches vlan_dev_info flags */ -+ } u; -+ -+ short vlan_qos; -+}; -+ -+#endif /* !(_LINUX_IF_VLAN_H_) */ diff --git a/package/libnl/patches/130-fix_minor_memleaks_on_exit.patch b/package/libnl/patches/130-fix_minor_memleaks_on_exit.patch deleted file mode 100644 index 5dc625d17..000000000 --- a/package/libnl/patches/130-fix_minor_memleaks_on_exit.patch +++ /dev/null @@ -1,38 +0,0 @@ -From: Patrick McHardy -Date: Fri, 18 Jan 2008 16:55:49 +0000 (+0100) -Subject: [LIBNL]: Fix minor memleaks on exit -X-Git-Url: http://git.kernel.org/?p=libs%2Fnetlink%2Flibnl.git;a=commitdiff_plain;h=b64f15d6f947839236fa276d473d238f8c9b9d57;hp=e91bb2ffb090955d443e643a25b250bf3d33534a - -[LIBNL]: Fix minor memleaks on exit - -Make valgrind happy ... - -Signed-off-by: Patrick McHardy ---- - ---- a/lib/route/route_utils.c -+++ b/lib/route/route_utils.c -@@ -63,6 +63,11 @@ static void __init init_routing_table_na - add_routing_table_name(RT_TABLE_LOCAL, "local"); - }; - -+static void __exit release_routing_table_names(void) -+{ -+ __trans_list_clear(&table_names); -+} -+ - int rtnl_route_read_table_names(const char *path) - { - __trans_list_clear(&table_names); -@@ -104,6 +109,11 @@ static void __init init_proto_names(void - add_proto_name(RTPROT_STATIC, "static"); - }; - -+static void __exit release_proto_names(void) -+{ -+ __trans_list_clear(&proto_names); -+} -+ - int rtnl_route_read_protocol_names(const char *path) - { - __trans_list_clear(&proto_names); diff --git a/package/libnl/patches/140-fix-linking-libnl-genl.patch b/package/libnl/patches/140-fix-linking-libnl-genl.patch deleted file mode 100644 index 243c3ceb8..000000000 --- a/package/libnl/patches/140-fix-linking-libnl-genl.patch +++ /dev/null @@ -1,66 +0,0 @@ ---- a/include/netlink/genl/mngt.h -+++ b/include/netlink/genl/mngt.h -@@ -22,6 +22,15 @@ extern "C" { - - struct nl_cache_ops; - -+struct genl_info -+{ -+ struct sockaddr_nl * who; -+ struct nlmsghdr * nlh; -+ struct genlmsghdr * genlhdr; -+ void * userhdr; -+ struct nlattr ** attrs; -+}; -+ - /** - * @ingroup genl_mngt - * Generic Netlink Command ---- a/include/netlink-types.h -+++ b/include/netlink-types.h -@@ -95,15 +95,6 @@ struct nl_cache_mngr - - struct nl_parser_param; - --struct genl_info --{ -- struct sockaddr_nl * who; -- struct nlmsghdr * nlh; -- struct genlmsghdr * genlhdr; -- void * userhdr; -- struct nlattr ** attrs; --}; -- - #define LOOSE_FLAG_COMPARISON 1 - - #define NL_OBJ_MARK 1 ---- a/src/nl-list-caches.c -+++ b/src/nl-list-caches.c -@@ -10,6 +10,7 @@ - */ - - #include "utils.h" -+#include - - static void print_usage(void) - { ---- a/src/utils.c -+++ b/src/utils.c -@@ -12,6 +12,7 @@ - #include "utils.h" - - #include -+#include - - int nltool_init(int argc, char *argv[]) - { ---- a/src/utils.h -+++ b/src/utils.h -@@ -22,7 +22,6 @@ - #include - #include - --#include - #include - #include - #include diff --git a/package/libnl/patches/150-fix-libnl-pc-config.patch b/package/libnl/patches/150-fix-libnl-pc-config.patch deleted file mode 100644 index c1184b529..000000000 --- a/package/libnl/patches/150-fix-libnl-pc-config.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/libnl-1.pc.in -+++ b/libnl-1.pc.in -@@ -1,7 +1,7 @@ - prefix=@prefix@ - exec_prefix=@prefix@ - libdir=@libdir@ --includedir=@prefix@/include -+includedir=@includedir@ - - Name: libnl - Description: Convenience library for netlink sockets diff --git a/package/libnl/patches/170-fix_netlink_local_missing_limits_h.patch b/package/libnl/patches/170-fix_netlink_local_missing_limits_h.patch deleted file mode 100644 index 0d2084707..000000000 --- a/package/libnl/patches/170-fix_netlink_local_missing_limits_h.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/include/netlink-local.h -+++ b/include/netlink-local.h -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - - #include - #include -- 2.20.1