fix copying in6_addr
authorMoon <moon@140774ce-b5e7-0310-ab8b-a85725594a96>
Sun, 25 Oct 2009 12:22:25 +0000 (12:22 +0000)
committerMoon <moon@140774ce-b5e7-0310-ab8b-a85725594a96>
Sun, 25 Oct 2009 12:22:25 +0000 (12:22 +0000)
src/nat/libnatpmp/getgateway.c

index 919aee65f63213c44cf1a4fdbc20e41d6ab10dbb..4ac5ace0e6c4a953268455b960d59396f0dbcb3d 100644 (file)
@@ -347,7 +347,7 @@ getdefaultgateway (int *af, u_int8_t addr[16])
     }
   else if (gate != NULL && gate->sa_family == AF_INET6)
     {
-      *addr = ((struct sockaddr_in6 *) gate)->sin6_addr.s6_addr;
+      memcpy (addr, ((struct sockaddr_in6 *) gate)->sin6_addr.s6_addr, 16 * sizeof (u_int8_t));
       *af = AF_INET6;
       return SUCCESS;
     }