diff options
| author | Joseph Henry <[email protected]> | 2023-03-29 15:44:19 -0700 |
|---|---|---|
| committer | Travis LaDuke <[email protected]> | 2023-07-13 16:34:14 -0700 |
| commit | fdc2e0f692166ae03bc042e67f342d5d8d48c4f8 (patch) | |
| tree | 160bf8058cbe66dc37be9077ab9de118514bfe00 /osdep | |
| parent | 2672d037a8a70623fa1d99833ed7b7feb02181ff (diff) | |
Release memory previously allocated by UPNP_GetValidIGD
Diffstat (limited to 'osdep')
| -rw-r--r-- | osdep/PortMapper.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/osdep/PortMapper.cpp b/osdep/PortMapper.cpp index 6418464d..0027ed69 100644 --- a/osdep/PortMapper.cpp +++ b/osdep/PortMapper.cpp @@ -207,7 +207,8 @@ public: memset(&data,0,sizeof(data)); OSUtils::ztsnprintf(inport,sizeof(inport),"%d",localPort); - if ((UPNP_GetValidIGD(devlist,&urls,&data,lanaddr,sizeof(lanaddr)))&&(lanaddr[0])) { + int foundValidIGD = 0; + if ((foundValidIGD = UPNP_GetValidIGD(devlist,&urls,&data,lanaddr,sizeof(lanaddr)))&&(lanaddr[0])) { #ifdef ZT_PORTMAPPER_TRACE PM_TRACE("PortMapper: UPnP: my LAN IP address: %s" ZT_EOL_S,lanaddr); #endif @@ -282,9 +283,11 @@ public: PM_TRACE("PortMapper: UPnP: UPNP_GetValidIGD failed, returning to NAT-PMP mode" ZT_EOL_S); #endif } - freeUPNPDevlist(devlist); + if(foundValidIGD) { + FreeUPNPUrls(&urls); + } } else { mode = 0; #ifdef ZT_PORTMAPPER_TRACE |
