Use memcpy() to copy sockaddrs returned by getaddrinfo().
[tinc] / src / net_setup.c
index b3ce766..d03869e 100644 (file)
@@ -502,7 +502,7 @@ bool setup_myself(void)
                        free(hostname);
                }
 
                        free(hostname);
                }
 
-               listen_socket[listen_sockets].sa.sa = *aip->ai_addr;
+               memcpy(&listen_socket[listen_sockets].sa, aip->ai_addr, aip->ai_addrlen);
                listen_sockets++;
        }
 
                listen_sockets++;
        }