From cdb38e53978c27d0ccb9a7ccc987508122b2bc69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Bostr=C3=B6m?= Date: Thu, 26 Nov 2015 00:35:49 +0100 Subject: [PATCH] Strip IP addresses in NDEBUG (release) builds. Also removes the ability to override (set) this. BUG= R=pthatcher@webrtc.org Review URL: https://codereview.webrtc.org/1480743002 . Cr-Commit-Position: refs/heads/master@{#10796} --- webrtc/base/ipaddress.cc | 14 +++++--------- webrtc/base/ipaddress.h | 4 ---- webrtc/base/ipaddress_unittest.cc | 18 +++++++----------- webrtc/base/socketaddress_unittest.cc | 19 +++++++++++-------- 4 files changed, 23 insertions(+), 32 deletions(-) diff --git a/webrtc/base/ipaddress.cc b/webrtc/base/ipaddress.cc index f0698e52f1..3b74d60036 100644 --- a/webrtc/base/ipaddress.cc +++ b/webrtc/base/ipaddress.cc @@ -41,8 +41,6 @@ static const in6_addr kTeredoPrefix = {{{0x20, 0x01, 0x00, 0x00}}}; static const in6_addr kV4CompatibilityPrefix = {{{0}}}; static const in6_addr k6BonePrefix = {{{0x3f, 0xfe, 0}}}; -bool IPAddress::strip_sensitive_ = false; - static bool IsPrivateV4(uint32_t ip); static in_addr ExtractMappedAddress(const in6_addr& addr); @@ -144,9 +142,10 @@ std::string IPAddress::ToString() const { } std::string IPAddress::ToSensitiveString() const { - if (!strip_sensitive_) - return ToString(); - +#if !defined(NDEBUG) + // Return non-stripped in debug. + return ToString(); +#else switch (family_) { case AF_INET: { std::string address = ToString(); @@ -164,6 +163,7 @@ std::string IPAddress::ToSensitiveString() const { } } return std::string(); +#endif } IPAddress IPAddress::Normalized() const { @@ -186,10 +186,6 @@ IPAddress IPAddress::AsIPv6Address() const { return IPAddress(v6addr); } -void IPAddress::set_strip_sensitive(bool enable) { - strip_sensitive_ = enable; -} - bool InterfaceAddress::operator==(const InterfaceAddress &other) const { return ipv6_flags_ == other.ipv6_flags() && static_cast(*this) == other; diff --git a/webrtc/base/ipaddress.h b/webrtc/base/ipaddress.h index 0789017e6d..ef1e3d8170 100644 --- a/webrtc/base/ipaddress.h +++ b/webrtc/base/ipaddress.h @@ -112,16 +112,12 @@ class IPAddress { // Whether this is an unspecified IP address. bool IsNil() const; - static void set_strip_sensitive(bool enable); - private: int family_; union { in_addr ip4; in6_addr ip6; } u_; - - static bool strip_sensitive_; }; // IP class which could represent IPv6 address flags which is only diff --git a/webrtc/base/ipaddress_unittest.cc b/webrtc/base/ipaddress_unittest.cc index d5cb6f709c..10eb07424d 100644 --- a/webrtc/base/ipaddress_unittest.cc +++ b/webrtc/base/ipaddress_unittest.cc @@ -888,20 +888,16 @@ TEST(IPAddressTest, TestCategorizeIPv6) { TEST(IPAddressTest, TestToSensitiveString) { IPAddress addr_v4 = IPAddress(kIPv4PublicAddr); - EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToString()); - EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToSensitiveString()); - IPAddress::set_strip_sensitive(true); - EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToString()); - EXPECT_EQ(kIPv4PublicAddrAnonymizedString, addr_v4.ToSensitiveString()); - IPAddress::set_strip_sensitive(false); - IPAddress addr_v6 = IPAddress(kIPv6PublicAddr); + EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToString()); EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToString()); - EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToSensitiveString()); - IPAddress::set_strip_sensitive(true); - EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToString()); +#if defined(NDEBUG) + EXPECT_EQ(kIPv4PublicAddrAnonymizedString, addr_v4.ToSensitiveString()); EXPECT_EQ(kIPv6PublicAddrAnonymizedString, addr_v6.ToSensitiveString()); - IPAddress::set_strip_sensitive(false); +#else + EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToSensitiveString()); + EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToSensitiveString()); +#endif // defined(NDEBUG) } TEST(IPAddressTest, TestInterfaceAddress) { diff --git a/webrtc/base/socketaddress_unittest.cc b/webrtc/base/socketaddress_unittest.cc index 6e9f089561..21412fa23d 100644 --- a/webrtc/base/socketaddress_unittest.cc +++ b/webrtc/base/socketaddress_unittest.cc @@ -325,23 +325,26 @@ TEST(SocketAddressTest, TestToSensitiveString) { SocketAddress addr_v4("1.2.3.4", 5678); EXPECT_EQ("1.2.3.4", addr_v4.HostAsURIString()); EXPECT_EQ("1.2.3.4:5678", addr_v4.ToString()); - EXPECT_EQ("1.2.3.4", addr_v4.HostAsSensitiveURIString()); - EXPECT_EQ("1.2.3.4:5678", addr_v4.ToSensitiveString()); - IPAddress::set_strip_sensitive(true); + +#if defined(NDEBUG) EXPECT_EQ("1.2.3.x", addr_v4.HostAsSensitiveURIString()); EXPECT_EQ("1.2.3.x:5678", addr_v4.ToSensitiveString()); - IPAddress::set_strip_sensitive(false); +#else + EXPECT_EQ("1.2.3.4", addr_v4.HostAsSensitiveURIString()); + EXPECT_EQ("1.2.3.4:5678", addr_v4.ToSensitiveString()); +#endif // defined(NDEBUG) SocketAddress addr_v6(kTestV6AddrString, 5678); EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsURIString()); EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToString()); - EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsSensitiveURIString()); - EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToSensitiveString()); - IPAddress::set_strip_sensitive(true); +#if defined(NDEBUG) EXPECT_EQ("[" + kTestV6AddrAnonymizedString + "]", addr_v6.HostAsSensitiveURIString()); EXPECT_EQ(kTestV6AddrFullAnonymizedString, addr_v6.ToSensitiveString()); - IPAddress::set_strip_sensitive(false); +#else + EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsSensitiveURIString()); + EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToSensitiveString()); +#endif // defined(NDEBUG) } } // namespace rtc