diff options
author | Tobias Markmann <tm@ayena.de> | 2016-10-06 20:49:34 (GMT) |
---|---|---|
committer | Kevin Smith <kevin.smith@isode.com> | 2016-10-21 07:54:02 (GMT) |
commit | 223bdbe232d42e459d4e1b840fe91486e5b4b733 (patch) | |
tree | f6b5e245bdba0b7a58d30a97df41f242b4c7c58d /Swiften/Network/MiniUPnPInterface.cpp | |
parent | da871d063e4c24d64317b5a2df69a59e3b60c9b7 (diff) | |
download | swift-223bdbe232d42e459d4e1b840fe91486e5b4b733.zip swift-223bdbe232d42e459d4e1b840fe91486e5b4b733.tar.bz2 |
Fix version number for libminiupnpc version switch
Test-Information:
Without this building failed under Gentoo Linux distribution.
Verified this on Sabayon, a desktop Linux distribution based
on Gentoo, by adding it to our cross distribution test.
With this fix it builds on all platforms, including Sabayon.
Change-Id: I23aec19b9755244dd3dbe6f581cf170eaf334dfc
Diffstat (limited to 'Swiften/Network/MiniUPnPInterface.cpp')
-rw-r--r-- | Swiften/Network/MiniUPnPInterface.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Swiften/Network/MiniUPnPInterface.cpp b/Swiften/Network/MiniUPnPInterface.cpp index 9006ceb..d63b69e 100644 --- a/Swiften/Network/MiniUPnPInterface.cpp +++ b/Swiften/Network/MiniUPnPInterface.cpp @@ -8,61 +8,61 @@ * Copyright (c) 2015-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #include <Swiften/Network/MiniUPnPInterface.h> #include <memory> #include <boost/lexical_cast.hpp> #include <miniupnpc.h> #include <upnpcommands.h> #include <upnperrors.h> #include <Swiften/Base/Log.h> namespace Swift { struct MiniUPnPInterface::Private { bool isValid; std::string localAddress; UPNPDev* deviceList; UPNPUrls urls; IGDdatas data; }; MiniUPnPInterface::MiniUPnPInterface() : p(new Private()) { p->isValid = false; int error = 0; -#if MINIUPNPC_API_VERSION > 14 +#if MINIUPNPC_API_VERSION > 13 p->deviceList = upnpDiscover(1500 /* timeout in ms */, nullptr, nullptr, 0, 0 /* do IPv6? */, 2 /* default TTL */, &error); #else p->deviceList = upnpDiscover(1500 /* timeout in ms */, nullptr, nullptr, 0, 0 /* do IPv6? */, &error); #endif if (!p->deviceList) { return; } char lanAddress[64]; if (!UPNP_GetValidIGD(p->deviceList, &p->urls, &p->data, lanAddress, sizeof(lanAddress))) { return; } p->localAddress = std::string(lanAddress); p->isValid = true; } MiniUPnPInterface::~MiniUPnPInterface() { if (p->isValid) { FreeUPNPUrls(&p->urls); } freeUPNPDevlist(p->deviceList); } boost::optional<HostAddress> MiniUPnPInterface::getPublicIP() { if (!p->isValid) { return boost::optional<HostAddress>(); } char externalIPAddress[40]; int ret = UPNP_GetExternalIPAddress(p->urls.controlURL, p->data.first.servicetype, externalIPAddress); if (ret != UPNPCOMMAND_SUCCESS) { |