Package: libnl3 / 3.2.24-2

Metadata

Package Version Patches format
libnl3 3.2.24-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
debian/etc libnl 3.diff p1 | (download)

Makefile.am | 2 1 + 1 - 0 !
lib/Makefile.am | 2 1 + 1 - 0 !
src/Makefile.am | 2 1 + 1 - 0 !
src/lib/Makefile.am | 2 1 + 1 - 0 !
4 files changed, 4 insertions(+), 4 deletions(-)

 [patch] install into etc/libnl-3

Prevent naming conflicts with libnl2 or later conffiles.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>


debian/out of tree.diff p1 | (download)

lib/Makefile.am | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 [patch] enable out of tree build

This also includes a backported gen-tags.sh to fix
build-failures.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>


debian/no symvers.diff p1 | (download)

lib/Makefile.am | 5 3 + 2 - 0 !
1 file changed, 3 insertions(+), 2 deletions(-)

 [patch] disable symbol versioning

libnl3 after 3.2.21 enabled symbol versioning [0] without increasing the
soname of the library, producing issues with our symbol lists.

Until we hit a regular soname bump, it might be easiest to keep symbol
versioning disabled.


[0] https://github.com/thom311/libnl/commit/0eb665c693ab2673b722ffd75df744f75fb7e2fe

fixes/idiag pkgconfig.diff p1 | (download)

Makefile.am | 1 1 + 0 - 0 !
configure.ac | 1 1 + 0 - 0 !
libnl-idiag-3.0.pc.in | 12 12 + 0 - 0 !
3 files changed, 14 insertions(+)

 [patch] add pkgconfig for libnl-idiag

The pkgconfig file is included in the upstream git repository but is missing
inclusion into the buildprocess. Most likely for this reason it is also not
part of the source release.


backports/5206c050504f8676a24854519b9c351470fb7cc6.diff p1 | (download)

lib/route/addr.c | 14 13 + 1 - 0 !
1 file changed, 13 insertions(+), 1 deletion(-)

 [patch] route/addr: only sent ifa_flags when needed to workaround
 picky older kernels

Older kernels don't accept receiving unknown netlink attributes.
See net/core/rtnetlink.c, rtnetlink_rcv_msg(). This was fixed by kernel
commit 661d2967b3f1b34eeaa7e212e7b9bbe8ee072b59.

As a workaround, only set the additional attributes, when the user
provided flags that makes this necessary and useful.

https://github.com/thom311/libnl/issues/56
https://bugzilla.redhat.com/show_bug.cgi?id=1063885

Based-on-patch-by: Pavel Kankovsky <peak@argo.troja.mff.cuni.cz>
backports/dfd0a80ec845a800504fecb936c2b33d6918fc9c.diff p1 | (download)

lib/route/link/inet.c | 4 3 + 1 - 0 !
lib/route/link/inet6.c | 18 13 + 5 - 0 !
2 files changed, 16 insertions(+), 6 deletions(-)

 [patch] route: don't enforce minlen in inet6_parse_protinfo()
 (IFLA_PROTINFO) and inet_parse_af() (IFLA_AF_SPEC)

Older kernel version might have fewer values defined, so they would send
netlink messages that got rejected. Only check that at least one value
got sent.

This is especially grave as libnl uses an internal copy of the
kernel header files. Thus not only it is bound to the installed kernel
headers but to the libnl internal header copies that might easily be out
of sync with the kernel.

This affects IFLA_PROTINFO, inet6_parse_protinfo():
  - tb[IFLA_INET6_CONF], expecting DEVCONF_MAX
  - tb[IFLA_INET6_STATS], expecting __IPSTATS_MIB_MAX
  - tb[IFLA_INET6_ICMP6STATS], expecting __ICMP6_MIB_MAX
and IFLA_AF_SPEC, inet_parse_af():
  - tb[IFLA_INET_CONF], expecting IPV4_DEVCONF_MAX

https://bugzilla.redhat.com/show_bug.cgi?id=1062533