src/process.c Correctly convert AF_INET6 addresses
* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are converted to a list of 16 bit quantities by conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the same scheme rather than expecting a (longer) list of 8 bit quantities.
This commit is contained in:
parent
20087772d6
commit
55ce3c30d6
1 changed files with 1 additions and 1 deletions
|
@ -2372,7 +2372,7 @@ conv_lisp_to_sockaddr (int family, Lisp_Object address, struct sockaddr *sa, int
|
|||
{
|
||||
struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *) sa;
|
||||
uint16_t *ip6 = (uint16_t *)&sin6->sin6_addr;
|
||||
len = sizeof (sin6->sin6_addr) + 1;
|
||||
len = sizeof (sin6->sin6_addr) / 2 + 1;
|
||||
hostport = XINT (p->contents[--len]);
|
||||
sin6->sin6_port = htons (hostport);
|
||||
for (i = 0; i < len; i++)
|
||||
|
|
Loading…
Add table
Reference in a new issue