svn commit: r292851 - stable/9/lib/libc/net
Hajimu UMEMOTO
ume at FreeBSD.org
Tue Dec 29 00:43:47 UTC 2015
Author: ume
Date: Tue Dec 29 00:43:46 2015
New Revision: 292851
URL: https://svnweb.freebsd.org/changeset/base/292851
Log:
MFC r292550, r292595:
Simplify _map_v4v6_address().
We don't need to use a temporary buffer, here.
Modified:
stable/9/lib/libc/net/map_v4v6.c
Directory Properties:
stable/9/lib/libc/ (props changed)
Modified: stable/9/lib/libc/net/map_v4v6.c
==============================================================================
--- stable/9/lib/libc/net/map_v4v6.c Tue Dec 29 00:42:35 2015 (r292850)
+++ stable/9/lib/libc/net/map_v4v6.c Tue Dec 29 00:43:46 2015 (r292851)
@@ -77,19 +77,11 @@ typedef union {
void
_map_v4v6_address(const char *src, char *dst)
{
- u_char *p = (u_char *)dst;
- char tmp[NS_INADDRSZ];
- int i;
-
- /* Stash a temporary copy so our caller can update in place. */
- memcpy(tmp, src, NS_INADDRSZ);
+ /* Our caller may update in place. */
+ memmove(&dst[12], src, NS_INADDRSZ);
/* Mark this ipv6 addr as a mapped ipv4. */
- for (i = 0; i < 10; i++)
- *p++ = 0x00;
- *p++ = 0xff;
- *p++ = 0xff;
- /* Retrieve the saved copy and we're done. */
- memcpy((void*)p, tmp, NS_INADDRSZ);
+ memset(&dst[10], 0xff, 2);
+ memset(&dst[0], 0, 10);
}
void
More information about the svn-src-stable-9
mailing list