Index: sys/net/pipex.c
===================================================================
RCS file: /cvs/src/sys/net/pipex.c,v
retrieving revision 1.111
diff -u -p -r1.111 pipex.c
--- sys/net/pipex.c     6 Apr 2020 12:31:30 -0000       1.111
+++ sys/net/pipex.c     6 Apr 2020 12:58:31 -0000
@@ -177,17 +177,15 @@ pipex_iface_start(struct pipex_iface_con
 Static void
 pipex_iface_stop(struct pipex_iface_context *pipex_iface)
 {
-       struct pipex_session *session;
-       struct pipex_session *session_next;
+       struct pipex_session *session, *session_tmp;
 
        pipex_iface->pipexmode = 0;
        /*
         * traversal all pipex sessions.
         * it will become heavy if the number of pppac devices bocomes large.
         */
-       for (session = LIST_FIRST(&pipex_session_list);
-           session; session = session_next) {
-               session_next = LIST_NEXT(session, session_list);
+       LIST_FOREACH_SAFE(session, &pipex_session_list, session_list,
+           session_tmp) {
                if (session->pipex_iface == pipex_iface)
                        pipex_destroy_session(session);
        }
@@ -555,13 +553,12 @@ Static int
 pipex_get_closed(struct pipex_session_list_req *req,
     struct pipex_iface_context *iface)
 {
-       struct pipex_session *session, *session_next;
+       struct pipex_session *session, *session_tmp;
 
        NET_ASSERT_LOCKED();
        bzero(req, sizeof(*req));
-       for (session = LIST_FIRST(&pipex_close_wait_list);
-           session; session = session_next) {
-               session_next = LIST_NEXT(session, state_list);
+       LIST_FOREACH_SAFE(session, &pipex_close_wait_list, state_list,
+           session_tmp) {
                if (session->pipex_iface != iface)
                        continue;
                req->plr_ppp_id[req->plr_ppp_id_count++] = session->ppp_id;
@@ -763,16 +760,14 @@ pipex_timer_stop(void)
 Static void
 pipex_timer(void *ignored_arg)
 {
-       struct pipex_session *session;
-       struct pipex_session *session_next;
+       struct pipex_session *session, *session_tmp;
 
        timeout_add_sec(&pipex_timer_ch, pipex_prune);
 
        NET_LOCK();
        /* walk through */
-       for (session = LIST_FIRST(&pipex_session_list); session;
-           session = session_next) {
-               session_next = LIST_NEXT(session, session_list);
+       LIST_FOREACH_SAFE(session, &pipex_session_list, session_list,
+           session_tmp) {
                switch (session->state) {
                case PIPEX_STATE_OPENED:
                        if (session->timeout_sec == 0)

Reply via email to