diff options
Diffstat (limited to 'Swiften/Network/NATPortMapping.h')
-rw-r--r-- | Swiften/Network/NATPortMapping.h | 75 |
1 files changed, 41 insertions, 34 deletions
diff --git a/Swiften/Network/NATPortMapping.h b/Swiften/Network/NATPortMapping.h index 0f6bd95..bf0fb1c 100644 --- a/Swiften/Network/NATPortMapping.h +++ b/Swiften/Network/NATPortMapping.h @@ -4,43 +4,50 @@ * See Documentation/Licenses/BSD-simplified.txt for more information. */ +/* + * Copyright (c) 2015-2018 Isode Limited. + * All rights reserved. + * See the COPYING file for more information. + */ + #pragma once +#include <Swiften/Base/API.h> #include <Swiften/Network/HostAddress.h> namespace Swift { - 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; - }; + class SWIFTEN_API NATPortMapping { + public: + enum Protocol { + TCP, + UDP + }; + + NATPortMapping(unsigned short localPort, unsigned short publicPort, Protocol protocol = TCP, uint32_t leaseInSeconds = 60 * 60 * 24) : + publicPort(publicPort), localPort(localPort), protocol(protocol), leaseInSeconds(leaseInSeconds) { + + } + + unsigned short getPublicPort() const { + return publicPort; + } + + unsigned short getLocalPort() const { + return localPort; + } + + Protocol getProtocol() const { + return protocol; + } + + uint32_t getLeaseInSeconds() const { + return leaseInSeconds; + } + + private: + unsigned short publicPort; + unsigned short localPort; + Protocol protocol; + uint32_t leaseInSeconds; + }; } |