IPPROTO_DIVERT and PF_INET6
Julian Elischer
julian at elischer.org
Mon May 5 23:18:55 UTC 2008
Edwin Groothuis wrote:
> On Mon, May 05, 2008 at 01:15:29PM -0700, Julian Elischer wrote:
>>> This should provide a direct answer to you question of "why"? But I
>>> suspect the underlying question is why divert sockets aren't supported
>>> for IPv6. I don't know why.
>> because no=one has done it and because divert sockaddrs are ipv4 sockaddrs
>>
>> you would have to make a new divert6 protocol.
>> That's not impossible, but no-one has done it.
>
> I've been looking at it, with hints from rwatson@ and bms@, but the
> problem right now lays in the way you can do dynamic protocol
> registrations with IPv4 but not yet with IPv6. Every time when I
> get one step further I end up with a new problem :-(
>
> Let's call it a learning excercise!
>
> Edwin
you could implement a whole new protocol family of which there
was a single protocol.. divert.
so you would open a socket of type.
sock = socket(PF_DIVERT, SOCK_RAW, DIVPROTO_6);
instead of
sin = socket(PF_INET6, SOCK_RAW, IPPROTO_DIVERT);
More information about the freebsd-net
mailing list