From owner-svn-src-projects@freebsd.org Sat Dec 24 20:36:28 2016 Return-Path: <owner-svn-src-projects@freebsd.org> Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9EC48C8FB1D for <svn-src-projects@mailman.ysv.freebsd.org>; Sat, 24 Dec 2016 20:36:28 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5477963A; Sat, 24 Dec 2016 20:36:28 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id uBOKaRji013506; Sat, 24 Dec 2016 20:36:27 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id uBOKaRZo013504; Sat, 24 Dec 2016 20:36:27 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201612242036.uBOKaRZo013504@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" <ae@FreeBSD.org> Date: Sat, 24 Dec 2016 20:36:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r310526 - projects/ipsec/sys/netipsec X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" <svn-src-projects.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-projects>, <mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects/> List-Post: <mailto:svn-src-projects@freebsd.org> List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-projects>, <mailto:svn-src-projects-request@freebsd.org?subject=subscribe> X-List-Received-Date: Sat, 24 Dec 2016 20:36:28 -0000 Author: ae Date: Sat Dec 24 20:36:27 2016 New Revision: 310526 URL: https://svnweb.freebsd.org/changeset/base/310526 Log: Move ipsec_setsockaddrs() into xform_tcp.c and make it static. Also include needed headers into subr_ipsec.c. Modified: projects/ipsec/sys/netipsec/subr_ipsec.c projects/ipsec/sys/netipsec/xform_tcp.c Modified: projects/ipsec/sys/netipsec/subr_ipsec.c ============================================================================== --- projects/ipsec/sys/netipsec/subr_ipsec.c Sat Dec 24 20:02:28 2016 (r310525) +++ projects/ipsec/sys/netipsec/subr_ipsec.c Sat Dec 24 20:36:27 2016 (r310526) @@ -47,6 +47,8 @@ __FBSDID("$FreeBSD$"); #include <netinet/in.h> #include <netinet/in_pcb.h> +#include <netinet/ip.h> +#include <netinet/ip6.h> #include <netipsec/ipsec_support.h> #include <netipsec/ipsec.h> Modified: projects/ipsec/sys/netipsec/xform_tcp.c ============================================================================== --- projects/ipsec/sys/netipsec/xform_tcp.c Sat Dec 24 20:02:28 2016 (r310525) +++ projects/ipsec/sys/netipsec/xform_tcp.c Sat Dec 24 20:36:27 2016 (r310526) @@ -223,6 +223,32 @@ tcp_signature_compute(struct mbuf *m, st return (0); } +static void +setsockaddrs(const struct mbuf *m, union sockaddr_union *src, + union sockaddr_union *dst) +{ + struct ip *ip; + + IPSEC_ASSERT(m->m_len >= sizeof(*ip), ("unexpected mbuf len")); + + ip = mtod(m, struct ip *); + switch (ip->ip_v) { +#ifdef INET + case IPVERSION: + ipsec4_setsockaddrs(m, src, dst); + break; +#endif +#ifdef INET6 + case (IPV6_VERSION >> 4): + ipsec6_setsockaddrs(m, src, dst); + break; +#endif + default: + bzero(src, sizeof(*src)); + bzero(dst, sizeof(*dst)); + } +} + /* * Compute TCP-MD5 hash of an *INBOUND* TCP segment. * Parameters: @@ -239,7 +265,7 @@ tcp_ipsec_input(struct mbuf *m, struct t struct secasindex saidx; struct secasvar *sav; - ipsec_setsockaddrs(m, &saidx.src, &saidx.dst); + setsockaddrs(m, &saidx.src, &saidx.dst); saidx.proto = IPPROTO_TCP; saidx.mode = IPSEC_MODE_TCPMD5; saidx.reqid = 0; @@ -279,7 +305,7 @@ tcp_ipsec_output(struct mbuf *m, struct struct secasindex saidx; struct secasvar *sav; - ipsec_setsockaddrs(m, &saidx.src, &saidx.dst); + setsockaddrs(m, &saidx.src, &saidx.dst); saidx.proto = IPPROTO_TCP; saidx.mode = IPSEC_MODE_TCPMD5; saidx.reqid = 0;