Call unmapv4 only when it is necessary

Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
This commit is contained in:
Adrien Gallouët
2019-10-15 12:19:00 +00:00
parent d086d7869d
commit 842dadad94

6
mud.c
View File

@@ -654,14 +654,13 @@ mud_ss_from_sa(struct sockaddr_storage *ss, struct sockaddr *sa)
break;
case AF_INET6:
memcpy(ss, sa, sizeof(struct sockaddr_in6));
mud_unmapv4(ss);
break;
default:
errno = EINVAL;
return -1;
}
mud_unmapv4(ss);
return 0;
}
@@ -1093,10 +1092,9 @@ mud_localaddr(struct sockaddr_storage *addr, struct msghdr *msg)
memcpy(&((struct sockaddr_in6 *)addr)->sin6_addr,
&((struct in6_pktinfo *)CMSG_DATA(cmsg))->ipi6_addr,
sizeof(struct in6_addr));
mud_unmapv4(addr);
}
mud_unmapv4(addr);
return 0;
}