8#include <miniupnpc/miniupnpc.h>
51 [[nodiscard]] std::unique_ptr<platf::deinit_t>
start();
Move-only RAII wrapper generated by KITTY_USING_MOVE_T. Alias for element type.
Definition upnp.h:30
Unique pointer wrapper with customizable pointer and deleter types.
Definition utility.h:820
Declarations for common platform specific utilities.
UPnP port mapping.
Definition upnp.cpp:26
constexpr auto INET6_ADDRESS_STRLEN
Protocol or platform constant for inet6 address strlen.
Definition upnp.h:17
constexpr auto REFRESH_INTERVAL
Protocol or platform constant for refresh interval.
Definition upnp.h:21
constexpr auto PORT_MAPPING_LIFETIME
GameStream port offset for port mapping lifetime.
Definition upnp.h:20
std::unique_ptr< platf::deinit_t > start()
Start UPnP port mapping and return its shutdown guard.
Definition upnp.cpp:382
constexpr auto IPv4
I pv4.
Definition upnp.h:18
constexpr auto IPv6
I pv6.
Definition upnp.h:19
int UPNP_GetValidIGDStatus(device_t &device, urls_t *urls, IGDdatas *data, std::array< char, INET6_ADDRESS_STRLEN > &lan_addr)
Get the valid IGD status.
Definition upnp.cpp:60
#define KITTY_USING_MOVE_T(move_t, t, init_val, z)
Define a move-only RAII wrapper with caller-provided initial value and destructor body.
Definition utility.h:48