httpd: small auth and IPv6 fixes (Kim B. Heino <Kim.Heino@bluegiga.com>)

This commit is contained in:
Denis Vlasenko 2007-09-25 11:58:33 +00:00
parent d9391b15f1
commit 35465a3f00

View File

@ -628,7 +628,7 @@ static void parse_conf(const char *path, int flag)
++p; /* so keep last character */
}
*p = '\0';
sprintf(p0, "%s:%s", p0, c);
sprintf(p0 + strlen(p0), ":%s", c);
}
#endif
@ -1688,6 +1688,13 @@ static void handle_incoming_and_exit(const len_and_sockaddr *fromAddr)
if (fromAddr->sa.sa_family == AF_INET) {
rmt_ip = ntohl(fromAddr->sin.sin_addr.s_addr);
}
#if ENABLE_FEATURE_IPV6
if (fromAddr->sa.sa_family == AF_INET6
&& fromAddr->sin6.sin6_addr.s6_addr32[0] == 0
&& fromAddr->sin6.sin6_addr.s6_addr32[1] == 0
&& ntohl(fromAddr->sin6.sin6_addr.s6_addr32[2]) == 0xffff)
rmt_ip = ntohl(fromAddr->sin6.sin6_addr.s6_addr32[3]);
#endif
if (ENABLE_FEATURE_HTTPD_CGI || DEBUG || verbose) {
rmt_ip_str = xmalloc_sockaddr2dotted(&fromAddr->sa);
}