Date: Fri, 27 Dec 2013 02:49:57 +0000 (UTC) From: "Andrey V. Elsukov" <ae@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r259931 - user/ae/inet6/usr.sbin/jail Message-ID: <201312270249.rBR2nvri003634@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ae Date: Fri Dec 27 02:49:56 2013 New Revision: 259931 URL: http://svnweb.freebsd.org/changeset/base/259931 Log: Use struct sockaddr_in6 instead of in6_addr in jail(8). Modified: user/ae/inet6/usr.sbin/jail/config.c Modified: user/ae/inet6/usr.sbin/jail/config.c ============================================================================== --- user/ae/inet6/usr.sbin/jail/config.c Fri Dec 27 02:49:04 2013 (r259930) +++ user/ae/inet6/usr.sbin/jail/config.c Fri Dec 27 02:49:56 2013 (r259931) @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include <sys/sysctl.h> #include <arpa/inet.h> +#include <net/if.h> #include <netinet/in.h> #include <err.h> @@ -456,9 +457,8 @@ check_intparams(struct cfjail *j) char avalue4[INET_ADDRSTRLEN]; #endif #ifdef INET6 - struct in6_addr addr6; int ip6ok; - char avalue6[INET6_ADDRSTRLEN]; + char avalue6[INET6_ADDRSTRLEN + IF_NAMESIZE + 1]; #endif error = 0; @@ -556,14 +556,11 @@ check_intparams(struct cfjail *j) #endif #ifdef INET6 case AF_INET6: - memcpy(&addr6, - &((struct sockaddr_in6 *) - (void *)ai->ai_addr)-> - sin6_addr, sizeof(addr6)); - if (inet_ntop(AF_INET6, - &addr6, avalue6, - INET6_ADDRSTRLEN) == NULL) - err(1, "inet_ntop"); + if (getnameinfo(ai->ai_addr, + ai->ai_addrlen, avalue6, + sizeof(avalue6), NULL, 0, + NI_NUMERICHOST) != 0) + err(1, "getnameinfo"); add_param(j, NULL, KP_IP6_ADDR, avalue6); break;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312270249.rBR2nvri003634>