version 1.28, 2000/04/24 03:30:16 |
version 1.29, 2000/05/02 00:54:53 |
|
|
volatile int s; |
volatile int s; |
size_t len; |
size_t len; |
char c, *cp, *ep, *portnum, *path, buf[4096]; |
char c, *cp, *ep, *portnum, *path, buf[4096]; |
|
char pbuf[NI_MAXSERV]; |
const char *savefile; |
const char *savefile; |
char *line, *proxy, *host, *port; |
char *line, *proxy, *host, *port; |
char *hosttail; |
char *hosttail; |
|
|
continue; |
continue; |
} |
} |
|
|
|
/* get port in numeric */ |
|
if (getnameinfo(res->ai_addr, res->ai_addrlen, NULL, 0, |
|
pbuf, sizeof(pbuf), NI_NUMERICSERV) == 0) |
|
port = pbuf; |
|
else |
|
port = NULL; |
|
|
break; |
break; |
} |
} |
freeaddrinfo(res0); |
freeaddrinfo(res0); |
|
|
} |
} |
if (strchr(host, ':')) { |
if (strchr(host, ':')) { |
snprintf(buf, sizeof(buf), |
snprintf(buf, sizeof(buf), |
"GET %s%s HTTP/1.0\r\nHost: [%s]:%s\r\n\r\n", |
"GET %s%s HTTP/1.0\r\nHost: [%s]%s%s\r\n\r\n", |
proxy ? "" : "/", path, host, port); |
proxy ? "" : "/", path, host, |
|
port ? ":" : "", port ? port : ""); |
} else { |
} else { |
snprintf(buf, sizeof(buf), |
snprintf(buf, sizeof(buf), |
"GET %s%s HTTP/1.0\r\nHost: %s:%s\r\n\r\n", |
"GET %s%s HTTP/1.0\r\nHost: %s%s%s\r\n\r\n", |
proxy ? "" : "/", path, host, port); |
proxy ? "" : "/", path, host, |
|
port ? ":" : "", port ? port : ""); |
} |
} |
len = strlen(buf); |
len = strlen(buf); |
if (write(s, buf, len) < len) { |
if (write(s, buf, len) < len) { |