From: Stephen Hemminger Date: Sun, 12 Jul 2009 04:27:51 +0000 (-0700) Subject: [lib] Fix IPv6 normalisation X-Git-Tag: frr-2.0-rc1~2251 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=3fa3f957e70f594cc2c1cac03644ddf48554c178;p=matthieu%2Ffrr.git [lib] Fix IPv6 normalisation * lib/sockunion.c: (sockunion_normalise_mapped) The code to normalize address was not copying port value - probably reason why IPV4 in IPV6 never worked right. --- diff --git a/lib/sockunion.c b/lib/sockunion.c index 75419b1143..6a40f33211 100644 --- a/lib/sockunion.c +++ b/lib/sockunion.c @@ -238,6 +238,7 @@ sockunion_normalise_mapped (union sockunion *su) { memset (&sin, 0, sizeof (struct sockaddr_in)); sin.sin_family = AF_INET; + sin.sin_port = su->sin6.sin6_port; memcpy (&sin.sin_addr, ((char *)&su->sin6.sin6_addr) + 12, 4); memcpy (su, &sin, sizeof (struct sockaddr_in)); }