https://bugs.gentoo.org/934173 https://github.com/LizardByte/Sunshine/pull/2746 From 850f656676d30ffb47028e865982e56be161d179 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Sun, 23 Jun 2024 16:21:23 +0100 Subject: [PATCH] fix(upnp): Support miniupnpc API version 18 (release 2.2.8) --- src/upnp.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/upnp.cpp b/src/upnp.cpp index 2743ebae..e6ec057b 100644 --- a/src/upnp.cpp +++ b/src/upnp.cpp @@ -109,7 +109,11 @@ namespace upnp { IGDdatas data; urls_t urls; std::array lan_addr; +#if (MINIUPNPC_API_VERSION >= 18) + auto status = UPNP_GetValidIGD(device.get(), &urls.el, &data, lan_addr.data(), lan_addr.size(), nullptr, 0); +#else auto status = UPNP_GetValidIGD(device.get(), &urls.el, &data, lan_addr.data(), lan_addr.size()); +#endif if (status != 1 && status != 2) { BOOST_LOG(debug) << "No valid IPv6 IGD: "sv << status_string(status); return false; @@ -331,7 +335,11 @@ namespace upnp { std::array lan_addr; urls_t urls; +#if (MINIUPNPC_API_VERSION >= 18) + auto status = UPNP_GetValidIGD(device.get(), &urls.el, &data, lan_addr.data(), lan_addr.size(), nullptr, 0); +#else auto status = UPNP_GetValidIGD(device.get(), &urls.el, &data, lan_addr.data(), lan_addr.size()); +#endif if (status != 1 && status != 2) { BOOST_LOG(error) << status_string(status); mapped = false; -- 2.45.2