Module Name:    src
Committed By:   ozaki-r
Date:           Fri Jun  2 01:22:50 UTC 2017

Modified Files:
        src/sys/netipsec: key.c

Log Message:
Change the prefix of function names of SADB API handlers to key_api_

By doing so we can easily distinguish them from other utility functions.
And so we can easily know that they are all called from key_parse and
applied assumptions that the arguments are always non-NULL and they
are always called from userland, i.e., never called from interrupt
context (softint). As a result, we can omit some tedious assertions
in the functions.


To generate a diff of this commit:
cvs rdiff -u -r1.161 -r1.162 src/sys/netipsec/key.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/netipsec/key.c
diff -u src/sys/netipsec/key.c:1.161 src/sys/netipsec/key.c:1.162
--- src/sys/netipsec/key.c:1.161	Thu Jun  1 09:50:35 2017
+++ src/sys/netipsec/key.c	Fri Jun  2 01:22:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: key.c,v 1.161 2017/06/01 09:50:35 ozaki-r Exp $	*/
+/*	$NetBSD: key.c,v 1.162 2017/06/02 01:22:50 ozaki-r Exp $	*/
 /*	$FreeBSD: src/sys/netipsec/key.c,v 1.3.2.3 2004/02/14 22:23:23 bms Exp $	*/
 /*	$KAME: key.c,v 1.191 2001/06/27 10:46:49 sakane Exp $	*/
 
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: key.c,v 1.161 2017/06/01 09:50:35 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: key.c,v 1.162 2017/06/02 01:22:50 ozaki-r Exp $");
 
 /*
  * This code is referd to RFC 2367
@@ -400,22 +400,22 @@ static struct secpolicy *key_getspbyid (
 static u_int16_t key_newreqid (void);
 static struct mbuf *key_gather_mbuf (struct mbuf *,
 	const struct sadb_msghdr *, int, int, ...);
-static int key_spdadd (struct socket *, struct mbuf *,
+static int key_api_spdadd(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static u_int32_t key_getnewspid (void);
-static int key_spddelete (struct socket *, struct mbuf *,
+static int key_api_spddelete(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_spddelete2 (struct socket *, struct mbuf *,
+static int key_api_spddelete2(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_spdget (struct socket *, struct mbuf *,
+static int key_api_spdget(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_spdflush (struct socket *, struct mbuf *,
+static int key_api_spdflush(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_spddump (struct socket *, struct mbuf *,
+static int key_api_spddump(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static struct mbuf * key_setspddump (int *errorp, pid_t);
 static struct mbuf * key_setspddump_chain (int *errorp, int *lenp, pid_t pid);
-static int key_nat_map (struct socket *, struct mbuf *,
+static int key_api_nat_map(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static struct mbuf *key_setdumpsp (struct secpolicy *,
 	u_int8_t, u_int32_t, pid_t);
@@ -482,7 +482,7 @@ static int key_spidx_match_exactly(const
 static int key_spidx_match_withmask(const struct secpolicyindex *,
     const struct secpolicyindex *);
 
-static int key_getspi (struct socket *, struct mbuf *,
+static int key_api_getspi(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static u_int32_t key_do_getnewspi (const struct sadb_spirange *,
 					const struct secasindex *);
@@ -491,20 +491,20 @@ static int key_handle_natt_info (struct 
 static int key_set_natt_ports (union sockaddr_union *,
 			 	union sockaddr_union *,
 				const struct sadb_msghdr *);
-static int key_update (struct socket *, struct mbuf *,
+static int key_api_update(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 #ifdef IPSEC_DOSEQCHECK
 static struct secasvar *key_getsavbyseq (struct secashead *, u_int32_t);
 #endif
-static int key_add (struct socket *, struct mbuf *,
+static int key_api_add(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static int key_setident (struct secashead *, struct mbuf *,
 	const struct sadb_msghdr *);
 static struct mbuf *key_getmsgbuf_x1 (struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_delete (struct socket *, struct mbuf *,
+static int key_api_delete(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_get (struct socket *, struct mbuf *,
+static int key_api_get(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 
 static void key_getcomb_setlifetime (struct sadb_comb *);
@@ -523,18 +523,18 @@ static struct secacq *key_getacqbyseq (u
 static struct secspacq *key_newspacq (const struct secpolicyindex *);
 static struct secspacq *key_getspacq (const struct secpolicyindex *);
 #endif
-static int key_acquire2 (struct socket *, struct mbuf *,
+static int key_api_acquire(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_register (struct socket *, struct mbuf *,
+static int key_api_register(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static int key_expire (struct secasvar *);
-static int key_flush (struct socket *, struct mbuf *,
+static int key_api_flush(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static struct mbuf *key_setdump_chain (u_int8_t req_satype, int *errorp,
 	int *lenp, pid_t pid);
-static int key_dump (struct socket *, struct mbuf *,
+static int key_api_dump(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
-static int key_promisc (struct socket *, struct mbuf *,
+static int key_api_promisc(struct socket *, struct mbuf *,
 	const struct sadb_msghdr *);
 static int key_senderror (struct socket *, struct mbuf *, int);
 static int key_validate_ext (const struct sadb_ext *, int);
@@ -1858,7 +1858,7 @@ fail:
  * m will always be freed.
  */
 static int
