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}
This commit is contained in:
parent
b86c5027a0
commit
cdb38e5397
@ -41,8 +41,6 @@ static const in6_addr kTeredoPrefix = {{{0x20, 0x01, 0x00, 0x00}}};
|
|||||||
static const in6_addr kV4CompatibilityPrefix = {{{0}}};
|
static const in6_addr kV4CompatibilityPrefix = {{{0}}};
|
||||||
static const in6_addr k6BonePrefix = {{{0x3f, 0xfe, 0}}};
|
static const in6_addr k6BonePrefix = {{{0x3f, 0xfe, 0}}};
|
||||||
|
|
||||||
bool IPAddress::strip_sensitive_ = false;
|
|
||||||
|
|
||||||
static bool IsPrivateV4(uint32_t ip);
|
static bool IsPrivateV4(uint32_t ip);
|
||||||
static in_addr ExtractMappedAddress(const in6_addr& addr);
|
static in_addr ExtractMappedAddress(const in6_addr& addr);
|
||||||
|
|
||||||
@ -144,9 +142,10 @@ std::string IPAddress::ToString() const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::string IPAddress::ToSensitiveString() const {
|
std::string IPAddress::ToSensitiveString() const {
|
||||||
if (!strip_sensitive_)
|
#if !defined(NDEBUG)
|
||||||
|
// Return non-stripped in debug.
|
||||||
return ToString();
|
return ToString();
|
||||||
|
#else
|
||||||
switch (family_) {
|
switch (family_) {
|
||||||
case AF_INET: {
|
case AF_INET: {
|
||||||
std::string address = ToString();
|
std::string address = ToString();
|
||||||
@ -164,6 +163,7 @@ std::string IPAddress::ToSensitiveString() const {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return std::string();
|
return std::string();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
IPAddress IPAddress::Normalized() const {
|
IPAddress IPAddress::Normalized() const {
|
||||||
@ -186,10 +186,6 @@ IPAddress IPAddress::AsIPv6Address() const {
|
|||||||
return IPAddress(v6addr);
|
return IPAddress(v6addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void IPAddress::set_strip_sensitive(bool enable) {
|
|
||||||
strip_sensitive_ = enable;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool InterfaceAddress::operator==(const InterfaceAddress &other) const {
|
bool InterfaceAddress::operator==(const InterfaceAddress &other) const {
|
||||||
return ipv6_flags_ == other.ipv6_flags() &&
|
return ipv6_flags_ == other.ipv6_flags() &&
|
||||||
static_cast<const IPAddress&>(*this) == other;
|
static_cast<const IPAddress&>(*this) == other;
|
||||||
|
|||||||
@ -112,16 +112,12 @@ class IPAddress {
|
|||||||
// Whether this is an unspecified IP address.
|
// Whether this is an unspecified IP address.
|
||||||
bool IsNil() const;
|
bool IsNil() const;
|
||||||
|
|
||||||
static void set_strip_sensitive(bool enable);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int family_;
|
int family_;
|
||||||
union {
|
union {
|
||||||
in_addr ip4;
|
in_addr ip4;
|
||||||
in6_addr ip6;
|
in6_addr ip6;
|
||||||
} u_;
|
} u_;
|
||||||
|
|
||||||
static bool strip_sensitive_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// IP class which could represent IPv6 address flags which is only
|
// IP class which could represent IPv6 address flags which is only
|
||||||
|
|||||||
@ -888,20 +888,16 @@ TEST(IPAddressTest, TestCategorizeIPv6) {
|
|||||||
|
|
||||||
TEST(IPAddressTest, TestToSensitiveString) {
|
TEST(IPAddressTest, TestToSensitiveString) {
|
||||||
IPAddress addr_v4 = IPAddress(kIPv4PublicAddr);
|
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);
|
IPAddress addr_v6 = IPAddress(kIPv6PublicAddr);
|
||||||
|
EXPECT_EQ(kIPv4PublicAddrString, addr_v4.ToString());
|
||||||
EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToString());
|
EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToString());
|
||||||
EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToSensitiveString());
|
#if defined(NDEBUG)
|
||||||
IPAddress::set_strip_sensitive(true);
|
EXPECT_EQ(kIPv4PublicAddrAnonymizedString, addr_v4.ToSensitiveString());
|
||||||
EXPECT_EQ(kIPv6PublicAddrString, addr_v6.ToString());
|
|
||||||
EXPECT_EQ(kIPv6PublicAddrAnonymizedString, addr_v6.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) {
|
TEST(IPAddressTest, TestInterfaceAddress) {
|
||||||
|
|||||||
@ -325,23 +325,26 @@ TEST(SocketAddressTest, TestToSensitiveString) {
|
|||||||
SocketAddress addr_v4("1.2.3.4", 5678);
|
SocketAddress addr_v4("1.2.3.4", 5678);
|
||||||
EXPECT_EQ("1.2.3.4", addr_v4.HostAsURIString());
|
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:5678", addr_v4.ToString());
|
||||||
EXPECT_EQ("1.2.3.4", addr_v4.HostAsSensitiveURIString());
|
|
||||||
EXPECT_EQ("1.2.3.4:5678", addr_v4.ToSensitiveString());
|
#if defined(NDEBUG)
|
||||||
IPAddress::set_strip_sensitive(true);
|
|
||||||
EXPECT_EQ("1.2.3.x", addr_v4.HostAsSensitiveURIString());
|
EXPECT_EQ("1.2.3.x", addr_v4.HostAsSensitiveURIString());
|
||||||
EXPECT_EQ("1.2.3.x:5678", addr_v4.ToSensitiveString());
|
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);
|
SocketAddress addr_v6(kTestV6AddrString, 5678);
|
||||||
EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsURIString());
|
EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsURIString());
|
||||||
EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToString());
|
EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToString());
|
||||||
EXPECT_EQ("[" + kTestV6AddrString + "]", addr_v6.HostAsSensitiveURIString());
|
#if defined(NDEBUG)
|
||||||
EXPECT_EQ(kTestV6AddrFullString, addr_v6.ToSensitiveString());
|
|
||||||
IPAddress::set_strip_sensitive(true);
|
|
||||||
EXPECT_EQ("[" + kTestV6AddrAnonymizedString + "]",
|
EXPECT_EQ("[" + kTestV6AddrAnonymizedString + "]",
|
||||||
addr_v6.HostAsSensitiveURIString());
|
addr_v6.HostAsSensitiveURIString());
|
||||||
EXPECT_EQ(kTestV6AddrFullAnonymizedString, addr_v6.ToSensitiveString());
|
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
|
} // namespace rtc
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user