[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOdseAOsGOD2bxOwQLZPq6KhL5xN9J81=d1tQWEULDZwxD9UxA@mail.gmail.com>
Date: Thu, 2 Feb 2012 17:19:11 -0800
From: Xiaochun Lu <xiaoclu@...il.com>
To: "Erich E. Hoover" <ehoover@...es.edu>
Cc: Eric Dumazet <eric.dumazet@...il.com>,
Linux Netdev <netdev@...r.kernel.org>,
"shawn.lu" <shawn.lu@...cssion.com>
Subject: Re: [PATCH v2] Implement IP_UNICAST_IF socket option.
Hi, Erich E. Hoover:
Can you give more detail on why we need invent another binding to
device option in your patch log? Why SO_BINDTODEVICE or IP_PKTINFO
can't server your need?
Thanks!
Shawn Lu
On 2/2/12, Erich E. Hoover <ehoover@...es.edu> wrote:
> On Thu, Feb 2, 2012 at 2:57 PM, Eric Dumazet <eric.dumazet@...il.com> wrote:
>> Le jeudi 02 février 2012 à 14:36 -0700, Erich E. Hoover a écrit :
>> > ...
>> > + if (sk->sk_bound_dev_if && ifindex != sk->sk_bound_dev_if)
>> > + break;
>>
>> what happens if later sk_bound_dev_if is changed ? Should we redo the
>> above tests ?
>
> Would it be better if ip_default_ifindex performed the same comparison
> and prioritized the sk->sk_bound_dev_if value?
>
>> > ...
>> > + case IP_UNICAST_IF:
>> > + {
>> > + __be32 iface;
>> > +
>> > + len = sizeof(__be32);
>> > + iface = htonl(inet->outif_index);
>> > + release_sock(sk);
>> > +
>> > + if (put_user(len, optlen))
>> > + return -EFAULT;
>> > + if (copy_to_user(optval, &iface, len))
>> > + return -EFAULT;
>> > + return 0;
>>
>> wow.... thats not pretty...
>>
>> what about :
>>
>> case IP_UNICASE_IF:
>> val = htonl(inet->outif_index);
>> break;
>>
>
> The return value needs to be 4 bytes even if sizeof(int) != 4.
>
>> > ...
>> IPv6 not supported ?
>
> Nope, at least according to the documentation the option is only for
> IPv4 (IPPROTO_IP).
>
> Erich Hoover
> ehoover@...es.edu
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists