diff options
author | gnn <gnn@FreeBSD.org> | 2005-05-14 19:43:10 +0000 |
---|---|---|
committer | gnn <gnn@FreeBSD.org> | 2005-05-14 19:43:10 +0000 |
commit | c138dacf0cfab71856dbdc3a17fafb8d56f55dca (patch) | |
tree | 8d7bc73f094f38471157e723e1293dac628b93c0 /lib/libc/net/name6.c | |
parent | 9d27c6032cebdc3d7124bc1b4d6a89f6727927c2 (diff) | |
download | FreeBSD-src-c138dacf0cfab71856dbdc3a17fafb8d56f55dca.zip FreeBSD-src-c138dacf0cfab71856dbdc3a17fafb8d56f55dca.tar.gz |
Submitted by: Jinmei Tatuya, Hajimu Umemoto
Reviewed by: rwatson at freebsd dot org
Approved by: rwatson at freebsd dot org
MFC after: 1 week
Fix the matchlen() function so that it handles the IPv4 (AF_INET)
case correctly. Until now it has been treating IPv4 addresses
as if they were IPv6 which could lead to corruption errors.
Diffstat (limited to 'lib/libc/net/name6.c')
-rw-r--r-- | lib/libc/net/name6.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libc/net/name6.c b/lib/libc/net/name6.c index 4bbc5f0..611dea7 100644 --- a/lib/libc/net/name6.c +++ b/lib/libc/net/name6.c @@ -1028,8 +1028,8 @@ matchlen(src, dst) break; #endif case AF_INET: - s = (u_char *)&((struct sockaddr_in6 *)src)->sin6_addr; - d = (u_char *)&((struct sockaddr_in6 *)dst)->sin6_addr; + s = (u_char *)&((struct sockaddr_in *)src)->sin_addr; + d = (u_char *)&((struct sockaddr_in *)dst)->sin_addr; addrlen = sizeof(struct in_addr); lim = s + addrlen; break; |