Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 05 May 2008 16:18:54 -0700
From:      Julian Elischer <julian@elischer.org>
To:        Edwin Groothuis <edwin@mavetju.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: IPPROTO_DIVERT and PF_INET6
Message-ID:  <481F95DE.6090201@elischer.org>
In-Reply-To: <20080505231009.GX44028@k7.mavetju>
References:  <20080503100043.GA68835@k7.mavetju> <m2od7k7e5z.wl%Jinmei_Tatuya@isc.org> <481F6AE1.5020408@elischer.org> <20080505231009.GX44028@k7.mavetju>

next in thread | previous in thread | raw e-mail | index | archive | help
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);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?481F95DE.6090201>