Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 4 Sep 2010 22:21:57 +0100
From:      "Robert N. M. Watson" <rwatson@freebsd.org>
To:        Andre Oppermann <andre@freebsd.org>
Cc:        =?iso-8859-1?Q?Michael_T=FCxen?= <Michael.Tuexen@lurchi.franken.de>, freebsd-net@freebsd.org
Subject:   Re: Removal of deprecated implied connect for TCP
Message-ID:  <5A1BD1ED-B55D-43A5-8D91-DD243A48F1AE@freebsd.org>
In-Reply-To: <4C7D02BB.40300@freebsd.org>
References:  <4C7A7B25.9040300@freebsd.org>	<alpine.BSF.2.00.1008311102220.22661@fledge.watson.org> <7B42D7FB-B782-4EE9-8813-BF7D3ED3274B@lurchi.franken.de> <4C7D02BB.40300@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help


On 31 Aug 2010, at 14:25, Andre Oppermann wrote:

>>> I'm not entirely comfortable with this change, and would like a chance to cogitate on it a bit
>>> more.  While I'm not aware of any applications depending on the semantic for TCP, I know that
>>> we do use it for UNIX domain sockets. Since it's a documented API, if we are going to remove
>>> it, then we need to go through a deprecation process, not least by marking it as a deprecated
>>> API in 8.x before having it vanish in 9.0.
> >
>> sendto() is also used for SCTP SOCK_STREAMS and SOCK_SEQPACKET sockets...
> 
> sendto() will not be touched or modified.  It's just that on a TCP socket
> the tcp protocol will not perform an implied connect anymore.  The only thing
> that changes is TCP dropping a deprecated and experimental extension and
> behaving like every other UNIXy OS.
> 
> sendto() will continue to work for UDP, SCTP and Domain sockets and whoever
> else currently supports it, except TCP.

Right -- I think you're missing the thrust of this objection: it's a standard part of the FreeBSD API that sendto(2) with an address implicitly connects across all over our protocols, so making TCP be the only exception seems counter-productive. What is it that will actually be accomplished by removing this functionality, other than reducing the number of lines of code in tcp_usr_send by a couple of dozen?

Robert


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5A1BD1ED-B55D-43A5-8D91-DD243A48F1AE>