libnl/lib/route
Thomas Haller dfd0a80ec8 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

Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Thomas Haller <thaller@redhat.com>
2014-03-21 12:27:18 +01:00
..
act add rtnl_mirred_get* functions 2013-12-09 15:33:34 +01:00
cls u32: add const to rtnl_u32_add_key_in*_addr() 2014-03-21 12:23:09 +01:00
link route: don't enforce minlen in inet6_parse_protinfo() (IFLA_PROTINFO) and inet_parse_af() (IFLA_AF_SPEC) 2014-03-21 12:27:18 +01:00
qdisc add fq_codel qdisc 2013-11-22 10:13:39 +01:00
.gitignore Let git ignore generated pktloc source files 2010-07-03 15:56:07 +02:00
act.c fix comments for rtnl_act_add() 2014-02-27 11:32:16 +01:00
addr.c addr: add address flag IFA_F_NOPREFIXROUTE 2014-01-16 11:09:32 +01:00
class.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
classid.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
cls.c fill prio and protocol attr bits when parsing cls message 2014-03-13 09:58:47 +01:00
link.c link: document sk == NULL case for rtnl_link_alloc_cache() 2014-03-20 19:37:37 +01:00
neigh.c nl: Print file:line:func in debugging messages and provide --disable-debug to disable debugging 2013-04-02 11:39:30 +02:00
neightbl.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
nexthop.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
pktloc.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
pktloc_grammar.l Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
pktloc_syntax.y Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
qdisc.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
route.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
route_obj.c route: rtnl_route_build_msg() should not overwrite the route scope 2014-02-20 16:49:46 +01:00
route_utils.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
rtnl.c route: fix return value of nl_rtgen_request() 2014-01-31 14:46:13 +01:00
rule.c Move private header files to <netlink-private/*> 2013-01-24 13:51:24 +01:00
tc.c add an assertion in rtnl_tc_set_link() 2013-12-11 09:08:23 +01:00