From 9a1e5a514d45be2e06a864e5966eef8886ffde2e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zden=C4=9Bk=20Salvet?= Date: Thu, 1 Apr 2010 13:45:46 +0000 Subject: [PATCH] More portable way of extraction of IPv6-mapped address. --- org.glite.lb.server/src/bkserverd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.glite.lb.server/src/bkserverd.c b/org.glite.lb.server/src/bkserverd.c index 589c870..d77fb9c 100644 --- a/org.glite.lb.server/src/bkserverd.c +++ b/org.glite.lb.server/src/bkserverd.c @@ -1831,7 +1831,7 @@ static int asyn_gethostbyaddr(char **name, char **service, const struct sockaddr if (addr->sa_family == AF_INET6 && IN6_IS_ADDR_V4MAPPED(&((struct sockaddr_in6 *)addr)->sin6_addr)) { v4.sin_family = AF_INET; v4.sin_port = ((struct sockaddr_in6 *)addr)->sin6_port; - v4.sin_addr.s_addr = ((struct sockaddr_in6 *)addr)->sin6_addr.in6_u.u6_addr32[3]; + v4.sin_addr.s_addr = *(in_addr_t *) &((struct sockaddr_in6 *)addr)->sin6_addr.s6_addr[12]; addr = (struct sockaddr *) &v4; len = sizeof(v4); } -- 1.8.2.3