};
/* General */
-diff -ur libnl-3.2.0.org/include/netlink/route/link.h libnl-3.2.0/include/netlink/route/link.h
---- libnl-3.2.0.org/include/netlink/route/link.h 2011-09-09 10:31:41.000000000 +0200
-+++ libnl-3.2.0/include/netlink/route/link.h 2011-09-17 08:58:02.583919807 +0200
-@@ -92,7 +92,7 @@
- RTNL_LINK_ICMP6_INERRORS, /*!< ICMPv6 SNMP InErrors */
- RTNL_LINK_ICMP6_OUTMSGS, /*!< ICMPv6 SNMP OutMsgs */
- RTNL_LINK_ICMP6_OUTERRORS, /*!< ICMPv6 SNMP OutErrors */
+--- libnl-3.2.25/include/netlink/route/link.h.orig 2014-07-19 07:53:57.189749709 +0200
++++ libnl-3.2.25/include/netlink/route/link.h 2014-07-19 08:24:18.749673265 +0200
+@@ -99,7 +99,7 @@
+ RTNL_LINK_IP6_ECT1PKTS, /*!< IPv6 SNMP InECT1Pkts */
+ RTNL_LINK_IP6_ECT0PKTS, /*!< IPv6 SNMP InECT0Pkts */
+ RTNL_LINK_IP6_CEPKTS, /*!< IPv6 SNMP InCEPkts */
- __RTNL_LINK_STATS_MAX,
+ __RTNL_LINK_STATS_MAX
} rtnl_link_stat_id_t;
Summary: Netlink sockets library
Summary(pl.UTF-8): Biblioteka do obsługi gniazd netlink
Name: libnl
-Version: 3.2.24
-Release: 3
+Version: 3.2.25
+Release: 1
Epoch: 1
License: LGPL v2.1
Group: Libraries
Source0: http://www.infradead.org/~tgr/libnl/files/%{name}-%{version}.tar.gz
-# Source0-md5: 6e0e7bad0674749d930dd9f285343d55
+# Source0-md5: 03f74d0cd5037cadc8cdfa313bbd195c
Source1: http://www.infradead.org/~tgr/libnl/files/%{name}-doc-%{version}.tar.gz
-# Source1-md5: d1111959652bd6ad87b2071f61c8c20c
+# Source1-md5: 641f73052d9f54e720efe1a476a20237
Patch0: %{name}-link.patch
Patch1: %{name}-pedantic.patch
-Patch2: old_kernels.patch
URL: http://www.infradead.org/~tgr/libnl/
BuildRequires: autoconf >= 2.50
BuildRequires: automake
mv -f libnl-doc-%{version} doc
%patch0 -p1
%patch1 -p1
-%patch2 -p1
%build
%{__libtoolize}
%{__make}
%if 0
-# no docs Makefile up to 3.2.24
+# no docs Makefile up to 3.2.25
%{?with_apidocs:%{__make} -j1 -C doc gendoc}
%endif
+++ /dev/null
-diff --git a/lib/route/addr.c b/lib/route/addr.c
-index 97905f0..e6e91d2 100644
---- a/lib/route/addr.c
-+++ b/lib/route/addr.c
-@@ -598,7 +598,19 @@ static int build_addr_msg(struct rtnl_addr *tmpl, int cmd, int flags,
- NLA_PUT(msg, IFA_CACHEINFO, sizeof(ca), &ca);
- }
-
-- NLA_PUT_U32(msg, IFA_FLAGS, tmpl->a_flags);
-+ if (tmpl->a_flags & ~0xFF) {
-+ /* only set the IFA_FLAGS attribute, if they actually contain additional
-+ * flags that are not already set to am.ifa_flags.
-+ *
-+ * Older kernels refuse RTM_NEWADDR and RTM_NEWROUTE messages with EINVAL
-+ * if they contain unknown netlink attributes. See net/core/rtnetlink.c, which
-+ * was fixed by kernel commit 661d2967b3f1b34eeaa7e212e7b9bbe8ee072b59.
-+ *
-+ * With this workaround, libnl will function correctly with older kernels,
-+ * unless there is a new libnl user that wants to set these flags. In this
-+ * case it's up to the user to workaround this issue. */
-+ NLA_PUT_U32(msg, IFA_FLAGS, tmpl->a_flags);
-+ }
-
- *result = msg;
- return 0;