Re: [PATCH 1/2] ipv4: fix do_ip_setsockopt optlen check forIP_MULTICAST_IF

From: David Miller
Date: Tue Sep 22 2009 - 16:38:17 EST


From: Shan Wei <shanwei@xxxxxxxxxxxxxx>
Date: Thu, 17 Sep 2009 17:15:22 +0800

> Xiaotian Feng wrote, at 09/17/2009 01:19 PM:
>> Due to man page of setsockopt, if optlen is not valid, kernel should return
>> -EINVAL. But a simple testcase as following, errno is 0, which means setsockopt
>> is successful.
>>
>> addr.s_addr = inet_addr("192.1.2.3");
>> setsockopt(s, IPPROTO_IP, IP_MULTICAST_IF, &addr, 1);
>> printf("errno is %d\n", errno);
>>
>> This patch fixes the optlen check part, with the patch, we got errno EINVAL.
>>
>
> I also think it's a bug, the freebsd also does the optlen check.
> But the style should be coincident with other option: firstly check the
> availability of optlen, then copy option value from user and deal with it.
>
> How about this one:

This definitely is better and cleaner, but please don't post such
things without proper signoffs and commit messages because now
I have to ask you to do that instead of me just applying your
patch :-/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/