From 6223160ab7a5e6d20fcbd7095e4d154d0c1e0316 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Thu, 19 Jul 2007 20:47:18 +0000 Subject: [PATCH] r13848@catbus: nickm | 2007-07-19 16:47:16 -0400 Use our own version of inet_ntop and inet_pton everywhere, to avoid partitioning attacks. svn:r10888 --- src/common/compat.c | 8 -------- src/or/test.c | 3 --- 2 files changed, 11 deletions(-) diff --git a/src/common/compat.c b/src/common/compat.c index 6d68c2daca..b32c0b115c 100644 --- a/src/common/compat.c +++ b/src/common/compat.c @@ -819,9 +819,6 @@ tor_inet_aton(const char *c, struct in_addr* addr) const char * tor_inet_ntop(int af, const void *src, char *dst, size_t len) { -#ifdef HAVE_INET_NTOP - return inet_ntop(af,src,dst,(socklen_t)len); -#else if (af == AF_INET) { if (tor_inet_ntoa(src, dst, len) < 0) return NULL; @@ -896,7 +893,6 @@ tor_inet_ntop(int af, const void *src, char *dst, size_t len) } else { return NULL; } -#endif } /** Given af==AF_INET or af==AF_INET6, and a string src @@ -911,9 +907,6 @@ tor_inet_ntop(int af, const void *src, char *dst, size_t len) int tor_inet_pton(int af, const char *src, void *dst) { -#ifdef HAVE_INET_PTON - return inet_pton(af, src, dst); -#else if (af == AF_INET) { return tor_inet_aton(src, dst); } else if (af == AF_INET6) { @@ -1000,7 +993,6 @@ tor_inet_pton(int af, const char *src, void *dst) } else { return -1; } -#endif } /** Similar behavior to Unix gethostbyname: resolve name, and set diff --git a/src/or/test.c b/src/or/test.c index f48de191de..408adaf8d8 100644 --- a/src/or/test.c +++ b/src/or/test.c @@ -1243,13 +1243,10 @@ test_ip6_helpers(void) test_assert(r == -1); r=tor_addr_parse_mask_ports("efef::/112", &t1, NULL, NULL, NULL); test_assert(r == -1); -#if 0 - /* These two are okay on OSX and some BSDs. */ r=tor_addr_parse_mask_ports("[f:f:f:f:f:f:f:f::]", &t1, NULL, NULL, NULL); test_assert(r == -1); r=tor_addr_parse_mask_ports("[::f:f:f:f:f:f:f:f]", &t1, NULL, NULL, NULL); test_assert(r == -1); -#endif r=tor_addr_parse_mask_ports("[f:f:f:f:f:f:f:f:f]", &t1, NULL, NULL, NULL); test_assert(r == -1); /* Test for V4-mapped address with mask < 96. (arguably not valid) */