From a742bbf8610aae58fc6d6ee2377c83395b3ca535 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Thu, 28 Feb 2008 01:57:42 +0000 Subject: fixed PlainPacket get Src/Dst Address added toString to NetworkAddress --- networkAddress.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'networkAddress.cpp') diff --git a/networkAddress.cpp b/networkAddress.cpp index d87f5ba..8be45e2 100644 --- a/networkAddress.cpp +++ b/networkAddress.cpp @@ -91,6 +91,26 @@ network_address_type_t NetworkAddress::getNetworkAddressType() return network_address_type_; } +std::string NetworkAddress::toString() const +{ + if (network_address_type_==ipv4){ + char buf[INET_ADDRSTRLEN]; + if(!inet_ntop(AF_INET, &ipv4_address_, buf, sizeof(buf))) + return std::string(""); + return std::string(buf); + } + else if (network_address_type_==ipv6) { + char buf[INET6_ADDRSTRLEN]; + if(!inet_ntop(AF_INET6, &ipv6_address_, buf, sizeof(buf))) + return std::string(""); + return std::string(buf); + } + else if (network_address_type_==ethernet) { + // TODO + } + return std::string(""); +} + bool NetworkAddress::operator<(const NetworkAddress &right) const { if (network_address_type_!=right.network_address_type_) -- cgit v1.2.3