diff --git a/Userland/Libraries/LibCore/SocketAddress.h b/Userland/Libraries/LibCore/SocketAddress.h index 97403906ca..28dc6833df 100644 --- a/Userland/Libraries/LibCore/SocketAddress.h +++ b/Userland/Libraries/LibCore/SocketAddress.h @@ -84,6 +84,9 @@ public: return address; } + bool operator==(SocketAddress const& other) const = default; + bool operator!=(SocketAddress const& other) const = default; + private: Type m_type { Type::Invalid }; IPv4Address m_ipv4_address; @@ -100,3 +103,11 @@ struct AK::Formatter : Formatter { return Formatter::format(builder, value.to_deprecated_string()); } }; + +template<> +struct AK::Traits : public GenericTraits { + static unsigned hash(Core::SocketAddress const& socket_address) + { + return pair_int_hash(Traits::hash(socket_address.ipv4_address()), Traits::hash(socket_address.port())); + } +};