summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/Network/NATPortMapping.h')
-rw-r--r--Swiften/Network/NATPortMapping.h75
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;
+ };
}