libnl: update to version 2.0 (patch by Philip Prindeville)
SVN-Revision: 25513
This commit is contained in:
		| @@ -8,12 +8,12 @@ | |||||||
| include $(TOPDIR)/rules.mk | include $(TOPDIR)/rules.mk | ||||||
|  |  | ||||||
| PKG_NAME:=libnl | PKG_NAME:=libnl | ||||||
| PKG_VERSION:=1.1 | PKG_VERSION:=2.0 | ||||||
| PKG_RELEASE:=4 | PKG_RELEASE:=1 | ||||||
|  |  | ||||||
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | ||||||
| PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/ | PKG_SOURCE_URL:=http://www.infradead.org/~tgr/libnl/files/ | ||||||
| PKG_MD5SUM:=ae970ccd9144e132b68664f98e7ceeb1 | PKG_MD5SUM:=6aaf1e9802a17a7d702bb0638044ffa7 | ||||||
|  |  | ||||||
| include $(INCLUDE_DIR)/package.mk | include $(INCLUDE_DIR)/package.mk | ||||||
|  |  | ||||||
| @@ -46,6 +46,10 @@ endef | |||||||
|  |  | ||||||
| define Package/libnl/install | define Package/libnl/install | ||||||
| 	$(INSTALL_DIR) $(1)/usr/lib | 	$(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/ | 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl.so.* $(1)/usr/lib/ | ||||||
| endef | endef | ||||||
|  |  | ||||||
|   | |||||||
| @@ -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) |  | ||||||
| @@ -1,77 +0,0 @@ | |||||||
| From: Patrick McHardy <kaber@trash.net> |  | ||||||
| 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 <kaber@trash.net> |  | ||||||
| --- |  | ||||||
|  |  | ||||||
| --- /dev/null |  | ||||||
| +++ b/include/linux/if_vlan.h |  | ||||||
| @@ -0,0 +1,61 @@ |  | ||||||
| +/* |  | ||||||
| + * VLAN		An implementation of 802.1Q VLAN tagging. |  | ||||||
| + * |  | ||||||
| + * Authors:	Ben Greear <greearb@candelatech.com> |  | ||||||
| + * |  | ||||||
| + *		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_) */ |  | ||||||
| @@ -1,38 +0,0 @@ | |||||||
| From: Patrick McHardy <kaber@trash.net> |  | ||||||
| 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 <kaber@trash.net> |  | ||||||
| --- |  | ||||||
|  |  | ||||||
| --- 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); |  | ||||||
| @@ -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 <netlink-local.h> |  | ||||||
|   |  | ||||||
|  static void print_usage(void) |  | ||||||
|  { |  | ||||||
| --- a/src/utils.c |  | ||||||
| +++ b/src/utils.c |  | ||||||
| @@ -12,6 +12,7 @@ |  | ||||||
|  #include "utils.h" |  | ||||||
|   |  | ||||||
|  #include <stdlib.h> |  | ||||||
| +#include <stdarg.h> |  | ||||||
|   |  | ||||||
|  int nltool_init(int argc, char *argv[]) |  | ||||||
|  { |  | ||||||
| --- a/src/utils.h |  | ||||||
| +++ b/src/utils.h |  | ||||||
| @@ -22,7 +22,6 @@ |  | ||||||
|  #include <sys/types.h> |  | ||||||
|  #include <sys/socket.h> |  | ||||||
|   |  | ||||||
| -#include <netlink-local.h> |  | ||||||
|  #include <netlink/netlink.h> |  | ||||||
|  #include <netlink/utils.h> |  | ||||||
|  #include <netlink/addr.h> |  | ||||||
| @@ -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 |  | ||||||
| @@ -1,10 +0,0 @@ | |||||||
| --- a/include/netlink-local.h |  | ||||||
| +++ b/include/netlink-local.h |  | ||||||
| @@ -26,6 +26,7 @@ |  | ||||||
|  #include <sys/socket.h> |  | ||||||
|  #include <inttypes.h> |  | ||||||
|  #include <assert.h> |  | ||||||
| +#include <limits.h> |  | ||||||
|   |  | ||||||
|  #include <arpa/inet.h> |  | ||||||
|  #include <netdb.h> |  | ||||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau