]> git.ipfire.org Git - thirdparty/libnl.git/commitdiff
3.1 release
authorThomas Graf <tgraf@suug.ch>
Thu, 11 Aug 2011 12:30:24 +0000 (14:30 +0200)
committerThomas Graf <tgraf@suug.ch>
Thu, 11 Aug 2011 12:30:24 +0000 (14:30 +0200)
15 files changed:
.gitignore
Makefile.am
configure.in
doc/core.txt
doc/route.txt
lib/Makefile.am
libnl-3.1.pc.in [moved from libnl-3.0.pc.in with 100% similarity]
libnl-genl-3.1.pc.in [new file with mode: 0644]
libnl-nf-3.1.pc.in [new file with mode: 0644]
libnl-route-3.1.pc.in [new file with mode: 0644]
src/lib/link.c
tests/Makefile
tests/test-create-bond.c [new file with mode: 0644]
tests/test-create-vlan.c [new file with mode: 0644]
tests/test-delete-link.c [new file with mode: 0644]

index 17a67a020d06860e462bd000aaab294a39d28149..85ddb3c2f19a4a614dcd8872260f2a0ab5e8eea7 100644 (file)
@@ -1,12 +1,14 @@
 .deps
 .libs
 .dirstamp
-*.in
 *.la
 *.lo
 *.o
 *.swp
 Makefile
+Makefile.in
+defs.h.in
+defs.h.in~
 /lib/stamp-h1
 
 /libnl-1.pc
@@ -24,5 +26,5 @@ cscope.*
 /ltmain.sh
 /install-sh
 /missing
-
 /*.pc
+
index 07017c8992da1d25048b668fc5d0ca0a4be10210..68d236c488dcd985b831e5641cbf8f4ee3efb47d 100644 (file)
@@ -10,7 +10,10 @@ endif
 
 SUBDIRS = include lib doc man $(OPT_DIRS)
 
-pkgconfig_DATA = libnl-3.0.pc
+pkgconfig_DATA = libnl-3.1.pc \
+                libnl-route-3.1.pc \
+                libnl-genl-3.1.pc \
+                libnl-nf-3.1.pc
 
 sysconfdir = @sysconfdir@/libnl
 sysconf_DATA = etc/pktloc etc/classid
index 00ad3ee145ced82ff85f20f1b751f97fc5e7490d..47567affb5570de3f6598f10fefba449e0df42d5 100644 (file)
@@ -9,7 +9,7 @@
 # Copyright (c) 2003-2011 Thomas Graf <tgraf@suug.ch>
 #
 
-AC_INIT(libnl, 3.0, tgraf@suug.ch)
+AC_INIT(libnl, 3.1, tgraf@suug.ch)
 AC_CONFIG_HEADERS([lib/defs.h])
 AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([-Wall foreign subdir-objects])
@@ -17,7 +17,7 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)], [])
 
 MAJ_VERSION=3
 AC_SUBST([MAJ_VERSION])
-MIN_VERSION=0
+MIN_VERSION=1
 AC_SUBST([MIN_VERSION])
 
 AC_PROG_CC
@@ -49,5 +49,6 @@ AC_CHECK_LIB([m], [pow], [], AC_MSG_ERROR([libm is required]))
 
 AC_CONFIG_FILES([Makefile doc/Doxyfile doc/Makefile lib/Makefile
        include/Makefile src/Makefile src/lib/Makefile man/Makefile
-       libnl-3.0.pc include/netlink/version.h])
+       libnl-3.1.pc libnl-route-3.1.pc libnl-genl-3.1.pc libnl-nf-3.1.pc
+       include/netlink/version.h])
 AC_OUTPUT
index 0ab32ec8d70261597df8fbf4594bd2bc65c7891e..796e9fc5230c1f1cf6b2be89c3e5686fdbc5483f 100644 (file)
@@ -7,7 +7,7 @@
 Netlink Library (libnl)
 =======================
 Thomas Graf <tgraf@suug.ch>
-3.0, July 17 2011:
+3.1, Aug 11 2011:
 :numbered:
 
 == Introduction
@@ -70,8 +70,8 @@ makes use of.
 -----
 #include <netlink/version.h>
 
-#if LIBNL_VER_NUM >= LIBNL_VER(3,0)
-       /* include code if compiled with libnl version >= 3.0 */
+#if LIBNL_VER_NUM >= LIBNL_VER(3,1)
+       /* include code if compiled with libnl version >= 3.1 */
 #endif
 -----
 
@@ -2549,11 +2549,12 @@ dealing with network addresses is a common task.
 
 Currently the following address families are supported:
 
- - `AF_INET`
- - `AF_INET6`
- - `AF_LLC`
- - `AF_DECnet`
- - `AF_UNSPEC`
+[options="compact"]
+ * `AF_INET`
+ * `AF_INET6`
+ * `AF_LLC`
+ * `AF_DECnet`
+ * `AF_UNSPEC`
 
 [[core_addr_alloc]]
 .Address Allocation
index 757b4bd7e23422d1b48eeee719cecd45e33b7043..33f58d03bca3aeb41b69978619684566248dac39 100644 (file)
@@ -7,7 +7,7 @@
 Routing Family Netlink Library (libnl-route)
 ============================================
 Thomas Graf <tgraf@suug.ch>
-3.1, July 17 2011:
+3.1, Aug 11 2011:
 
 == Introduction
 
index ddda933f9af68d6470ae707737d2eef0c8c6260d..cb5403f1e4196bd9e6d9bf4520fe67006176966c 100644 (file)
@@ -1,7 +1,7 @@
 # -*- Makefile -*-
 
 AM_CPPFLAGS  = -Wall -I${top_srcdir}/include -I${top_builddir}/include -I${builddir}/route -I${builddir}/route/cls -D_GNU_SOURCE -DSYSCONFDIR=\"$(sysconfdir)/libnl\"
-AM_LDFLAGS = -version-info 3:0:0
+AM_LDFLAGS = -version-info 3:1:0
 
 lib_LTLIBRARIES = \
        libnl.la libnl-genl.la libnl-route.la libnl-nf.la
similarity index 100%
rename from libnl-3.0.pc.in
rename to libnl-3.1.pc.in
diff --git a/libnl-genl-3.1.pc.in b/libnl-genl-3.1.pc.in
new file mode 100644 (file)
index 0000000..5b5f841
--- /dev/null
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libnl-genl
+Description: Generic Netlink Library
+Version: @PACKAGE_VERSION@
+Requires: libnl
+Libs: -L${libdir} -lnl-genl
+Cflags: -I${includedir}
diff --git a/libnl-nf-3.1.pc.in b/libnl-nf-3.1.pc.in
new file mode 100644 (file)
index 0000000..ffff22b
--- /dev/null
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libnl-nf
+Description: Netfilter Netlink Library
+Version: @PACKAGE_VERSION@
+Requires: libnl
+Libs: -L${libdir} -lnl-nf
+Cflags: -I${includedir}
diff --git a/libnl-route-3.1.pc.in b/libnl-route-3.1.pc.in
new file mode 100644 (file)
index 0000000..95be862
--- /dev/null
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libnl-route
+Description: Netlink Routing Family Library
+Version: @PACKAGE_VERSION@
+Requires: libnl
+Libs: -L${libdir} -lnl-route
+Cflags: -I${includedir}
index db90558f421d5bcadb91aed4f46d85b38e0c2867..5bce82404f62c47ff149ce7d8c9fd8ab1a17f4eb 100644 (file)
@@ -86,8 +86,6 @@ void nl_cli_link_parse_txqlen(struct rtnl_link *link, char *arg)
 
 void nl_cli_link_parse_weight(struct rtnl_link *link, char *arg)
 {
-       uint32_t weight = nl_cli_parse_u32(arg);
-       rtnl_link_set_weight(link, weight);
 }
 
 void nl_cli_link_parse_ifalias(struct rtnl_link *link, char *arg)
index 8494eea0d5a79f5fd9c3b8fbc8559ff1f9940997..d072ddb8fe6b071ffd2c30fe84f5694949662e04 100644 (file)
@@ -13,25 +13,21 @@ ifeq ($(shell [ ! -r ../Makefile.opts ] && echo 1),)
     include ../Makefile.opts
 endif
 
-LDFLAGS        += -L../lib -lnl ../src/utils.o
+LDFLAGS        += -L../lib -lnl -lnl-genl -lnl-route
 CIN    := $(wildcard test-*.c)
-TOOLS  := $(CIN:%.c=%)
+TESTS  := $(CIN:%.c=%)
 
