Subject: Re: [PATCH net-next iproute2 1/3] netlink: import netlink message parsing from kernel

From: Stephen Hemminger <[email-masked]>
Date: Tue, 2 May 2017 12:49:25 -0700

I am not disagreeing that iproute2 should handle the extended
error format. Just want the solution to be as small as possible;
ie do no more than is absolutely necessary. And future proof
for the inevitable growth in new area.

> +
> +static const __u8 nla_attr_minlen[NLA_TYPE_MAX+1] = {
> +	[NLA_U8]	= sizeof(__u8),
> +	[NLA_U16]	= sizeof(__u16),
> +	[NLA_U32]	= sizeof(__u32),
> +	[NLA_U64]	= sizeof(__u64),
> +	[NLA_MSECS]	= sizeof(__u64),
> +	[NLA_NESTED]	= NLA_HDRLEN,
> +	[NLA_S8]	= sizeof(__s8),
> +	[NLA_S16]	= sizeof(__s16),
> +	[NLA_S32]	= sizeof(__s32),
> +	[NLA_S64]	= sizeof(__s64),
> +};
> +

This patch makes iproute2 now doing validation of netlink attributes
coming back from the kernel. What is the point, userspace should be
trusting the kernel.