On 2/17/21 9:06 AM, Муравьев Александр wrote:
> Hi
> 
> A noob question that I haven't found an answer.
> 
> Just wanted to clarify a piece of iproute2 code.
> 
> ip/iplink.c:
> 
>> 1058         addattr_l(&req.n, sizeof(req), IFLA_INFO_KIND, type,
>> 1059              strlen(type));
> 
> also ip/iplink.c:
> 
>> 1115         addattr_l(&req.n, sizeof(req),
>> 1116               !check_ifname(name) ? IFLA_IFNAME : IFLA_ALT_IFNAME,
>> 1117               name, strlen(name) + 1);
> My question is why we skip terminating null character for IFLA_INFO_KIND
> (the first case) and don't skip it for IFLA_IFNAME (the second case)? I
> mean "strlen(type)" and "strlen(name) + 1".
> 

I think it is just different coders at different points in time. Kernel
side both use nla_strscpy which handles the string terminator (or
missing terminator).

Reply via email to