From 7bc22cd09969904278e8dfb376b9232fd41d0129 Mon Sep 17 00:00:00 2001 From: nbd Date: Thu, 30 Apr 2009 13:57:38 +0000 Subject: [PATCH] swconfig: use libnl-tiny instead of libnl git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15508 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/swconfig/Makefile | 17 +++++++++-------- package/swconfig/src/swlib.c | 15 ++++++++++----- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/package/swconfig/Makefile b/package/swconfig/Makefile index 5959ef4c8..fcabf83b5 100644 --- a/package/swconfig/Makefile +++ b/package/swconfig/Makefile @@ -6,24 +6,25 @@ # include $(TOPDIR)/rules.mk -include $(INCLUDE_DIR)/kernel.mk -PKG_NAME:=kmod-swconfig +PKG_NAME:=swconfig PKG_RELEASE:=1 -PKG_BUILD_DEPENDS:=libnl include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/kernel.mk define Package/swconfig SECTION:=base CATEGORY:=Base system - DEPENDS:=@LINUX_2_6_26||LINUX_2_6_27||LINUX_2_6_28||LINUX_2_6_29 +libuci + DEPENDS:=@LINUX_2_6_26||LINUX_2_6_27||LINUX_2_6_28||LINUX_2_6_29 +libuci +libnl-tiny TITLE:=Switch configuration utility endef -TARGET_CPPFLAGS += \ +TARGET_CPPFLAGS := \ + -I$(STAGING_DIR)/usr/include/libnl-tiny \ -I$(LINUX_DIR)/include \ - -I$(PKG_BUILD_DIR) + -I$(PKG_BUILD_DIR) \ + $(TARGET_CPPFLAGS) define Build/Prepare mkdir -p $(PKG_BUILD_DIR) @@ -31,10 +32,10 @@ define Build/Prepare endef define Build/Compile - CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \ + CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \ $(MAKE) -C $(PKG_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ - LIBS="-L$(STAGING_DIR)/usr/lib $(STAGING_DIR)/usr/lib/libnl.a -lm -luci" + LIBS="$(TARGET_LDFLAGS) -lnl-tiny -lm -luci" endef define Package/swconfig/install diff --git a/package/swconfig/src/swlib.c b/package/swconfig/src/swlib.c index fbc036555..04b3bef49 100644 --- a/package/swconfig/src/swlib.c +++ b/package/swconfig/src/swlib.c @@ -24,6 +24,9 @@ #include #include #include "swlib.h" +#include +#include +#include //#define DEBUG 1 #ifdef DEBUG @@ -32,7 +35,7 @@ #define DPRINTF(fmt, ...) do {} while (0) #endif -static struct nl_handle *handle; +static struct nl_sock *handle; static struct nl_cache *cache; static struct genl_family *family; static struct nlattr *tb[SWITCH_ATTR_MAX]; @@ -507,7 +510,7 @@ swlib_priv_free(void) if (cache) nl_cache_free(cache); if (handle) - nl_handle_destroy(handle); + nl_socket_free(handle); handle = NULL; cache = NULL; } @@ -515,7 +518,9 @@ swlib_priv_free(void) static int swlib_priv_init(void) { - handle = nl_handle_alloc(); + int ret; + + handle = nl_socket_alloc(); if (!handle) { DPRINTF("Failed to create handle\n"); goto err; @@ -526,8 +531,8 @@ swlib_priv_init(void) goto err; } - cache = genl_ctrl_alloc_cache(handle); - if (!cache) { + ret = genl_ctrl_alloc_cache(handle, &cache); + if (ret < 0) { DPRINTF("Failed to allocate netlink cache\n"); goto err; }