summaryrefslogtreecommitdiff
path: root/src/networkAddress.cpp
diff options
context:
space:
mode:
authorChristian Pointner <equinox@anytun.org>2009-01-21 00:07:07 +0000
committerChristian Pointner <equinox@anytun.org>2009-01-21 00:07:07 +0000
commitfd7e04ea8b40270c4181c6910cf4ca1437c68cad (patch)
treeb78eec0f0a75149a6462bd25e7e8ee29b8b95dce /src/networkAddress.cpp
parentsafer handling of registry functions (diff)
tun mode works now on windows
Diffstat (limited to 'src/networkAddress.cpp')
-rw-r--r--src/networkAddress.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/networkAddress.cpp b/src/networkAddress.cpp
index f922c00..059b670 100644
--- a/src/networkAddress.cpp
+++ b/src/networkAddress.cpp
@@ -105,6 +105,30 @@ network_address_type_t NetworkAddress::getNetworkAddressType() const
return network_address_type_;
}
+const boost::asio::ip::address_v4& NetworkAddress::getNetworkAddressV4() const
+{
+ if(network_address_type_ != ipv4)
+ throw std::runtime_error("wrong address type");
+
+ return ipv4_address_;
+}
+
+const boost::asio::ip::address_v6& NetworkAddress::getNetworkAddressV6() const
+{
+ if(network_address_type_ != ipv6)
+ throw std::runtime_error("wrong address type");
+
+ return ipv6_address_;
+}
+
+const u_int64_t NetworkAddress::getNetworkAdrressEther() const
+{
+ if(network_address_type_ != ethernet)
+ throw std::runtime_error("wrong address type");
+
+ return ethernet_address_;
+}
+
std::string NetworkAddress::toString() const
{
if (network_address_type_==ipv4){