get_interface_addr6(), and by extension get_interface_addr(), were pretty borked. Copying a tor_addr_t from a sockaddr_storage using memcpy is a poor notion.

svn:r17789
This commit is contained in:
Nick Mathewson 2008-12-26 21:26:03 +00:00
parent 61722638ea
commit 616f6643ef
2 changed files with 7 additions and 1 deletions

View File

@ -1,3 +1,9 @@
Changes in version 0.2.1.10-alpha - 2009-??-??
o Minor bugfixes
- Make get_interface_address() function work properly again; stop
guessing the wrong parts of our address as our address.
Changes in version 0.2.1.9-alpha - 2008-12-25
o New directory authorities:
- gabelmoo (the authority run by Karsten Loesing) now has a new

View File

@ -1088,7 +1088,7 @@ get_interface_address6(int severity, sa_family_t family, tor_addr_t *addr)
goto err;
}
memcpy(addr, &my_addr, sizeof(tor_addr_t));
tor_addr_from_sockaddr(addr, (struct sockaddr*)&my_addr, NULL);
r=0;
err:
if (sock >= 0)