-all: $(TOOLS)
-
-$(TOOLS): ../src/utils.o
+all: $(TESTS)
 
 test-%: test-%.c
        @echo "  LD $@"; \
-       $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS) -lnl-genl -lnl-route
+       $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
 
 clean:
        @echo "  CLEAN src"; \
-       rm -f $(TOOLS)
+       rm -f $(TESTS)
 
 distclean: clean
 
 install:
        @true
-
-include ../Makefile.rules
diff --git a/tests/test-create-bond.c b/tests/test-create-bond.c
new file mode 100644 (file)
index 0000000..99166aa
--- /dev/null
@@ -0,0 +1,33 @@
+#include <netlink/netlink.h>
+#include <netlink/route/link.h>
+
+int main(int argc, char *argv[])
+{
+       struct rtnl_link *link;
+       struct nl_sock *sk;
+       int err;
+
+       sk = nl_socket_alloc();
+       if ((err = nl_connect(sk, NETLINK_ROUTE)) < 0) {
+               nl_perror(err, "Unable to connect socket");
+               return err;
+       }
+
+       link = rtnl_link_alloc();
+       rtnl_link_set_name(link, "my_bond");
+
+       if ((err = rtnl_link_set_info_type(link, "bond")) < 0) {
+               nl_perror(err, "Unable to set link info type");
+               return err;
+       }
+
+       if ((err = rtnl_link_add(sk, link, NLM_F_CREATE)) < 0) {
+               nl_perror(err, "Unable to add link");
+               return err;
+       }
+
+       rtnl_link_put(link);
+       nl_close(sk);
+
+       return 0;
+}
diff --git a/tests/test-create-vlan.c b/tests/test-create-vlan.c
new file mode 100644 (file)
index 0000000..00a4d91
--- /dev/null
@@ -0,0 +1,48 @@
+#include <netlink/netlink.h>
+#include <netlink/route/link.h>
+#include <netlink/route/link/vlan.h>
+
+int main(int argc, char *argv[])
+{
+       struct rtnl_link *link;
+       struct nl_cache *link_cache;
+       struct nl_sock *sk;
+       int err, master_index;
+
+       sk = nl_socket_alloc();
+       if ((err = nl_connect(sk, NETLINK_ROUTE)) < 0) {
+               nl_perror(err, "Unable to connect socket");
+               return err;
+       }
+
+       if ((err = rtnl_link_alloc_cache(sk, AF_UNSPEC, &link_cache)) < 0) {
+               nl_perror(err, "Unable to allocate cache");
+               return err;
+       }
+
+       if (!(master_index = rtnl_link_name2i(link_cache, "eth0"))) {
+               fprintf(stderr, "Unable to lookup eth0");
+               return -1;
+       }
+
+       link = rtnl_link_alloc();
+
+       rtnl_link_set_link(link, master_index);
+
+       if ((err = rtnl_link_set_type(link, "vlan")) < 0) {
+               nl_perror(err, "Unable to set link info type");
+               return err;
+       }
+
+       rtnl_link_vlan_set_id(link, 10);
+
+       if ((err = rtnl_link_add(sk, link, NLM_F_CREATE)) < 0) {
+               nl_perror(err, "Unable to add link");
+               return err;
+       }
+
+       rtnl_link_put(link);
+       nl_close(sk);
+
+       return 0;
+}
diff --git a/tests/test-delete-link.c b/tests/test-delete-link.c
new file mode 100644 (file)
index 0000000..9cf1034
--- /dev/null
@@ -0,0 +1,28 @@
+#include <netlink/netlink.h>
+#include <netlink/route/link.h>
+
+int main(int argc, char *argv[])
+{
+       struct rtnl_link *link;
+       struct nl_sock *sk;
+       int err;
+
+       sk = nl_socket_alloc();
+       if ((err = nl_connect(sk, NETLINK_ROUTE)) < 0) {
+               nl_perror(err, "Unable to connect socket");
+               return err;
+       }
+
+       link = rtnl_link_alloc();
+       rtnl_link_set_name(link, "my_bond");
+
+       if ((err = rtnl_link_delete(sk, link)) < 0) {
+               nl_perror(err, "Unable to delete link");
+               return err;
+       }
+
+       rtnl_link_put(link);
+       nl_close(sk);
+
+       return 0;
+}