aboutsummaryrefslogtreecommitdiff
path: root/src/nat
diff options
context:
space:
mode:
authorNathan S. Evans <evans@in.tum.de>2011-02-05 12:30:56 +0000
committerNathan S. Evans <evans@in.tum.de>2011-02-05 12:30:56 +0000
commit1b9ada73c28674a518e9270da04b6853d1bb942a (patch)
tree1d23df241c4cf139578c97c9cb98e3d3a7cea1b8 /src/nat
parent2077865adf5ef1f857d93dc045dacd70b3425bec (diff)
downloadgnunet-1b9ada73c28674a518e9270da04b6853d1bb942a.tar.gz
gnunet-1b9ada73c28674a518e9270da04b6853d1bb942a.zip
segfault in upnp code (tip of the proverbial iceberg?)
Diffstat (limited to 'src/nat')
-rw-r--r--src/nat/upnp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/nat/upnp.c b/src/nat/upnp.c
index bdb479da1..45c7df419 100644
--- a/src/nat/upnp.c
+++ b/src/nat/upnp.c
@@ -67,7 +67,7 @@ struct GNUNET_NAT_UPNP_Handle
67 unsigned int is_mapped; 67 unsigned int is_mapped;
68 enum UPNP_State state; 68 enum UPNP_State state;
69 struct sockaddr *ext_addr; 69 struct sockaddr *ext_addr;
70 const char *iface; 70 char *iface;
71 int processing; 71 int processing;
72 GNUNET_NAT_UPNP_pulse_cb pulse_cb; 72 GNUNET_NAT_UPNP_pulse_cb pulse_cb;
73 void *pulse_cls; 73 void *pulse_cls;
@@ -79,10 +79,10 @@ process_if (void *cls,
79 int isDefault, const struct sockaddr *addr, socklen_t addrlen) 79 int isDefault, const struct sockaddr *addr, socklen_t addrlen)
80{ 80{
81 struct GNUNET_NAT_UPNP_Handle *upnp = cls; 81 struct GNUNET_NAT_UPNP_Handle *upnp = cls;
82 82 GNUNET_log(GNUNET_ERROR_TYPE_WARNING, "UPNP found if `%s'\n", name);
83 if (addr && GNUNET_NAT_cmp_addr (upnp->addr, addr) == 0) 83 if (addr && GNUNET_NAT_cmp_addr (upnp->addr, addr) == 0)
84 { 84 {
85 upnp->iface = name; // BADNESS! 85 upnp->iface = GNUNET_strdup(name); // BADNESS!
86 return GNUNET_SYSERR; 86 return GNUNET_SYSERR;
87 } 87 }
88 88