+1999-05-02 andrew deryabin <djsf@softhome.net>
+
+ * http.c (gethttp): Specify port in `Host' header only if it's
+ different from 80.
+
1998-11-03 Edward J. Sabol <sabol@alderaan.gsfc.nasa.gov>
* recur.c (recursive_retrieve): If a finite maximum depth is
char *authenticate_h;
char *proxyauth;
char *all_headers;
+ char *host_port;
+ int host_port_len;
int sock, hcount, num_written, all_length, remport, statcode;
long contlen, contrange;
struct urlinfo *ou;
}
remhost = ou->host;
remport = ou->port;
+
+ if (remport == 80) {
+ host_port = NULL; host_port_len = 0;
+ }
+ else {
+ host_port = (char *)alloca (numdigit (remport) + 2);
+ host_port_len = sprintf (host_port, ":%d", remport);
+ }
+
/* Allocate the memory for the request. */
request = (char *)alloca (strlen (command) + strlen (path)
+ strlen (useragent)
- + strlen (remhost) + numdigit (remport)
+ + strlen (remhost) + host_port_len
+ strlen (HTTP_ACCEPT)
+ (referer ? strlen (referer) : 0)
+ (wwwauth ? strlen (wwwauth) : 0)
sprintf (request, "\
%s %s HTTP/1.0\r\n\
User-Agent: %s\r\n\
-Host: %s:%d\r\n\
+Host: %s%s\r\n\
Accept: %s\r\n\
%s%s%s%s%s%s\r\n",
- command, path, useragent, remhost, remport, HTTP_ACCEPT,
- referer ? referer : "",
+ command, path, useragent, remhost, host_port ? host_port : "",
+ HTTP_ACCEPT, referer ? referer : "",
wwwauth ? wwwauth : "",
proxyauth ? proxyauth : "",
range ? range : "",