From cffc85bb0b606947b2368fa28bed03c066e1e686 Mon Sep 17 00:00:00 2001 From: "Anthony G. Basile" Date: Thu, 22 Mar 2012 12:09:40 -0400 Subject: Fix compile error against miniupnpc-1.6 when --enable-upnp The bump from miniupnpc-1.5 to 1.6 changes the definition of two functions used by tor-fw-helper-upnp.c, upnpDiscover() and UPNP_AddPortMapping(). This patch addresses this and adds a check in configure.in for backwards compatibility. Thanks to Nickolay Kolchin-Semyonov for some hints. X-Tor-Bug-URL: https://trac.torproject.org/projects/tor/ticket/5434 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=376621 Signed-off-by: Anthony G. Basile --- src/tools/tor-fw-helper/tor-fw-helper-upnp.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/tools/tor-fw-helper') diff --git a/src/tools/tor-fw-helper/tor-fw-helper-upnp.c b/src/tools/tor-fw-helper/tor-fw-helper-upnp.c index 442eae514..ee56f7162 100644 --- a/src/tools/tor-fw-helper/tor-fw-helper-upnp.c +++ b/src/tools/tor-fw-helper/tor-fw-helper-upnp.c @@ -78,7 +78,11 @@ tor_upnp_init(tor_fw_options_t *options, void *backend_state) memset(&(state->data), 0, sizeof(struct IGDdatas)); state->init = 0; +#ifdef MINIUPNPC15 devlist = upnpDiscover(UPNP_DISCOVER_TIMEOUT, NULL, NULL, 0); +#else + devlist = upnpDiscover(UPNP_DISCOVER_TIMEOUT, NULL, NULL, 0, 0, NULL); +#endif if (NULL == devlist) { fprintf(stderr, "E: upnpDiscover returned: NULL\n"); return UPNP_ERR_NODEVICESFOUND; @@ -178,7 +182,11 @@ tor_upnp_add_tcp_mapping(tor_fw_options_t *options, void *backend_state) r = UPNP_AddPortMapping(state->urls.controlURL, state->data.first.servicetype, external_port_str, internal_port_str, +#ifdef MINIUPNPC15 state->lanaddr, UPNP_DESC, "TCP", 0); +#else + state->lanaddr, UPNP_DESC, "TCP", 0, 0); +#endif if (r != UPNPCOMMAND_SUCCESS) return UPNP_ERR_ADDPORTMAPPING; -- cgit v1.2.3