diff options
Diffstat (limited to 'Swiften/Network/NATPortMapping.h')
-rw-r--r-- | Swiften/Network/NATPortMapping.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/Swiften/Network/NATPortMapping.h b/Swiften/Network/NATPortMapping.h index 82f62bb..db14500 100644 --- a/Swiften/Network/NATPortMapping.h +++ b/Swiften/Network/NATPortMapping.h @@ -3,25 +3,43 @@ * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #pragma once #include <Swiften/Network/HostAddress.h> namespace Swift { - struct NATPortMapping { + class NATPortMapping { + public: enum Protocol { TCP, UDP, }; NATPortMapping(int localPort, int publicPort, Protocol protocol = TCP, int leaseInSeconds = 60 * 60 * 24) : publicPort(publicPort), localPort(localPort), protocol(protocol), leaseInSeconds(leaseInSeconds) { } + int getPublicPort() const { + return publicPort; + } + + int getLocalPort() const { + return localPort; + } + + Protocol getProtocol() const { + return protocol; + } + + int getLeaseInSeconds() const { + return leaseInSeconds; + } + + private: int publicPort; int localPort; Protocol protocol; int leaseInSeconds; }; } |