From 4fffec066a10470a420966f87e1e4d9dac062262 Mon Sep 17 00:00:00 2001 From: Cory Fields Date: Thu, 13 Jun 2024 06:25:37 -0700 Subject: [PATCH] upnp: add compatibility for miniupnpc 2.2.8 See: https://github.com/miniupnp/miniupnp/commit/c0a50ce33e3b99ce8a96fd43049bb5b53ffac62f The return value of 2 now indicates: "A valid connected IGD has been found but its IP address is reserved (non routable)" We continue to ignore any return value other than 1. --- src/mapport.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mapport.cpp b/src/mapport.cpp index 73b33d9a857ca..8cb2cf7409345 100644 --- a/src/mapport.cpp +++ b/src/mapport.cpp @@ -166,8 +166,11 @@ static bool ProcessUpnp() struct UPNPUrls urls{}; struct IGDdatas data{}; int r; - +#if MINIUPNPC_API_VERSION <= 17 r = UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr)); +#else + r = UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr), nullptr, 0); +#endif if (r == 1) { if (fDiscover) { char externalIPAddress[40];