summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/Network/MiniUPnPInterface.h')
-rw-r--r--Swiften/Network/MiniUPnPInterface.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/Swiften/Network/MiniUPnPInterface.h b/Swiften/Network/MiniUPnPInterface.h
index ae9be66..ced7db2 100644
--- a/Swiften/Network/MiniUPnPInterface.h
+++ b/Swiften/Network/MiniUPnPInterface.h
@@ -7,30 +7,25 @@
#pragma once
#include <boost/optional.hpp>
-#include <miniupnpc.h>
+#include <boost/noncopyable.hpp>
#include <Swiften/Network/NATPortMapping.h>
#include <Swiften/Network/NATTraversalInterface.h>
namespace Swift {
- class MiniUPnPInterface : public NATTraversalInterface {
+ class MiniUPnPInterface : public NATTraversalInterface, boost::noncopyable {
public:
MiniUPnPInterface();
~MiniUPnPInterface();
- virtual bool isAvailable() {
- return isValid;
- }
+ virtual bool isAvailable();
boost::optional<HostAddress> getPublicIP();
boost::optional<NATPortMapping> addPortForward(int localPort, int publicPort);
bool removePortForward(const NATPortMapping&);
private:
- bool isValid;
- std::string localAddress;
- UPNPDev* deviceList;
- UPNPUrls urls;
- IGDdatas data;
+ class Private;
+ boost::shared_ptr<Private> p;
};
}