Make TSocketAddress use folly::IPAddress
[folly.git] / folly / IPAddressV4.cpp
index 144e4cce6d006b204ce95d52fddfd14f0682c9e5..a5db28fc50933d52375985b2ba5df1b0a69069de 100644 (file)
@@ -28,6 +28,8 @@ using std::string;
 
 namespace folly {
 
+static IPAddressV4 loopback_addr("127.0.0.0");
+
 // free functions
 size_t hash_value(const IPAddressV4& addr) {
   return addr.hash();
@@ -143,6 +145,10 @@ bool IPAddressV4::inSubnetWithMask(const IPAddressV4& subnet,
   return (mask == subMask);
 }
 
+bool IPAddressV4::isLoopback() const {
+  return inSubnetWithMask(loopback_addr, fetchMask(8));
+}
+
 // public
 bool IPAddressV4::isNonroutable() const {
   auto ip = toLongHBO();