svn commit: r186955 - in head/sys: conf netinet
julian at elischer.org
Sat Jan 10 11:38:19 PST 2009
Adrian Chadd wrote:
> 2009/1/10 Robert Watson <rwatson at freebsd.org>:
>> I think Julian's analysis, that this is more of an inet option than a
>> socket-layer option, seems more appropriate to me, the benefits of
>> portability in adopting the API used by OpenBSD/BSDI/etc seem more
>> compelling. We should make sure that, if we move to the socket option used
>> on those systems, we block setting it on non-supporting protocols, or
>> confusion will result. In particular, Adrian's change only modified IPv4,
>> not IPv6, so until it's implemented on IPv6 it shouldn't be possible to set
>> the option.
actually I think i'm wrong in one way.. (I had been up 2 days)
I was mixing in my mind two things..
the action of 'bind' whiuch this patch is about,
and the action of accepting packets destined for other addresses,
which is what the as yet unchecked in part.. the 'for-me' ipfw
option is about.
bind() of course can not be done after the socket has gone away so I
don't know what I was thinking when I said that. However the protocol
has the code that
makes the decision as to whether the address is bindable or not,
which is why I did it the way I did..
so in hte end it is still a toss up as to whether this should be
a protocol or socket layer option, as ultimately
the protocol has to (not) do the work.
> I'm happy to (eventually) also implement the BSDI API once I actually
> spend time looking at what the difference in behaviours are. If we're
> lucky, the only difference is where the socket option hooks in and the
> actual network behaviour is the same.
> (Meanwhile, I think I have to go off and implement this particular
> behaviour in Squid, and see if the OpenBSD support indeed does
> function as advertised.)
More information about the svn-src-head