From owner-svn-src-projects@freebsd.org  Tue Dec 20 10:56:09 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 A6546C89870
 for <svn-src-projects@mailman.ysv.freebsd.org>;
 Tue, 20 Dec 2016 10:56:09 +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 673206A8;
 Tue, 20 Dec 2016 10:56:09 +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 uBKAu8MH017834;
 Tue, 20 Dec 2016 10:56:08 GMT (envelope-from ae@FreeBSD.org)
Received: (from ae@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id uBKAu8cL017831;
 Tue, 20 Dec 2016 10:56:08 GMT (envelope-from ae@FreeBSD.org)
Message-Id: <201612201056.uBKAu8cL017831@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: Tue, 20 Dec 2016 10:56:08 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject: svn commit: r310326 - in projects/ipsec/sys: netinet 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 &quot; projects&quot;
 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: Tue, 20 Dec 2016 10:56:09 -0000

Author: ae
Date: Tue Dec 20 10:56:08 2016
New Revision: 310326
URL: https://svnweb.freebsd.org/changeset/base/310326

Log:
  Use ipsec4_common_input() as generic pr_input method for AH, ESP,
  and IPCOMP and remove pr_ctlinput method, that does nothing.

Modified:
  projects/ipsec/sys/netinet/in_proto.c
  projects/ipsec/sys/netipsec/ipsec.h
  projects/ipsec/sys/netipsec/ipsec_input.c

Modified: projects/ipsec/sys/netinet/in_proto.c
==============================================================================
--- projects/ipsec/sys/netinet/in_proto.c	Tue Dec 20 10:45:14 2016	(r310325)
+++ projects/ipsec/sys/netinet/in_proto.c	Tue Dec 20 10:56:08 2016	(r310326)
@@ -228,8 +228,7 @@ struct protosw inetsw[] = {
 	.pr_domain =		&inetdomain,
 	.pr_protocol =		IPPROTO_AH,
 	.pr_flags =		PR_ATOMIC|PR_ADDR,
-	.pr_input =		ah4_input,
-	.pr_ctlinput =		ah4_ctlinput,
+	.pr_input =		ipsec4_common_input,
 	.pr_usrreqs =		&nousrreqs
 },
 {
@@ -237,8 +236,7 @@ struct protosw inetsw[] = {
 	.pr_domain =		&inetdomain,
 	.pr_protocol =		IPPROTO_ESP,
 	.pr_flags =		PR_ATOMIC|PR_ADDR,
-	.pr_input =		esp4_input,
-	.pr_ctlinput =		esp4_ctlinput,
+	.pr_input =		ipsec4_common_input,
 	.pr_usrreqs =		&nousrreqs
 },
 {
@@ -246,7 +244,7 @@ struct protosw inetsw[] = {
 	.pr_domain =		&inetdomain,
 	.pr_protocol =		IPPROTO_IPCOMP,
 	.pr_flags =		PR_ATOMIC|PR_ADDR,
-	.pr_input =		ipcomp4_input,
+	.pr_input =		ipsec4_common_input,
 	.pr_usrreqs =		&nousrreqs
 },
 #endif /* IPSEC */

Modified: projects/ipsec/sys/netipsec/ipsec.h
==============================================================================
--- projects/ipsec/sys/netipsec/ipsec.h	Tue Dec 20 10:45:14 2016	(r310325)
+++ projects/ipsec/sys/netipsec/ipsec.h	Tue Dec 20 10:56:08 2016	(r310326)
@@ -310,7 +310,6 @@ struct secpolicy *ipsec4_checkpolicy(con
     int *);
 
 u_int ipsec_get_reqlevel(struct secpolicy *, u_int);
-int ipsec4_in_reject(const struct mbuf *, struct inpcb *);
 size_t ipsec_hdrsiz_inpcb(struct inpcb *);
 
 int ipsec_init_pcbpolicy(struct inpcb *);
@@ -338,18 +337,12 @@ char *ipsec_logsastr(struct secasvar *, 
 
 extern void ipsec_dumpmbuf(const struct mbuf *);
 
-extern int ah4_input(struct mbuf **mp, int *offp, int proto);
-extern void ah4_ctlinput(int cmd, struct sockaddr *sa, void *);
-extern int esp4_input(struct mbuf **mp, int *offp, int proto);
-extern void esp4_ctlinput(int cmd, struct sockaddr *sa, void *);
-extern int ipcomp4_input(struct mbuf **mp, int *offp, int proto);
-extern int ipsec_common_input(struct mbuf *m, int, int, int, int); 
-extern int ipsec4_common_input_cb(struct mbuf *m, struct secasvar *sav,
-			int skip, int protoff);
-extern int ipsec4_process_packet(struct mbuf *, struct secpolicy *,
-    struct inpcb *);
-extern int ipsec_process_done(struct mbuf *, struct secpolicy *,
-    struct secasvar *, u_int);
+int ipsec4_in_reject(const struct mbuf *, struct inpcb *);
+int ipsec4_common_input(struct mbuf **, int *, int);
+int ipsec4_common_input_cb(struct mbuf *, struct secasvar *, int, int);
+int ipsec4_process_packet(struct mbuf *, struct secpolicy *, struct inpcb *);
+int ipsec_process_done(struct mbuf *, struct secpolicy *, struct secasvar *,
+    u_int);
 
 extern	void m_checkalignment(const char* where, struct mbuf *m0,
 		int off, int len);

Modified: projects/ipsec/sys/netipsec/ipsec_input.c
==============================================================================
--- projects/ipsec/sys/netipsec/ipsec_input.c	Tue Dec 20 10:45:14 2016	(r310325)
+++ projects/ipsec/sys/netipsec/ipsec_input.c	Tue Dec 20 10:56:08 2016	(r310326)
@@ -104,10 +104,6 @@
 		IPCOMPSTAT_INC(ipcomps_##name);	\
 } while (0)
 
-#ifdef INET
-static void ipsec4_common_ctlinput(int, struct sockaddr *, void *, int);
-#endif
-
 /*
  * ipsec_common_input gets called when an IPsec-protected packet
  * is received by IPv4 or IPv6.  Its job is to find the right SA
@@ -230,7 +226,7 @@ ipsec_common_input(struct mbuf *m, int s
 
 #ifdef INET
 int
-ah4_input(struct mbuf **mp, int *offp, int proto)
+ipsec4_common_input(struct mbuf **mp, int *offp, int proto)
 {
 	struct mbuf *m;
 	int off;
@@ -239,53 +235,7 @@ ah4_input(struct mbuf **mp, int *offp, i
 	off = *offp;
 	*mp = NULL;
 
-	ipsec_common_input(m, off, offsetof(struct ip, ip_p),
-				AF_INET, IPPROTO_AH);
-	return (IPPROTO_DONE);
-}
-void
-ah4_ctlinput(int cmd, struct sockaddr *sa, void *v)
-{
-	if (sa->sa_family == AF_INET &&
-	    sa->sa_len == sizeof(struct sockaddr_in))
-		ipsec4_common_ctlinput(cmd, sa, v, IPPROTO_AH);
-}
-
-int
-esp4_input(struct mbuf **mp, int *offp, int proto)
-{
-	struct mbuf *m;
-	int off;
-
-	m = *mp;
-	off = *offp;
-	mp = NULL;
-
-	ipsec_common_input(m, off, offsetof(struct ip, ip_p),
-				AF_INET, IPPROTO_ESP);
-	return (IPPROTO_DONE);
-}
-
-void
-esp4_ctlinput(int cmd, struct sockaddr *sa, void *v)
-{
-	if (sa->sa_family == AF_INET &&
-	    sa->sa_len == sizeof(struct sockaddr_in))
-		ipsec4_common_ctlinput(cmd, sa, v, IPPROTO_ESP);
-}
-
-int
-ipcomp4_input(struct mbuf **mp, int *offp, int proto)
-{
-	struct mbuf *m;
-	int off;
-
-	m = *mp;
-	off = *offp;
-	mp = NULL;
-
-	ipsec_common_input(m, off, offsetof(struct ip, ip_p),
-				AF_INET, IPPROTO_IPCOMP);
+	ipsec_common_input(m, off, offsetof(struct ip, ip_p), AF_INET, proto);
 	return (IPPROTO_DONE);
 }
 
@@ -461,12 +411,6 @@ bad:
 		m_freem(m);
 	return (error);
 }
-
-void
-ipsec4_common_ctlinput(int cmd, struct sockaddr *sa, void *v, int proto)
-{
-	/* XXX nothing just yet */
-}
 #endif /* INET */
 
 #ifdef INET6