Lines Matching refs:km
389 if (x->km.state == XFRM_STATE_DEAD) in xfrm_timer_handler()
391 if (x->km.state == XFRM_STATE_EXPIRED) in xfrm_timer_handler()
418 if (x->km.dying) in xfrm_timer_handler()
441 x->km.dying = warn; in xfrm_timer_handler()
452 if (x->km.state == XFRM_STATE_ACQ && x->id.spi == 0) in xfrm_timer_handler()
453 x->km.state = XFRM_STATE_EXPIRED; in xfrm_timer_handler()
478 INIT_LIST_HEAD(&x->km.all); in xfrm_state_alloc()
505 WARN_ON(x->km.state != XFRM_STATE_DEAD); in __xfrm_state_destroy()
519 if (x->km.state != XFRM_STATE_DEAD) { in __xfrm_state_delete()
520 x->km.state = XFRM_STATE_DEAD; in __xfrm_state_delete()
522 list_del(&x->km.all); in __xfrm_state_delete()
742 if (x->km.state == XFRM_STATE_VALID) { in xfrm_state_look_at()
749 (*best)->km.dying > x->km.dying || in xfrm_state_look_at()
750 ((*best)->km.dying == x->km.dying && in xfrm_state_look_at()
753 } else if (x->km.state == XFRM_STATE_ACQ) { in xfrm_state_look_at()
755 } else if (x->km.state == XFRM_STATE_ERROR || in xfrm_state_look_at()
756 x->km.state == XFRM_STATE_EXPIRED) { in xfrm_state_look_at()
846 x->km.state = XFRM_STATE_DEAD; in xfrm_state_find()
853 x->km.state = XFRM_STATE_ACQ; in xfrm_state_find()
854 list_add(&x->km.all, &net->xfrm.state_all); in xfrm_state_find()
867 x->km.state = XFRM_STATE_DEAD; in xfrm_state_find()
902 x->km.state == XFRM_STATE_VALID) { in xfrm_stateonly_find()
925 x = container_of(w, struct xfrm_state, km); in xfrm_state_lookup_byspi()
944 list_add(&x->km.all, &net->xfrm.state_all); in __xfrm_state_insert()
1018 x->km.state != XFRM_STATE_ACQ || in __find_acq_core()
1055 x->km.state = XFRM_STATE_ACQ; in __find_acq_core()
1065 list_add(&x->km.all, &net->xfrm.state_all); in __find_acq_core()
1103 if (use_spi && x->km.seq) { in xfrm_state_add()
1104 x1 = __xfrm_find_acq_byseq(net, mark, x->km.seq); in xfrm_state_add()
1209 x->km.state = orig->km.state; in xfrm_state_clone()
1210 x->km.seq = orig->km.seq; in xfrm_state_clone()
1319 if (x1->km.state == XFRM_STATE_ACQ) { in xfrm_state_update()
1342 if (likely(x1->km.state == XFRM_STATE_VALID)) { in xfrm_state_update()
1351 x1->km.dying = 0; in xfrm_state_update()
1358 x->km.state = XFRM_STATE_DEAD; in xfrm_state_update()
1376 x->km.state = XFRM_STATE_EXPIRED; in xfrm_state_check_expire()
1381 if (!x->km.dying && in xfrm_state_check_expire()
1384 x->km.dying = 1; in xfrm_state_check_expire()
1483 if (x->km.seq == seq && in __xfrm_find_acq_byseq()
1485 x->km.state == XFRM_STATE_ACQ) { in __xfrm_find_acq_byseq()
1553 if (x->km.state == XFRM_STATE_DEAD) in xfrm_alloc_spi()
1633 state = container_of(x, struct xfrm_state, km); in xfrm_state_walk()
1686 if (x->km.state == XFRM_STATE_VALID) { in xfrm_replay_timer_handler()
1700 struct xfrm_mgr *km; in km_policy_notify() local
1703 list_for_each_entry_rcu(km, &xfrm_km_list, list) in km_policy_notify()
1704 if (km->notify_policy) in km_policy_notify()
1705 km->notify_policy(xp, dir, c); in km_policy_notify()
1711 struct xfrm_mgr *km; in km_state_notify() local
1713 list_for_each_entry_rcu(km, &xfrm_km_list, list) in km_state_notify()
1714 if (km->notify) in km_state_notify()
1715 km->notify(x, c); in km_state_notify()
1740 struct xfrm_mgr *km; in km_query() local
1743 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_query()
1744 acqret = km->acquire(x, t, pol); in km_query()
1756 struct xfrm_mgr *km; in km_new_mapping() local
1759 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_new_mapping()
1760 if (km->new_mapping) in km_new_mapping()
1761 err = km->new_mapping(x, ipaddr, sport); in km_new_mapping()
1788 struct xfrm_mgr *km; in km_migrate() local
1791 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_migrate()
1792 if (km->migrate) { in km_migrate()
1793 ret = km->migrate(sel, dir, type, m, num_migrate, k); in km_migrate()
1808 struct xfrm_mgr *km; in km_report() local
1811 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_report()
1812 if (km->report) { in km_report()
1813 ret = km->report(net, proto, sel, addr); in km_report()
1825 struct xfrm_mgr *km; in km_is_alive() local
1829 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_is_alive()
1830 if (km->is_alive && km->is_alive(c)) { in km_is_alive()
1845 struct xfrm_mgr *km; in xfrm_user_policy() local
1861 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in xfrm_user_policy()
1862 pol = km->compile_policy(sk, optname, data, in xfrm_user_policy()
1883 int xfrm_register_km(struct xfrm_mgr *km) in xfrm_register_km() argument
1886 list_add_tail_rcu(&km->list, &xfrm_km_list); in xfrm_register_km()
1892 int xfrm_unregister_km(struct xfrm_mgr *km) in xfrm_unregister_km() argument
1895 list_del_rcu(&km->list); in xfrm_unregister_km()
1976 if (x->km.state == XFRM_STATE_VALID && in xfrm_state_mtu()
2066 x->km.state = XFRM_STATE_VALID; in __xfrm_init_state()