-key_spdadd(struct socket *so, struct mbuf *m,
+key_api_spdadd(struct socket *so, struct mbuf *m,
 	   const struct sadb_msghdr *mhp)
 {
 	const struct sockaddr *src, *dst;
@@ -1869,12 +1869,6 @@ key_spdadd(struct socket *so, struct mbu
 	struct secpolicy *newsp;
 	int error;
 
-	KASSERT(!cpu_softintr_p());
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_EXT_ADDRESS_SRC] == NULL ||
 	    mhp->ext[SADB_EXT_ADDRESS_DST] == NULL ||
 	    mhp->ext[SADB_X_EXT_POLICY] == NULL) {
@@ -1909,7 +1903,7 @@ key_spdadd(struct socket *so, struct mbu
 	}
 
 	/* check policy */
-	/* key_spdadd() accepts DISCARD, NONE and IPSEC. */
+	/* key_api_spdadd() accepts DISCARD, NONE and IPSEC. */
 	if (xpl0->sadb_x_policy_type == IPSEC_POLICY_ENTRUST ||
 	    xpl0->sadb_x_policy_type == IPSEC_POLICY_BYPASS) {
 		IPSECLOG(LOG_DEBUG, "Invalid policy type.\n");
@@ -2094,18 +2088,13 @@ key_getnewspid(void)
  * m will always be freed.
  */
 static int
-key_spddelete(struct socket *so, struct mbuf *m,
+key_api_spddelete(struct socket *so, struct mbuf *m,
               const struct sadb_msghdr *mhp)
 {
 	struct sadb_x_policy *xpl0;
 	struct secpolicyindex spidx;
 	struct secpolicy *sp;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_EXT_ADDRESS_SRC] == NULL ||
 	    mhp->ext[SADB_EXT_ADDRESS_DST] == NULL ||
 	    mhp->ext[SADB_X_EXT_POLICY] == NULL) {
@@ -2185,17 +2174,12 @@ key_spddelete(struct socket *so, struct 
  * m will always be freed.
  */
 static int
-key_spddelete2(struct socket *so, struct mbuf *m,
+key_api_spddelete2(struct socket *so, struct mbuf *m,
 	       const struct sadb_msghdr *mhp)
 {
 	u_int32_t id;
 	struct secpolicy *sp;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_X_EXT_POLICY] == NULL ||
 	    mhp->extlen[SADB_X_EXT_POLICY] < sizeof(struct sadb_x_policy)) {
 		IPSECLOG(LOG_DEBUG, "invalid message is passed.\n");
@@ -2283,18 +2267,13 @@ key_spddelete2(struct socket *so, struct
  * m will always be freed.
  */
 static int
-key_spdget(struct socket *so, struct mbuf *m,
+key_api_spdget(struct socket *so, struct mbuf *m,
 	   const struct sadb_msghdr *mhp)
 {
 	u_int32_t id;
 	struct secpolicy *sp;
 	struct mbuf *n;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_X_EXT_POLICY] == NULL ||
 	    mhp->extlen[SADB_X_EXT_POLICY] < sizeof(struct sadb_x_policy)) {
 		IPSECLOG(LOG_DEBUG, "invalid message is passed.\n");
@@ -2406,18 +2385,13 @@ fail:
  * m will always be freed.
  */
 static int
-key_spdflush(struct socket *so, struct mbuf *m,
+key_api_spdflush(struct socket *so, struct mbuf *m,
 	     const struct sadb_msghdr *mhp)
 {
 	struct sadb_msg *newmsg;
 	struct secpolicy *sp;
 	u_int dir;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (m->m_len != PFKEY_ALIGN8(sizeof(struct sadb_msg)))
 		return key_senderror(so, m, EINVAL);
 
@@ -2525,7 +2499,7 @@ key_setspddump_chain(int *errorp, int *l
  * m will always be freed.
  */
 static int
-key_spddump(struct socket *so, struct mbuf *m0,
+key_api_spddump(struct socket *so, struct mbuf *m0,
  	    const struct sadb_msghdr *mhp)
 {
 	struct mbuf *n;
@@ -2533,11 +2507,6 @@ key_spddump(struct socket *so, struct mb
 	int ok, s;
 	pid_t pid;
 
-	KASSERT(so != NULL);
-	KASSERT(m0 != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	pid = mhp->msg->sadb_msg_pid;
 	/*
 	 * If the requestor has insufficient socket-buffer space
@@ -2594,7 +2563,7 @@ key_spddump(struct socket *so, struct mb
  * SADB_X_NAT_T_NEW_MAPPING. Unused by racoon as of 2005/04/23
  */
 static int
-key_nat_map(struct socket *so, struct mbuf *m,
+key_api_nat_map(struct socket *so, struct mbuf *m,
 	    const struct sadb_msghdr *mhp)
 {
 	struct sadb_x_nat_t_type *type;
@@ -2603,11 +2572,6 @@ key_nat_map(struct socket *so, struct mb
 	struct sadb_address *iaddr, *raddr;
 	struct sadb_x_nat_t_frag *frag;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_X_EXT_NAT_T_TYPE] == NULL ||
 	    mhp->ext[SADB_X_EXT_NAT_T_SPORT] == NULL ||
 	    mhp->ext[SADB_X_EXT_NAT_T_DPORT] == NULL) {
@@ -2926,7 +2890,8 @@ key_delsah(struct secashead *sah)
 }
 
 /*
- * allocating a new SA with LARVAL state.  key_add() and key_getspi() call,
+ * allocating a new SA with LARVAL state.
+ * key_api_add() and key_api_getspi() call,
  * and copy the values of mhp into new buffer.
  * When SAD message type is GETSPI:
  *	to set sequence number from acq_seq++,
@@ -4844,7 +4809,7 @@ key_init_spidx_bymsghdr(struct secpolicy
  *	other if success, return pointer to the message to send.
  */
 static int
-key_getspi(struct socket *so, struct mbuf *m,
+key_api_getspi(struct socket *so, struct mbuf *m,
 	   const struct sadb_msghdr *mhp)
 {
 	const struct sockaddr *src, *dst;
@@ -4857,12 +4822,6 @@ key_getspi(struct socket *so, struct mbu
 	u_int16_t reqid;
 	int error;
 
-	KASSERT(!cpu_softintr_p());
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	if (mhp->ext[SADB_EXT_ADDRESS_SRC] == NULL ||
 	    mhp->ext[SADB_EXT_ADDRESS_DST] == NULL) {
 		IPSECLOG(LOG_DEBUG, "invalid message is passed.\n");
@@ -5007,7 +4966,7 @@ key_getspi(struct socket *so, struct mbu
 
 /*
  * allocating new SPI
- * called by key_getspi().
+ * called by key_api_getspi().
  * OUT:
  *	0:	failure.
  *	others: success.
@@ -5214,7 +5173,7 @@ key_set_natt_ports(union sockaddr_union 
  * m will always be freed.
  */
 static int
-key_update(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
+key_api_update(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp)
 {
 	struct sadb_sa *sa0;
 	const struct sockaddr *src, *dst;
@@ -5226,12 +5185,6 @@ key_update(struct socket *so, struct mbu
 	u_int16_t reqid;
 	int error;
 
-	KASSERT(!cpu_softintr_p());
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	proto = key_satype2proto(mhp->msg->sadb_msg_satype);
 	if (proto == 0) {
@@ -5368,7 +5321,7 @@ key_update(struct socket *so, struct mbu
 
 /*
  * search SAD with sequence for a SA which state is SADB_SASTATE_LARVAL.
- * only called by key_update().
+ * only called by key_api_update().
  * OUT:
  *	NULL	: not found
  *	others	: found, pointer to a SA.
@@ -5416,7 +5369,7 @@ key_getsavbyseq(struct secashead *sah, u
  * m will always be freed.
  */
 static int
-key_add(struct socket *so, struct mbuf *m,
+key_api_add(struct socket *so, struct mbuf *m,
 	const struct sadb_msghdr *mhp)
 {
 	struct sadb_sa *sa0;
@@ -5429,11 +5382,6 @@ key_add(struct socket *so, struct mbuf *
 	u_int16_t reqid;
 	int error;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	proto = key_satype2proto(mhp->msg->sadb_msg_satype);
 	if (proto == 0) {
@@ -5557,7 +5505,7 @@ key_setident(struct secashead *sah, stru
 	KASSERT(mhp->msg != NULL);
 
 	/*
-	 * Can be called with an existing sah from key_update().
+	 * Can be called with an existing sah from key_api_update().
 	 */
 	if (sah->idents != NULL) {
 		kmem_free(sah->idents, sah->idents_len);
@@ -5669,7 +5617,7 @@ static int key_delete_all (struct socket
  * m will always be freed.
  */
 static int
-key_delete(struct socket *so, struct mbuf *m,
+key_api_delete(struct socket *so, struct mbuf *m,
 	   const struct sadb_msghdr *mhp)
 {
 	struct sadb_sa *sa0;
@@ -5680,11 +5628,6 @@ key_delete(struct socket *so, struct mbu
 	u_int16_t proto;
 	int error;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	proto = key_satype2proto(mhp->msg->sadb_msg_satype);
 	if (proto == 0) {
@@ -5763,7 +5706,7 @@ key_delete(struct socket *so, struct mbu
 }
 
 /*
- * delete all SAs for src/dst.  Called from key_delete().
+ * delete all SAs for src/dst.  Called from key_api_delete().
  */
 static int
 key_delete_all(struct socket *so, struct mbuf *m,
@@ -5840,7 +5783,7 @@ key_delete_all(struct socket *so, struct
  * m will always be freed.
  */
 static int
-key_get(struct socket *so, struct mbuf *m,
+key_api_get(struct socket *so, struct mbuf *m,
 	const struct sadb_msghdr *mhp)
 {
 	struct sadb_sa *sa0;
@@ -5851,11 +5794,6 @@ key_get(struct socket *so, struct mbuf *
 	u_int16_t proto;
 	int error;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	if ((proto = key_satype2proto(mhp->msg->sadb_msg_satype)) == 0) {
 		IPSECLOG(LOG_DEBUG, "invalid satype is passed.\n");
@@ -6181,7 +6119,7 @@ key_getprop(const struct secasindex *sai
 }
 
 /*
- * SADB_ACQUIRE processing called by key_checkrequest() and key_acquire2().
+ * SADB_ACQUIRE processing called by key_checkrequest() and key_api_acquire().
  * send
  *   <base, SA, address(SD), (address(P)), x_policy,
  *       (identity(SD),) (sensitivity,) proposal>
@@ -6482,7 +6420,7 @@ key_getspacq(const struct secpolicyindex
  * m will always be freed.
  */
 static int
-key_acquire2(struct socket *so, struct mbuf *m,
+key_api_acquire(struct socket *so, struct mbuf *m,
       	     const struct sadb_msghdr *mhp)
 {
 	const struct sockaddr *src, *dst;
@@ -6491,11 +6429,6 @@ key_acquire2(struct socket *so, struct m
 	u_int16_t proto;
 	int error;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/*
 	 * Error message from KMd.
 	 * We assume that if error was occurred in IKEd, the length of PFKEY
@@ -6602,17 +6535,11 @@ key_acquire2(struct socket *so, struct m
  * m will always be freed.
  */
 static int
-key_register(struct socket *so, struct mbuf *m,
+key_api_register(struct socket *so, struct mbuf *m,
 	     const struct sadb_msghdr *mhp)
 {
 	struct secreg *reg, *newreg = 0;
 
-	KASSERT(!cpu_softintr_p());
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* check for invalid register message */
 	if (mhp->msg->sadb_msg_satype >= __arraycount(regtree))
 		return key_senderror(so, m, EINVAL);
@@ -6919,7 +6846,7 @@ key_expire(struct secasvar *sav)
  * m will always be freed.
  */
 static int
-key_flush(struct socket *so, struct mbuf *m,
+key_api_flush(struct socket *so, struct mbuf *m,
           const struct sadb_msghdr *mhp)
 {
 	struct sadb_msg *newmsg;
@@ -6928,10 +6855,6 @@ key_flush(struct socket *so, struct mbuf
 	u_int16_t proto;
 	u_int8_t state;
 
-	KASSERT(so != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	proto = key_satype2proto(mhp->msg->sadb_msg_satype);
 	if (proto == 0) {
@@ -7076,7 +6999,7 @@ key_setdump_chain(u_int8_t req_satype, i
  * m will always be freed.
  */
 static int
-key_dump(struct socket *so, struct mbuf *m0,
+key_api_dump(struct socket *so, struct mbuf *m0,
 	 const struct sadb_msghdr *mhp)
 {
 	u_int16_t proto;
@@ -7085,11 +7008,6 @@ key_dump(struct socket *so, struct mbuf 
 	int s;
 	int error, len, ok;
 
-	KASSERT(so != NULL);
-	KASSERT(m0 != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	/* map satype to proto */
 	satype = mhp->msg->sadb_msg_satype;
 	proto = key_satype2proto(satype);
@@ -7153,16 +7071,11 @@ key_dump(struct socket *so, struct mbuf 
  * m will always be freed.
  */
 static int
-key_promisc(struct socket *so, struct mbuf *m,
+key_api_promisc(struct socket *so, struct mbuf *m,
 	    const struct sadb_msghdr *mhp)
 {
 	int olen;
 
-	KASSERT(so != NULL);
-	KASSERT(m != NULL);
-	KASSERT(mhp != NULL);
-	KASSERT(mhp->msg != NULL);
-
 	olen = PFKEY_UNUNIT64(mhp->msg->sadb_msg_len);
 
 	if (olen < sizeof(struct sadb_msg)) {
@@ -7200,32 +7113,32 @@ key_promisc(struct socket *so, struct mb
 	}
 }
 
-static int (*key_typesw[]) (struct socket *, struct mbuf *,
+static int (*key_api_typesw[]) (struct socket *, struct mbuf *,
 		const struct sadb_msghdr *) = {
-	NULL,		/* SADB_RESERVED */
-	key_getspi,	/* SADB_GETSPI */
-	key_update,	/* SADB_UPDATE */
-	key_add,	/* SADB_ADD */
-	key_delete,	/* SADB_DELETE */
-	key_get,	/* SADB_GET */
-	key_acquire2,	/* SADB_ACQUIRE */
-	key_register,	/* SADB_REGISTER */
-	NULL,		/* SADB_EXPIRE */
-	key_flush,	/* SADB_FLUSH */
-	key_dump,	/* SADB_DUMP */
-	key_promisc,	/* SADB_X_PROMISC */
-	NULL,		/* SADB_X_PCHANGE */
-	key_spdadd,	/* SADB_X_SPDUPDATE */
-	key_spdadd,	/* SADB_X_SPDADD */
-	key_spddelete,	/* SADB_X_SPDDELETE */
-	key_spdget,	/* SADB_X_SPDGET */
-	NULL,		/* SADB_X_SPDACQUIRE */
-	key_spddump,	/* SADB_X_SPDDUMP */
-	key_spdflush,	/* SADB_X_SPDFLUSH */
-	key_spdadd,	/* SADB_X_SPDSETIDX */
-	NULL,		/* SADB_X_SPDEXPIRE */
-	key_spddelete2,	/* SADB_X_SPDDELETE2 */
-	key_nat_map,	/* SADB_X_NAT_T_NEW_MAPPING */
+	NULL,			/* SADB_RESERVED */
+	key_api_getspi,		/* SADB_GETSPI */
+	key_api_update,		/* SADB_UPDATE */
+	key_api_add,		/* SADB_ADD */
+	key_api_delete,		/* SADB_DELETE */
+	key_api_get,		/* SADB_GET */
+	key_api_acquire,	/* SADB_ACQUIRE */
+	key_api_register,	/* SADB_REGISTER */
+	NULL,			/* SADB_EXPIRE */
+	key_api_flush,		/* SADB_FLUSH */
+	key_api_dump,		/* SADB_DUMP */
+	key_api_promisc,	/* SADB_X_PROMISC */
+	NULL,			/* SADB_X_PCHANGE */
+	key_api_spdadd,		/* SADB_X_SPDUPDATE */
+	key_api_spdadd,		/* SADB_X_SPDADD */
+	key_api_spddelete,	/* SADB_X_SPDDELETE */
+	key_api_spdget,		/* SADB_X_SPDGET */
+	NULL,			/* SADB_X_SPDACQUIRE */
+	key_api_spddump,	/* SADB_X_SPDDUMP */
+	key_api_spdflush,	/* SADB_X_SPDFLUSH */
+	key_api_spdadd,		/* SADB_X_SPDSETIDX */
+	NULL,			/* SADB_X_SPDEXPIRE */
+	key_api_spddelete2,	/* SADB_X_SPDDELETE2 */
+	key_api_nat_map,	/* SADB_X_NAT_T_NEW_MAPPING */
 };
 
 /*
@@ -7473,14 +7386,14 @@ key_parse(struct mbuf *m, struct socket 
 		 */
 	}
 
-	if (msg->sadb_msg_type >= __arraycount(key_typesw) ||
-	    key_typesw[msg->sadb_msg_type] == NULL) {
+	if (msg->sadb_msg_type >= __arraycount(key_api_typesw) ||
+	    key_api_typesw[msg->sadb_msg_type] == NULL) {
 		PFKEY_STATINC(PFKEY_STAT_OUT_INVMSGTYPE);
 		error = EINVAL;
 		goto senderror;
 	}
 
-	return (*key_typesw[msg->sadb_msg_type])(so, m, &mh);
+	return (*key_api_typesw[msg->sadb_msg_type])(so, m, &mh);
 
 senderror:
 	return key_senderror(so, m, error);

Reply via email to