Thread (22 messages) flat view 22 messages, 6 authors, 2016-08-16

Re: [PATCH net] net: ipv6: Fix ping to link-local addresses.

From: 吉藤英明 <hidden>
Date: 2016-08-08 16:22:13

Hi,

2016-08-08 23:45 GMT+09:00 Lorenzo Colitti [off-list ref]:
On Mon, Aug 8, 2016 at 11:26 PM, Hannes Frederic Sowa
[off-list ref] wrote:
quoted
quoted
-             if (sk->sk_bound_dev_if &&
-                 sk->sk_bound_dev_if != u->sin6_scope_id) {
-                     return -EINVAL;
-             }
Hmm, sk->sk_bound_dev_if always has highest prio for the selection of
the output interface. Thus this code made sense to me.
Removing it is consistent with the other sendmsg functions such as
udpv6_sendmsg or rawv6_sendmsg.

There is similar code in __ip6_datagram_connect, but that seems a bit
different because that code also *sets* sk_bound_dev_if.

Personally I think it's better for pingv6_sendmsg be consistent with
the other *_sendmsg functions than with ip6_datagram_connect, and thus
the code should be removed. But I don't feel particularly strongly
about it.
Following must be met, at least, IMHO.
- SO_BINDTODEVICE requires "root", which sets sk_bound_dev_if.
- sin6_scope_id and sk_bound_dev_if should match (if the address it
link-local address), or each or both should equal to 0.

I think it would make more sense if former setting wins...

--yoshfuji
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help