Module Name:    src
Committed By:   ozaki-r
Date:           Tue May  9 04:17:14 UTC 2017

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

Log Message:
Use LIST_* functions (NFC)


To generate a diff of this commit:
cvs rdiff -u -r1.118 -r1.119 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.118 src/sys/netipsec/key.c:1.119
--- src/sys/netipsec/key.c:1.118	Wed Apr 26 08:36:32 2017
+++ src/sys/netipsec/key.c	Tue May  9 04:17:13 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: key.c,v 1.118 2017/04/26 08:36:32 ozaki-r Exp $	*/
+/*	$NetBSD: key.c,v 1.119 2017/05/09 04:17:13 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.118 2017/04/26 08:36:32 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: key.c,v 1.119 2017/05/09 04:17:13 ozaki-r Exp $");
 
 /*
  * This code is referd to RFC 2367
@@ -573,7 +573,7 @@ int
 key_havesp(u_int dir)
 {
 	return (dir == IPSEC_DIR_INBOUND || dir == IPSEC_DIR_OUTBOUND ?
-		LIST_FIRST(&sptree[dir]) != NULL : 1);
+		!LIST_EMPTY(&sptree[dir]) : 1);
 }
 
 /* %%% IPsec policy management */
@@ -927,17 +927,12 @@ key_allocsa_policy(const struct secasind
 static struct secasvar *
 key_do_allocsa_policy(struct secashead *sah, u_int state)
 {
-	struct secasvar *sav, *nextsav, *candidate, *d;
+	struct secasvar *sav, *candidate, *d;
 
 	/* initilize */
 	candidate = NULL;
 
-	for (sav = LIST_FIRST(&sah->savtree[state]);
-	     sav != NULL;
-	     sav = nextsav) {
-
-		nextsav = LIST_NEXT(sav, chain);
-
+	LIST_FOREACH(sav, &sah->savtree[state], chain) {
 		/* sanity check */
 		KEY_CHKSASTATE(sav->state, state, "key_do_allocsa_policy");
 
@@ -2395,11 +2390,7 @@ key_spdflush(struct socket *so, struct m
 
 	for (dir = 0; dir < IPSEC_DIR_MAX; dir++) {
 		struct secpolicy * nextsp;
-		for (sp = LIST_FIRST(&sptree[dir]);
-		     sp != NULL;
-		     sp = nextsp) {
-
- 			nextsp = LIST_NEXT(sp, chain);
+		LIST_FOREACH_SAFE(sp, &sptree[dir], chain, nextsp) {
 			if (sp->state == IPSEC_SPSTATE_DEAD)
 				continue;
 			key_sp_dead(sp);
@@ -2875,12 +2866,7 @@ key_delsah(struct secashead *sah)
 	     stateidx++) {
 
 		state = saorder_state_any[stateidx];
-		for (sav = (struct secasvar *)LIST_FIRST(&sah->savtree[state]);
-		     sav != NULL;
-		     sav = nextsav) {
-
-			nextsav = LIST_NEXT(sav, chain);
-
+		LIST_FOREACH_SAFE(sav, &sah->savtree[state], chain, nextsav) {
 			if (sav->refcnt == 0) {
 				/* sanity check */
 				KEY_CHKSASTATE(state, sav->state, "key_delsah");
@@ -4542,12 +4528,7 @@ key_timehandler(void* arg)
 	struct secpolicy *sp, *nextsp;
 
 	for (dir = 0; dir < IPSEC_DIR_MAX; dir++) {
-		for (sp = LIST_FIRST(&sptree[dir]);
-		     sp != NULL;
-		     sp = nextsp) {
-
-			nextsp = LIST_NEXT(sp, chain);
-
+		LIST_FOREACH_SAFE(sp, &sptree[dir], chain, nextsp) {
 			if (sp->state == IPSEC_SPSTATE_DEAD) {
 				key_sp_unlink(sp);	/*XXX*/
 
@@ -4576,12 +4557,7 @@ key_timehandler(void* arg)
 	struct secashead *sah, *nextsah;
 	struct secasvar *sav, *nextsav;
 
-	for (sah = LIST_FIRST(&sahtree);
-	     sah != NULL;
-	     sah = nextsah) {
-
-		nextsah = LIST_NEXT(sah, chain);
-
+	LIST_FOREACH_SAFE(sah, &sahtree, chain, nextsah) {
 		/* if sah has been dead, then delete it and process next sah. */
 		if (sah->state == SADB_SASTATE_DEAD) {
 			key_delsah(sah);
@@ -4589,12 +4565,8 @@ key_timehandler(void* arg)
 		}
 
 		/* if LARVAL entry doesn't become MATURE, delete it. */
-		for (sav = LIST_FIRST(&sah->savtree[SADB_SASTATE_LARVAL]);
-		     sav != NULL;
-		     sav = nextsav) {
-
-			nextsav = LIST_NEXT(sav, chain);
-
+		LIST_FOREACH_SAFE(sav, &sah->savtree[SADB_SASTATE_LARVAL],
+		    chain, nextsav) {
 			if (now - sav->created > key_larval_lifetime) {
 				KEY_FREESAV(&sav);
 			}
@@ -4604,12 +4576,8 @@ key_timehandler(void* arg)
 		 * check MATURE entry to start to send expire message
 		 * whether or not.
 		 */
-		for (sav = LIST_FIRST(&sah->savtree[SADB_SASTATE_MATURE]);
-		     sav != NULL;
-		     sav = nextsav) {
-
-			nextsav = LIST_NEXT(sav, chain);
-
+		LIST_FOREACH_SAFE(sav, &sah->savtree[SADB_SASTATE_MATURE],
+		    chain, nextsav) {
 			/* we don't need to check. */
 			if (sav->lft_s == NULL)
 				continue;
@@ -4661,12 +4629,8 @@ key_timehandler(void* arg)
 		}
 
 		/* check DYING entry to change status to DEAD. */
-		for (sav = LIST_FIRST(&sah->savtree[SADB_SASTATE_DYING]);
-		     sav != NULL;
-		     sav = nextsav) {
-
-			nextsav = LIST_NEXT(sav, chain);
-
+		LIST_FOREACH_SAFE(sav, &sah->savtree[SADB_SASTATE_DYING],
+		    chain, nextsav) {
 			/* we don't need to check. */
 			if (sav->lft_h == NULL)
 				continue;
@@ -4708,12 +4672,8 @@ key_timehandler(void* arg)
 		}
 
 		/* delete entry in DEAD */
-		for (sav = LIST_FIRST(&sah->savtree[SADB_SASTATE_DEAD]);
-		     sav != NULL;
-		     sav = nextsav) {
-
-			nextsav = LIST_NEXT(sav, chain);
-
+		LIST_FOREACH_SAFE(sav, &sah->savtree[SADB_SASTATE_DEAD],
+		    chain, nextsav) {
 			/* sanity check */
 			if (sav->state != SADB_SASTATE_DEAD) {
 				ipseclog((LOG_DEBUG, "key_timehandler: "
@@ -4738,12 +4698,7 @@ key_timehandler(void* arg)
     {
 	struct secacq *acq, *nextacq;
 
-	for (acq = LIST_FIRST(&acqtree);
-	     acq != NULL;
-	     acq = nextacq) {
-
-		nextacq = LIST_NEXT(acq, chain);
-
+	LIST_FOREACH_SAFE(acq, &acqtree, chain, nextacq) {
 		if (now - acq->created > key_blockacq_lifetime
 		 && __LIST_CHAINED(acq)) {
 			LIST_REMOVE(acq, chain);
@@ -4757,12 +4712,7 @@ key_timehandler(void* arg)
     {
 	struct secspacq *acq, *nextacq;
 
-	for (acq = LIST_FIRST(&spacqtree);
-	     acq != NULL;
-	     acq = nextacq) {
-
-		nextacq = LIST_NEXT(acq, chain);
-
+	LIST_FOREACH_SAFE(acq, &spacqtree, chain, nextacq) {
 		if (now - acq->created > key_blockacq_lifetime
 		 && __LIST_CHAINED(acq)) {
 			LIST_REMOVE(acq, chain);
@@ -5833,9 +5783,8 @@ key_delete_all(struct socket *so, struct
 			state = saorder_state_alive[stateidx];
 			if (state == SADB_SASTATE_LARVAL)
 				continue;
-			for (sav = LIST_FIRST(&sah->savtree[state]);
-			     sav != NULL; sav = nextsav) {
-				nextsav = LIST_NEXT(sav, chain);
+			LIST_FOREACH_SAFE(sav, &sah->savtree[state], chain,
+			    nextsav) {
 				/* sanity check */
 				if (sav->state != state) {
 					ipseclog((LOG_DEBUG, "key_delete_all: "
@@ -6968,7 +6917,7 @@ key_flush(struct socket *so, struct mbuf
           const struct sadb_msghdr *mhp)
 {
 	struct sadb_msg *newmsg;
-	struct secashead *sah, *nextsah;
+	struct secashead *sah;
 	struct secasvar *sav, *nextsav;
 	u_int16_t proto;
 	u_int8_t state;
@@ -6985,11 +6934,7 @@ key_flush(struct socket *so, struct mbuf
 	}
 
 	/* no SATYPE specified, i.e. flushing all SA. */
-	for (sah = LIST_FIRST(&sahtree);
-	     sah != NULL;
-	     sah = nextsah) {
-		nextsah = LIST_NEXT(sah, chain);
-
+	LIST_FOREACH(sah, &sahtree, chain) {
 		if (mhp->msg->sadb_msg_satype != SADB_SATYPE_UNSPEC
 		 && proto != sah->saidx.proto)
 			continue;
@@ -6998,12 +6943,8 @@ key_flush(struct socket *so, struct mbuf
 		     stateidx < _ARRAYLEN(saorder_state_alive);
 		     stateidx++) {
 			state = saorder_state_any[stateidx];
-			for (sav = LIST_FIRST(&sah->savtree[state]);
-			     sav != NULL;
-			     sav = nextsav) {
-
-				nextsav = LIST_NEXT(sav, chain);
-
+			LIST_FOREACH_SAFE(sav, &sah->savtree[state], chain,
+			    nextsav) {
 				key_sa_chgstate(sav, SADB_SASTATE_DEAD);
 				KEY_FREESAV(&sav);
 			}

Reply via email to