summaryrefslogtreecommitdiff
path: root/usr.bin/fetch/http.c
diff options
context:
space:
mode:
authorGarrett Wollman <wollman@FreeBSD.org>1998-05-09 20:50:37 +0000
committerGarrett Wollman <wollman@FreeBSD.org>1998-05-09 20:50:37 +0000
commiteeed58d8240eaa13473acaf88f6cda0591268cb2 (patch)
tree5364a7460324eb527961b8034001ce6dfbf6d331 /usr.bin/fetch/http.c
parent795d035511fd5df88ce59dca367b32d90b6d5ad7 (diff)
Notes
Diffstat (limited to 'usr.bin/fetch/http.c')
-rw-r--r--usr.bin/fetch/http.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/usr.bin/fetch/http.c b/usr.bin/fetch/http.c
index 0c872093023b..7b9cb50216e0 100644
--- a/usr.bin/fetch/http.c
+++ b/usr.bin/fetch/http.c
@@ -26,7 +26,7 @@
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: http.c,v 1.16 1997/11/22 01:00:42 fenner Exp $
+ * $Id: http.c,v 1.17 1998/02/20 05:11:40 jb Exp $
*/
#include <sys/types.h>
@@ -594,11 +594,14 @@ retry:
setup_sigalrm();
alarm(timo);
- /* some hosts do not properly handle T/TCP connections. If
- * sendmsg() is used to establish the connection, the OS may
- * choose to try to use one which could cause the transfer
- * to fail. Doing a connect() first ensures that the OS
- * does not attempt T/TCP.
+ /*
+ * Some hosts do not correctly handle data in SYN segments.
+ * If no connect(2) is done, the TCP stack will send our
+ * initial request as such a segment. fs_use_connect works
+ * around these broken server TCPs by avoiding this case.
+ * It is not the default because we want to exercise this
+ * code path, and in any case the majority of hosts handle
+ * our default correctly.
*/
if (fs->fs_use_connect && (connect(s, (struct sockaddr *)&sin,
sizeof(struct sockaddr_in)) < 0)) {