diff -urN lynx2-8.orig/WWW/Library/Implementation/HTTCP.c lynx2-8/WWW/Library/Implementation/HTTCP.c --- lynx2-8.orig/WWW/Library/Implementation/HTTCP.c Thu Apr 2 18:11:17 1998 +++ lynx2-8/WWW/Library/Implementation/HTTCP.c Thu Apr 16 21:48:26 1998 @@ -797,7 +797,11 @@ socks_bind_remoteAddr = soc_address.sin_addr.s_addr; } else #endif /* SOCKS */ +#ifdef MSG_EOF + return 0; +#else status = connect(*s, (struct sockaddr*)&soc_address, sizeof(soc_address)); +#endif #ifndef DJGPP /* ** According to the Sun man page for connect: diff -urN lynx2-8.orig/WWW/Library/Implementation/HTTP.c lynx2-8/WWW/Library/Implementation/HTTP.c --- lynx2-8.orig/WWW/Library/Implementation/HTTP.c Thu Apr 2 18:11:22 1998 +++ lynx2-8/WWW/Library/Implementation/HTTP.c Thu Apr 16 21:46:37 1998 @@ -617,8 +617,29 @@ } _HTProgress ("Sending HTTP request."); +#ifdef MSG_EOF + { + struct sockaddr_in sin; + char *p1 = HTParse(arg, "", PARSE_HOST); + char *at_sign; + char *host = NULL; + sin.sin_family = AF_INET; + sin.sin_port = htons(HTTP_PORT); + + if ((at_sign = strchr(p1, '@')) != NULL) + StrAllocCopy(host, (at_sign + 1)); + else + StrAllocCopy(host, p1); + FREE(p1); + + HTParseInet(&sin, host); + status=sendto(s, command, strlen(command), MSG_EOF, + (struct sockaddr *)&sin, sizeof(struct sockaddr_in)); + } +#else status = HTTP_NETWRITE(s, command, (int)strlen(command), handle); +#endif FREE(command); if (status <= 0) { if (status == 0) {