Lines Matching refs:km

117 		if (x->km.seq) {  in xfrm_hash_transfer()
118 h = __xfrm_seq_hash(x->km.seq, nhashmask); in xfrm_hash_transfer()
552 if (x->km.state == XFRM_STATE_DEAD) in xfrm_timer_handler()
554 if (x->km.state == XFRM_STATE_EXPIRED) in xfrm_timer_handler()
581 if (x->km.dying) in xfrm_timer_handler()
604 x->km.dying = warn; in xfrm_timer_handler()
616 if (x->km.state == XFRM_STATE_ACQ && x->id.spi == 0) in xfrm_timer_handler()
617 x->km.state = XFRM_STATE_EXPIRED; in xfrm_timer_handler()
642 INIT_LIST_HEAD(&x->km.all); in xfrm_state_alloc()
665 WARN_ON(x->km.state != XFRM_STATE_DEAD); in __xfrm_state_destroy()
684 if (x->km.state != XFRM_STATE_DEAD) { in __xfrm_state_delete()
685 x->km.state = XFRM_STATE_DEAD; in __xfrm_state_delete()
687 list_del(&x->km.all); in __xfrm_state_delete()
690 if (x->km.seq) in __xfrm_state_delete()
1044 if (x->km.state == XFRM_STATE_VALID) { in xfrm_state_look_at()
1053 (*best)->km.dying > x->km.dying || in xfrm_state_look_at()
1054 ((*best)->km.dying == x->km.dying && in xfrm_state_look_at()
1057 } else if (x->km.state == XFRM_STATE_ACQ) { in xfrm_state_look_at()
1059 } else if (x->km.state == XFRM_STATE_ERROR || in xfrm_state_look_at()
1060 x->km.state == XFRM_STATE_EXPIRED) { in xfrm_state_look_at()
1159 x->km.state = XFRM_STATE_DEAD; in xfrm_state_find()
1167 x->km.state = XFRM_STATE_ACQ; in xfrm_state_find()
1168 list_add(&x->km.all, &net->xfrm.state_all); in xfrm_state_find()
1176 if (x->km.seq) { in xfrm_state_find()
1177 h = xfrm_seq_hash(net, x->km.seq); in xfrm_state_find()
1188 x->km.state = XFRM_STATE_DEAD; in xfrm_state_find()
1237 x->km.state == XFRM_STATE_VALID) { in xfrm_stateonly_find()
1260 x = container_of(w, struct xfrm_state, km); in xfrm_state_lookup_byspi()
1279 list_add(&x->km.all, &net->xfrm.state_all); in __xfrm_state_insert()
1295 if (x->km.seq) { in __xfrm_state_insert()
1296 h = xfrm_seq_hash(net, x->km.seq); in __xfrm_state_insert()
1361 x->km.state != XFRM_STATE_ACQ || in __find_acq_core()
1398 x->km.state = XFRM_STATE_ACQ; in __find_acq_core()
1411 list_add(&x->km.all, &net->xfrm.state_all); in __find_acq_core()
1449 if (use_spi && x->km.seq) { in xfrm_state_add()
1450 x1 = __xfrm_find_acq_byseq(net, mark, x->km.seq); in xfrm_state_add()
1590 x->km.state = orig->km.state; in xfrm_state_clone()
1591 x->km.seq = orig->km.seq; in xfrm_state_clone()
1717 if (x1->km.state == XFRM_STATE_ACQ) { in xfrm_state_update()
1740 if (likely(x1->km.state == XFRM_STATE_VALID)) { in xfrm_state_update()
1753 x1->km.dying = 0; in xfrm_state_update()
1774 x->km.state = XFRM_STATE_DEAD; in xfrm_state_update()
1794 x->km.state = XFRM_STATE_EXPIRED; in xfrm_state_check_expire()
1799 if (!x->km.dying && in xfrm_state_check_expire()
1802 x->km.dying = 1; in xfrm_state_check_expire()
1985 if (x->km.seq == seq && in __xfrm_find_acq_byseq()
1987 x->km.state == XFRM_STATE_ACQ) { in __xfrm_find_acq_byseq()
2056 if (x->km.state == XFRM_STATE_DEAD) in xfrm_alloc_spi()
2137 state = container_of(x, struct xfrm_state, km); in xfrm_state_walk()
2190 if (x->km.state == XFRM_STATE_VALID) { in xfrm_replay_timer_handler()
2204 struct xfrm_mgr *km; in km_policy_notify() local
2207 list_for_each_entry_rcu(km, &xfrm_km_list, list) in km_policy_notify()
2208 if (km->notify_policy) in km_policy_notify()
2209 km->notify_policy(xp, dir, c); in km_policy_notify()
2215 struct xfrm_mgr *km; in km_state_notify() local
2217 list_for_each_entry_rcu(km, &xfrm_km_list, list) in km_state_notify()
2218 if (km->notify) in km_state_notify()
2219 km->notify(x, c); in km_state_notify()
2244 struct xfrm_mgr *km; in km_query() local
2247 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_query()
2248 acqret = km->acquire(x, t, pol); in km_query()
2260 struct xfrm_mgr *km; in __km_new_mapping() local
2263 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in __km_new_mapping()
2264 if (km->new_mapping) in __km_new_mapping()
2265 err = km->new_mapping(x, ipaddr, sport); in __km_new_mapping()
2311 struct xfrm_mgr *km; in km_migrate() local
2314 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_migrate()
2315 if (km->migrate) { in km_migrate()
2316 ret = km->migrate(sel, dir, type, m, num_migrate, k, in km_migrate()
2332 struct xfrm_mgr *km; in km_report() local
2335 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_report()
2336 if (km->report) { in km_report()
2337 ret = km->report(net, proto, sel, addr); in km_report()
2349 struct xfrm_mgr *km; in km_is_alive() local
2353 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in km_is_alive()
2354 if (km->is_alive && km->is_alive(c)) { in km_is_alive()
2428 struct xfrm_mgr *km; in xfrm_user_policy() local
2463 list_for_each_entry_rcu(km, &xfrm_km_list, list) { in xfrm_user_policy()
2464 pol = km->compile_policy(sk, optname, data, in xfrm_user_policy()
2485 int xfrm_register_km(struct xfrm_mgr *km) in xfrm_register_km() argument
2488 list_add_tail_rcu(&km->list, &xfrm_km_list); in xfrm_register_km()
2494 int xfrm_unregister_km(struct xfrm_mgr *km) in xfrm_unregister_km() argument
2497 list_del_rcu(&km->list); in xfrm_unregister_km()
2589 if (x->km.state != XFRM_STATE_VALID || in xfrm_state_mtu()
2697 x->km.state = XFRM_STATE_VALID; in xfrm_init_state()