#include <linux/workqueue.h>
#include <net/xfrm.h>
#include <linux/pfkeyv2.h>
#include <linux/ipsec.h>
#include <linux/module.h>
#include <linux/cache.h>
#include <linux/audit.h>
#include <asm/uaccess.h>
#include "xfrm_hash.h"

マクロ定義 | |
| #define | xfrm_audit_state_replay(x, s, sq) do { ; } while (0) |
関数 | |
| EXPORT_SYMBOL (xfrm_nl) | |
| EXPORT_SYMBOL (sysctl_xfrm_aevent_etime) | |
| EXPORT_SYMBOL (sysctl_xfrm_aevent_rseqth) | |
| static | DEFINE_SPINLOCK (xfrm_state_lock) |
| static struct xfrm_state_afinfo * | xfrm_state_get_afinfo (unsigned int family) |
| static void | xfrm_state_put_afinfo (struct xfrm_state_afinfo *afinfo) |
| static unsigned int | xfrm_dst_hash (xfrm_address_t *daddr, xfrm_address_t *saddr, u32 reqid, unsigned short family) |
| static unsigned int | xfrm_src_hash (xfrm_address_t *daddr, xfrm_address_t *saddr, unsigned short family) |
| static unsigned int | xfrm_spi_hash (xfrm_address_t *daddr, __be32 spi, u8 proto, unsigned short family) |
| static void | xfrm_hash_transfer (struct hlist_head *list, struct hlist_head *ndsttable, struct hlist_head *nsrctable, struct hlist_head *nspitable, unsigned int nhashmask) |
| static unsigned long | xfrm_hash_new_size (void) |
| static | DEFINE_MUTEX (hash_resize_mutex) |
| static void | xfrm_hash_resize (struct work_struct *__unused) |
| static | DECLARE_WORK (xfrm_hash_work, xfrm_hash_resize) |
| DECLARE_WAIT_QUEUE_HEAD (km_waitq) | |
| EXPORT_SYMBOL (km_waitq) | |
| static | DEFINE_RWLOCK (xfrm_state_afinfo_lock) |
| static | HLIST_HEAD (xfrm_state_gc_list) |
| static | DEFINE_SPINLOCK (xfrm_state_gc_lock) |
| int | __xfrm_state_delete (struct xfrm_state *x) |
| int | km_query (struct xfrm_state *x, struct xfrm_tmpl *t, struct xfrm_policy *pol) |
| void | km_state_expired (struct xfrm_state *x, int hard, u32 pid) |
| static struct xfrm_state_afinfo * | xfrm_state_lock_afinfo (unsigned int family) |
| static void | xfrm_state_unlock_afinfo (struct xfrm_state_afinfo *afinfo) __releases(xfrm_state_afinfo_lock) |
| int | xfrm_register_type (const struct xfrm_type *type, unsigned short family) |
| EXPORT_SYMBOL (xfrm_register_type) | |
| int | xfrm_unregister_type (const struct xfrm_type *type, unsigned short family) |
| EXPORT_SYMBOL (xfrm_unregister_type) | |
| static struct xfrm_type * | xfrm_get_type (u8 proto, unsigned short family) |
| static void | xfrm_put_type (const struct xfrm_type *type) |
| int | xfrm_register_mode (struct xfrm_mode *mode, int family) |
| EXPORT_SYMBOL (xfrm_register_mode) | |
| int | xfrm_unregister_mode (struct xfrm_mode *mode, int family) |
| EXPORT_SYMBOL (xfrm_unregister_mode) | |
| static struct xfrm_mode * | xfrm_get_mode (unsigned int encap, int family) |
| static void | xfrm_put_mode (struct xfrm_mode *mode) |
| static void | xfrm_state_gc_destroy (struct xfrm_state *x) |
| static void | xfrm_state_gc_task (struct work_struct *data) |
| static unsigned long | make_jiffies (long secs) |
| static void | xfrm_timer_handler (unsigned long data) |
| static void | xfrm_replay_timer_handler (unsigned long data) |
| struct xfrm_state * | xfrm_state_alloc (void) |
| EXPORT_SYMBOL (xfrm_state_alloc) | |
| void | __xfrm_state_destroy (struct xfrm_state *x) |
| EXPORT_SYMBOL (__xfrm_state_destroy) | |
| EXPORT_SYMBOL (__xfrm_state_delete) | |
| int | xfrm_state_delete (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_delete) | |
| static int | xfrm_state_flush_secctx_check (u8 proto, struct xfrm_audit *audit_info) |
| int | xfrm_state_flush (u8 proto, struct xfrm_audit *audit_info) |
| EXPORT_SYMBOL (xfrm_state_flush) | |
| void | xfrm_sad_getinfo (struct xfrmk_sadinfo *si) |
| EXPORT_SYMBOL (xfrm_sad_getinfo) | |
| static int | xfrm_init_tempsel (struct xfrm_state *x, struct flowi *fl, struct xfrm_tmpl *tmpl, xfrm_address_t *daddr, xfrm_address_t *saddr, unsigned short family) |
| static struct xfrm_state * | __xfrm_state_lookup (xfrm_address_t *daddr, __be32 spi, u8 proto, unsigned short family) |
| static struct xfrm_state * | __xfrm_state_lookup_byaddr (xfrm_address_t *daddr, xfrm_address_t *saddr, u8 proto, unsigned short family) |
| static struct xfrm_state * | __xfrm_state_locate (struct xfrm_state *x, int use_spi, int family) |
| static void | xfrm_hash_grow_check (int have_hash_collision) |
| struct xfrm_state * | xfrm_state_find (xfrm_address_t *daddr, xfrm_address_t *saddr, struct flowi *fl, struct xfrm_tmpl *tmpl, struct xfrm_policy *pol, int *err, unsigned short family) |
| struct xfrm_state * | xfrm_stateonly_find (xfrm_address_t *daddr, xfrm_address_t *saddr, unsigned short family, u8 mode, u8 proto, u32 reqid) |
| EXPORT_SYMBOL (xfrm_stateonly_find) | |
| static void | __xfrm_state_insert (struct xfrm_state *x) |
| static void | __xfrm_state_bump_genids (struct xfrm_state *xnew) |
| void | xfrm_state_insert (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_insert) | |
| static struct xfrm_state * | __find_acq_core (unsigned short family, u8 mode, u32 reqid, u8 proto, xfrm_address_t *daddr, xfrm_address_t *saddr, int create) |
| static struct xfrm_state * | __xfrm_find_acq_byseq (u32 seq) |
| int | xfrm_state_add (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_add) | |
| int | xfrm_state_update (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_update) | |
| int | xfrm_state_check_expire (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_check_expire) | |
| struct xfrm_state * | xfrm_state_lookup (xfrm_address_t *daddr, __be32 spi, u8 proto, unsigned short family) |
| EXPORT_SYMBOL (xfrm_state_lookup) | |
| struct xfrm_state * | xfrm_state_lookup_byaddr (xfrm_address_t *daddr, xfrm_address_t *saddr, u8 proto, unsigned short family) |
| EXPORT_SYMBOL (xfrm_state_lookup_byaddr) | |
| struct xfrm_state * | xfrm_find_acq (u8 mode, u32 reqid, u8 proto, xfrm_address_t *daddr, xfrm_address_t *saddr, int create, unsigned short family) |
| EXPORT_SYMBOL (xfrm_find_acq) | |
| struct xfrm_state * | xfrm_find_acq_byseq (u32 seq) |
| EXPORT_SYMBOL (xfrm_find_acq_byseq) | |
| u32 | xfrm_get_acqseq (void) |
| EXPORT_SYMBOL (xfrm_get_acqseq) | |
| int | xfrm_alloc_spi (struct xfrm_state *x, u32 low, u32 high) |
| EXPORT_SYMBOL (xfrm_alloc_spi) | |
| int | xfrm_state_walk (u8 proto, int(*func)(struct xfrm_state *, int, void *), void *data) |
| EXPORT_SYMBOL (xfrm_state_walk) | |
| void | xfrm_replay_notify (struct xfrm_state *x, int event) |
| int | xfrm_replay_check (struct xfrm_state *x, struct sk_buff *skb, __be32 net_seq) |
| void | xfrm_replay_advance (struct xfrm_state *x, __be32 net_seq) |
| static | LIST_HEAD (xfrm_km_list) |
| static | DEFINE_RWLOCK (xfrm_km_lock) |
| void | km_policy_notify (struct xfrm_policy *xp, int dir, struct km_event *c) |
| void | km_state_notify (struct xfrm_state *x, struct km_event *c) |
| EXPORT_SYMBOL (km_policy_notify) | |
| EXPORT_SYMBOL (km_state_notify) | |
| EXPORT_SYMBOL (km_state_expired) | |
| EXPORT_SYMBOL (km_query) | |
| int | km_new_mapping (struct xfrm_state *x, xfrm_address_t *ipaddr, __be16 sport) |
| EXPORT_SYMBOL (km_new_mapping) | |
| void | km_policy_expired (struct xfrm_policy *pol, int dir, int hard, u32 pid) |
| EXPORT_SYMBOL (km_policy_expired) | |
| int | km_report (u8 proto, struct xfrm_selector *sel, xfrm_address_t *addr) |
| EXPORT_SYMBOL (km_report) | |
| int | xfrm_user_policy (struct sock *sk, int optname, u8 __user *optval, int optlen) |
| EXPORT_SYMBOL (xfrm_user_policy) | |
| int | xfrm_register_km (struct xfrm_mgr *km) |
| EXPORT_SYMBOL (xfrm_register_km) | |
| int | xfrm_unregister_km (struct xfrm_mgr *km) |
| EXPORT_SYMBOL (xfrm_unregister_km) | |
| int | xfrm_state_register_afinfo (struct xfrm_state_afinfo *afinfo) |
| EXPORT_SYMBOL (xfrm_state_register_afinfo) | |
| int | xfrm_state_unregister_afinfo (struct xfrm_state_afinfo *afinfo) |
| EXPORT_SYMBOL (xfrm_state_unregister_afinfo) | |
| void | xfrm_state_delete_tunnel (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_state_delete_tunnel) | |
| int | xfrm_state_mtu (struct xfrm_state *x, int mtu) |
| int | xfrm_init_state (struct xfrm_state *x) |
| EXPORT_SYMBOL (xfrm_init_state) | |
| void __init | xfrm_state_init (void) |
変数 | |
| struct sock * | xfrm_nl |
| u32 sysctl_xfrm_aevent_etime | __read_mostly = XFRM_AE_ETIME |
| static unsigned int | xfrm_state_num |
| static unsigned int | xfrm_state_genid |
| static struct xfrm_state_afinfo * | xfrm_state_afinfo [NPROTO] |
| static struct work_struct | xfrm_state_gc_work |
| static struct xfrm_state* __find_acq_core | ( | unsigned short | family, | |
| u8 | mode, | |||
| u32 | reqid, | |||
| u8 | proto, | |||
| xfrm_address_t * | daddr, | |||
| xfrm_address_t * | saddr, | |||
| int | create | |||
| ) | [static, read] |
xfrm_state.c の 970 行で定義されています。
参照先 xfrm_address_t::a4, xfrm_address_t::a6, add_timer(), AF_INET, AF_INET6, xfrm_state::bydst, xfrm_state::bysrc, xfrm_selector::daddr, xfrm_id::daddr, timer_list::expires, xfrm_state::family, xfrm_lifetime_cfg::hard_add_expires_seconds, HZ, xfrm_state::id, jiffies, xfrm_state::km, xfrm_state::lft, xfrm_state::mode, NULL, xfrm_selector::prefixlen_d, xfrm_selector::prefixlen_s, xfrm_state::props, xfrm_id::proto, xfrm_state::reqid, xfrm_state::saddr, xfrm_selector::saddr, xfrm_state::sel, xfrm_id::spi, xfrm_state::state, sysctl_xfrm_acq_expires, xfrm_state::timer, xfrm_dst_hash(), xfrm_hash_grow_check(), xfrm_src_hash(), XFRM_STATE_ACQ, xfrm_state_alloc(), xfrm_state_hold(), と xfrm_state_num.
参照元 xfrm_find_acq(), と xfrm_state_add().

| static struct xfrm_state * __xfrm_find_acq_byseq | ( | u32 | seq | ) | [static, read] |
xfrm_state.c の 1428 行で定義されています。
参照先 xfrm_state::bydst, xfrm_state::km, NULL, xfrm_state::seq, xfrm_state::state, XFRM_STATE_ACQ, と xfrm_state_hold().
参照元 xfrm_find_acq_byseq(), と xfrm_state_add().

| static void __xfrm_state_bump_genids | ( | struct xfrm_state * | xnew | ) | [static] |
xfrm_state.c の 942 行で定義されています。
参照先 xfrm_id::daddr, xfrm_state::family, family, xfrm_state::genid, xfrm_state::id, xfrm_state::props, xfrm_state::reqid, xfrm_state::saddr, u32, xfrm_addr_cmp(), xfrm_dst_hash(), と xfrm_state_genid.
参照元 xfrm_state_add(), と xfrm_state_insert().

| int __xfrm_state_delete | ( | struct xfrm_state * | x | ) |
| void __xfrm_state_destroy | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 536 行で定義されています。
参照先 xfrm_state::bydst, xfrm_state::km, schedule_work(), spin_lock_bh, spin_unlock_bh, xfrm_state::state, XFRM_STATE_DEAD, と xfrm_state_gc_work.
参照元 xfrm_state_put().

| static void __xfrm_state_insert | ( | struct xfrm_state * | x | ) | [static] |
xfrm_state.c の 910 行で定義されています。
参照先 xfrm_state::bydst, xfrm_state::byspi, xfrm_state::bysrc, xfrm_id::daddr, xfrm_state::family, xfrm_state::genid, HZ, xfrm_state::id, jiffies, km_waitq, mod_timer(), NULL, xfrm_state::props, xfrm_id::proto, xfrm_state::replay_maxage, xfrm_state::reqid, xfrm_state::rtimer, xfrm_state::saddr, xfrm_id::spi, xfrm_state::timer, xfrm_dst_hash(), xfrm_hash_grow_check(), xfrm_spi_hash(), xfrm_src_hash(), xfrm_state_genid, と xfrm_state_num.
参照元 xfrm_state_add(), xfrm_state_insert(), と xfrm_state_update().

| static struct xfrm_state* __xfrm_state_locate | ( | struct xfrm_state * | x, | |
| int | use_spi, | |||
| int | family | |||
| ) | [static, read] |
xfrm_state.c の 747 行で定義されています。
参照先 __xfrm_state_lookup(), __xfrm_state_lookup_byaddr(), xfrm_id::daddr, xfrm_state::id, xfrm_state::props, xfrm_id::proto, xfrm_state::saddr, と xfrm_id::spi.
参照元 xfrm_state_add(), と xfrm_state_update().

| static struct xfrm_state* __xfrm_state_lookup | ( | xfrm_address_t * | daddr, | |
| __be32 | spi, | |||
| u8 | proto, | |||
| unsigned short | family | |||
| ) | [static, read] |
xfrm_state.c の 679 行で定義されています。
参照先 xfrm_address_t::a4, xfrm_address_t::a6, AF_INET, AF_INET6, xfrm_id::daddr, xfrm_state::family, xfrm_state::id, NULL, xfrm_state::props, xfrm_id::proto, xfrm_id::spi, xfrm_spi_hash(), と xfrm_state_hold().
参照元 __xfrm_state_locate(), xfrm_state_find(), と xfrm_state_lookup().

| static struct xfrm_state* __xfrm_state_lookup_byaddr | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| u8 | proto, | |||
| unsigned short | family | |||
| ) | [static, read] |
xfrm_state.c の 711 行で定義されています。
参照先 xfrm_address_t::a4, xfrm_address_t::a6, AF_INET, AF_INET6, xfrm_id::daddr, xfrm_state::family, xfrm_state::id, NULL, xfrm_state::props, xfrm_id::proto, xfrm_state::saddr, xfrm_src_hash(), と xfrm_state_hold().
参照元 __xfrm_state_locate(), と xfrm_state_lookup_byaddr().

| DECLARE_WAIT_QUEUE_HEAD | ( | km_waitq | ) |
| static DECLARE_WORK | ( | xfrm_hash_work | , | |
| xfrm_hash_resize | ||||
| ) | [static] |
| static DEFINE_MUTEX | ( | hash_resize_mutex | ) | [static] |
| static DEFINE_RWLOCK | ( | xfrm_km_lock | ) | [static] |
| static DEFINE_RWLOCK | ( | xfrm_state_afinfo_lock | ) | [static] |
| static DEFINE_SPINLOCK | ( | xfrm_state_gc_lock | ) | [static] |
| static DEFINE_SPINLOCK | ( | xfrm_state_lock | ) | [static] |
| EXPORT_SYMBOL | ( | xfrm_init_state | ) |
| EXPORT_SYMBOL | ( | xfrm_state_delete_tunnel | ) |
| EXPORT_SYMBOL | ( | xfrm_state_unregister_afinfo | ) |
| EXPORT_SYMBOL | ( | xfrm_state_register_afinfo | ) |
| EXPORT_SYMBOL | ( | xfrm_unregister_km | ) |
| EXPORT_SYMBOL | ( | xfrm_register_km | ) |
| EXPORT_SYMBOL | ( | xfrm_user_policy | ) |
| EXPORT_SYMBOL | ( | km_report | ) |
| EXPORT_SYMBOL | ( | km_policy_expired | ) |
| EXPORT_SYMBOL | ( | km_new_mapping | ) |
| EXPORT_SYMBOL | ( | km_query | ) |
| EXPORT_SYMBOL | ( | km_state_expired | ) |
| EXPORT_SYMBOL | ( | km_state_notify | ) |
| EXPORT_SYMBOL | ( | km_policy_notify | ) |
| EXPORT_SYMBOL | ( | xfrm_state_walk | ) |
| EXPORT_SYMBOL | ( | xfrm_alloc_spi | ) |
| EXPORT_SYMBOL | ( | xfrm_get_acqseq | ) |
| EXPORT_SYMBOL | ( | xfrm_find_acq_byseq | ) |
| EXPORT_SYMBOL | ( | xfrm_find_acq | ) |
| EXPORT_SYMBOL | ( | xfrm_state_lookup_byaddr | ) |
| EXPORT_SYMBOL | ( | xfrm_state_lookup | ) |
| EXPORT_SYMBOL | ( | xfrm_state_check_expire | ) |
| EXPORT_SYMBOL | ( | xfrm_state_update | ) |
| EXPORT_SYMBOL | ( | xfrm_state_add | ) |
| EXPORT_SYMBOL | ( | xfrm_state_insert | ) |
| EXPORT_SYMBOL | ( | xfrm_stateonly_find | ) |
| EXPORT_SYMBOL | ( | xfrm_sad_getinfo | ) |
| EXPORT_SYMBOL | ( | xfrm_state_flush | ) |
| EXPORT_SYMBOL | ( | xfrm_state_delete | ) |
| EXPORT_SYMBOL | ( | __xfrm_state_delete | ) |
| EXPORT_SYMBOL | ( | __xfrm_state_destroy | ) |
| EXPORT_SYMBOL | ( | xfrm_state_alloc | ) |
| EXPORT_SYMBOL | ( | xfrm_unregister_mode | ) |
| EXPORT_SYMBOL | ( | xfrm_register_mode | ) |
| EXPORT_SYMBOL | ( | xfrm_unregister_type | ) |
| EXPORT_SYMBOL | ( | xfrm_register_type | ) |
| EXPORT_SYMBOL | ( | km_waitq | ) |
| EXPORT_SYMBOL | ( | sysctl_xfrm_aevent_rseqth | ) |
| EXPORT_SYMBOL | ( | sysctl_xfrm_aevent_etime | ) |
| EXPORT_SYMBOL | ( | xfrm_nl | ) |
| static HLIST_HEAD | ( | xfrm_state_gc_list | ) | [static] |
| int km_new_mapping | ( | struct xfrm_state * | x, | |
| xfrm_address_t * | ipaddr, | |||
| __be16 | sport | |||
| ) |
xfrm_state.c の 1734 行で定義されています。
参照先 EINVAL, list, xfrm_mgr::new_mapping, read_lock, と read_unlock.
参照元 esp_input_done2().
| void km_policy_expired | ( | struct xfrm_policy * | pol, | |
| int | dir, | |||
| int | hard, | |||
| u32 | pid | |||
| ) |
xfrm_state.c の 1751 行で定義されています。
参照先 km_event::data, km_event::event, km_event::hard, km_policy_notify(), km_waitq, km_event::pid, と XFRM_MSG_POLEXPIRE.
参照元 xfrm_add_pol_expire(), と xfrm_policy_timer().

| void km_policy_notify | ( | struct xfrm_policy * | xp, | |
| int | dir, | |||
| struct km_event * | c | |||
| ) |
xfrm_state.c の 1676 行で定義されています。
参照先 list, xfrm_mgr::notify_policy, read_lock, と read_unlock.
参照元 km_policy_expired(), pfkey_spdadd(), pfkey_spddelete(), pfkey_spdflush(), pfkey_spdget(), xfrm_add_policy(), xfrm_flush_policy(), と xfrm_get_policy().
| int km_query | ( | struct xfrm_state * | x, | |
| struct xfrm_tmpl * | t, | |||
| struct xfrm_policy * | pol | |||
| ) |
| int km_report | ( | u8 | proto, | |
| struct xfrm_selector * | sel, | |||
| xfrm_address_t * | addr | |||
| ) |
| void km_state_expired | ( | struct xfrm_state * | x, | |
| int | hard, | |||
| u32 | pid | |||
| ) |
| void km_state_notify | ( | struct xfrm_state * | x, | |
| struct km_event * | c | |||
| ) |
xfrm_state.c の 1687 行で定義されています。
参照先 list, xfrm_mgr::notify, read_lock, と read_unlock.
参照元 km_state_expired(), pfkey_add(), pfkey_delete(), pfkey_flush(), xfrm_add_sa(), xfrm_del_sa(), xfrm_flush_sa(), xfrm_new_ae(), と xfrm_replay_notify().
| static LIST_HEAD | ( | xfrm_km_list | ) | [static] |
| int xfrm_alloc_spi | ( | struct xfrm_state * | x, | |
| u32 | low, | |||
| u32 | high | |||
| ) |
xfrm_state.c の 1471 行で定義されています。
参照先 xfrm_state::byspi, xfrm_id::daddr, ENOENT, xfrm_state::family, xfrm_state::id, xfrm_state::km, xfrm_state::lock, NULL, xfrm_state::props, xfrm_id::proto, xfrm_id::spi, spin_lock_bh, spin_unlock_bh, xfrm_state::state, u32, xfrm_spi_hash(), XFRM_STATE_DEAD, xfrm_state_lookup(), と xfrm_state_put().
参照元 pfkey_getspi(), と xfrm_alloc_userspi().

| static unsigned int xfrm_dst_hash | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| u32 | reqid, | |||
| unsigned short | family | |||
| ) | [inline, static] |
xfrm_state.c の 71 行で定義されています。
参照先 __xfrm_dst_hash().
参照元 __find_acq_core(), __xfrm_state_bump_genids(), __xfrm_state_insert(), xfrm_state_find(), と xfrm_stateonly_find().

| struct xfrm_state* xfrm_find_acq | ( | u8 | mode, | |
| u32 | reqid, | |||
| u8 | proto, | |||
| xfrm_address_t * | daddr, | |||
| xfrm_address_t * | saddr, | |||
| int | create, | |||
| unsigned short | family | |||
| ) | [read] |
xfrm_state.c の 1374 行で定義されています。
参照先 __find_acq_core(), spin_lock_bh, と spin_unlock_bh.
参照元 pfkey_getspi(), と xfrm_alloc_userspi().

| struct xfrm_state* xfrm_find_acq_byseq | ( | u32 | seq | ) | [read] |
xfrm_state.c の 1447 行で定義されています。
参照先 __xfrm_find_acq_byseq(), spin_lock_bh, と spin_unlock_bh.
参照元 pfkey_acquire(), pfkey_getspi(), と xfrm_alloc_userspi().

| u32 xfrm_get_acqseq | ( | void | ) |
xfrm_state.c の 1458 行で定義されています。
参照先 DEFINE_SPINLOCK, res, spin_lock_bh, spin_unlock_bh, と u32.
参照元 build_acquire().
| static struct xfrm_mode* xfrm_get_mode | ( | unsigned int | encap, | |
| int | family | |||
| ) | [static, read] |
xfrm_state.c の 347 行で定義されています。
参照先 mode, xfrm_state_afinfo::mode_map, NULL, xfrm_mode::owner, request_module(), try_module_get(), XFRM_MODE_MAX, xfrm_state_get_afinfo(), と xfrm_state_put_afinfo().
参照元 xfrm_init_state().

xfrm_state.c の 257 行で定義されています。
参照先 NULL, xfrm_type::owner, request_module(), try_module_get(), type, xfrm_state_afinfo::type_map, xfrm_state_get_afinfo(), と xfrm_state_put_afinfo().
参照元 xfrm_init_state().

| static void xfrm_hash_grow_check | ( | int | have_hash_collision | ) | [static] |
xfrm_state.c の 758 行で定義されています。
参照先 schedule_work(), と xfrm_state_num.
参照元 __find_acq_core(), __xfrm_state_insert(), と xfrm_state_find().

| static unsigned long xfrm_hash_new_size | ( | void | ) | [static] |
| static void xfrm_hash_resize | ( | struct work_struct * | __unused | ) | [static] |
xfrm_state.c の 131 行で定義されています。
参照先 i, mutex_lock(), mutex_unlock(), spin_lock_bh, spin_unlock_bh, xfrm_hash_alloc(), xfrm_hash_free(), xfrm_hash_new_size(), と xfrm_hash_transfer().

| static void xfrm_hash_transfer | ( | struct hlist_head * | list, | |
| struct hlist_head * | ndsttable, | |||
| struct hlist_head * | nsrctable, | |||
| struct hlist_head * | nspitable, | |||
| unsigned int | nhashmask | |||
| ) | [static] |
xfrm_state.c の 92 行で定義されています。
参照先 __xfrm_dst_hash(), __xfrm_spi_hash(), __xfrm_src_hash(), xfrm_state::bydst, xfrm_state::byspi, xfrm_state::bysrc, xfrm_id::daddr, xfrm_state::family, xfrm_state::id, xfrm_state::props, xfrm_id::proto, xfrm_state::reqid, xfrm_state::saddr, xfrm_id::spi, tmp, と x.
参照元 xfrm_hash_resize().

| int xfrm_init_state | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 1947 行で定義されています。
参照先 AF_INET, AF_INET6, AF_UNSPEC, EAFNOSUPPORT, EPROTONOSUPPORT, error, xfrm_state::family, xfrm_selector::family, xfrm_mode::flags, xfrm_state::id, xfrm_state_afinfo::init_flags, xfrm_type::init_state, xfrm_state::inner_mode, xfrm_state::inner_mode_iaf, xfrm_state::km, xfrm_state::mode, NULL, xfrm_state::outer_mode, xfrm_state::props, xfrm_id::proto, xfrm_state::sel, xfrm_state::state, xfrm_state::type, xfrm_get_mode(), xfrm_get_type(), XFRM_MODE_FLAG_TUNNEL, xfrm_put_mode(), xfrm_state_get_afinfo(), xfrm_state_put_afinfo(), と XFRM_STATE_VALID.
参照元 ipcomp6_tunnel_create(), ipcomp_tunnel_create(), pfkey_msg2xfrm_state(), と xfrm_state_construct().

| static int xfrm_init_tempsel | ( | struct xfrm_state * | x, | |
| struct flowi * | fl, | |||
| struct xfrm_tmpl * | tmpl, | |||
| xfrm_address_t * | daddr, | |||
| xfrm_address_t * | saddr, | |||
| unsigned short | family | |||
| ) | [static] |
xfrm_state.c の 666 行で定義されています。
参照先 xfrm_state_afinfo::init_tempsel, xfrm_state_get_afinfo(), と xfrm_state_put_afinfo().
参照元 xfrm_state_find().

| static void xfrm_put_mode | ( | struct xfrm_mode * | mode | ) | [static] |
xfrm_state.c の 375 行で定義されています。
参照先 module_put(), と xfrm_mode::owner.
参照元 xfrm_init_state(), と xfrm_state_gc_destroy().

| static void xfrm_put_type | ( | const struct xfrm_type * | type | ) | [static] |
| int xfrm_register_km | ( | struct xfrm_mgr * | km | ) |
xfrm_state.c の 1846 行で定義されています。
参照先 xfrm_mgr::list, write_lock_bh, と write_unlock_bh.
参照元 ipsec_pfkey_init(), と xfrm_user_init().
| int xfrm_register_mode | ( | struct xfrm_mode * | mode, | |
| int | family | |||
| ) |
xfrm_state.c の 289 行で定義されています。
参照先 xfrm_mode::afinfo, EAFNOSUPPORT, EEXIST, EINVAL, xfrm_mode::encap, ENOENT, err, xfrm_state_afinfo::mode_map, NULL, out, xfrm_state_afinfo::owner, try_module_get(), XFRM_MODE_MAX, xfrm_state_lock_afinfo(), と xfrm_state_unlock_afinfo().
参照元 xfrm4_beet_init(), xfrm4_mode_tunnel_init(), xfrm4_transport_init(), xfrm6_beet_init(), xfrm6_mode_tunnel_init(), xfrm6_ro_init(), と xfrm6_transport_init().

| int xfrm_register_type | ( | const struct xfrm_type * | type, | |
| unsigned short | family | |||
| ) |
xfrm_state.c の 219 行で定義されています。
参照先 EAFNOSUPPORT, EEXIST, err, NULL, xfrm_type::proto, xfrm_state_afinfo::type_map, xfrm_state_lock_afinfo(), と xfrm_state_unlock_afinfo().
参照元 ah4_init(), ah6_init(), esp4_init(), esp6_init(), ipcomp4_init(), ipcomp6_init(), ipip_init(), mip6_init(), と xfrm6_tunnel_init().

| void xfrm_replay_advance | ( | struct xfrm_state * | x, | |
| __be32 | net_seq | |||
| ) |
xfrm_state.c の 1652 行で定義されています。
参照先 xfrm_replay_state::bitmap, xfrm_state::props, xfrm_state::replay, xfrm_replay_state::seq, seq, U, u32, xfrm_aevent_is_on(), xfrm_replay_notify(), と XFRM_REPLAY_UPDATE.
参照元 xfrm_input().

| int xfrm_replay_check | ( | struct xfrm_state * | x, | |
| struct sk_buff * | skb, | |||
| __be32 | net_seq | |||
| ) |
| void xfrm_replay_notify | ( | struct xfrm_state * | x, | |
| int | event | |||
| ) |
xfrm_state.c の 1559 行で定義されています。
参照先 km_event::aevent, xfrm_replay_state::bitmap, km_event::data, km_event::event, jiffies, km_state_notify(), memcpy, mod_timer(), xfrm_replay_state::oseq, xfrm_state::preplay, xfrm_state::replay, xfrm_state::replay_maxage, xfrm_state::replay_maxdiff, xfrm_state::rtimer, xfrm_replay_state::seq, xfrm_state::xflags, XFRM_MSG_NEWAE, XFRM_REPLAY_TIMEOUT, XFRM_REPLAY_UPDATE, と XFRM_TIME_DEFER.
参照元 xfrm_output_one(), xfrm_replay_advance(), と xfrm_replay_timer_handler().

| static void xfrm_replay_timer_handler | ( | unsigned long | data | ) | [static] |
xfrm_state.c の 1606 行で定義されています。
参照先 xfrm_state::km, xfrm_state::lock, spin_lock, spin_unlock, xfrm_state::state, xfrm_state::xflags, xfrm_aevent_is_on(), xfrm_replay_notify(), XFRM_REPLAY_TIMEOUT, XFRM_STATE_VALID, と XFRM_TIME_DEFER.
参照元 xfrm_state_alloc().

| void xfrm_sad_getinfo | ( | struct xfrmk_sadinfo * | si | ) |
xfrm_state.c の 655 行で定義されています。
参照先 xfrmk_sadinfo::sadcnt, xfrmk_sadinfo::sadhcnt, xfrmk_sadinfo::sadhmcnt, spin_lock_bh, spin_unlock_bh, と xfrm_state_num.
参照元 build_sadinfo().
| static unsigned int xfrm_spi_hash | ( | xfrm_address_t * | daddr, | |
| __be32 | spi, | |||
| u8 | proto, | |||
| unsigned short | family | |||
| ) | [inline, static] |
xfrm_state.c の 87 行で定義されています。
参照先 __xfrm_spi_hash().
参照元 __xfrm_state_insert(), __xfrm_state_lookup(), xfrm_alloc_spi(), と xfrm_state_find().

| static unsigned int xfrm_src_hash | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| unsigned short | family | |||
| ) | [inline, static] |
xfrm_state.c の 79 行で定義されています。
参照先 __xfrm_src_hash().
参照元 __find_acq_core(), __xfrm_state_insert(), __xfrm_state_lookup_byaddr(), と xfrm_state_find().

| int xfrm_state_add | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 1057 行で定義されています。
参照先 __find_acq_core(), __xfrm_find_acq_byseq(), __xfrm_state_bump_genids(), __xfrm_state_insert(), __xfrm_state_locate(), xfrm_id::daddr, EEXIST, xfrm_state::family, family, xfrm_state::id, IPSEC_PROTO_ANY, xfrm_state::km, xfrm_state::mode, NULL, out, xfrm_state::props, xfrm_id::proto, xfrm_state::reqid, xfrm_state::saddr, xfrm_state::seq, spin_lock_bh, spin_unlock_bh, xfrm_addr_cmp(), xfrm_id_proto_match(), xfrm_state_delete(), と xfrm_state_put().
参照元 pfkey_add(), と xfrm_add_sa().

| struct xfrm_state* xfrm_state_alloc | ( | void | ) | [read] |
xfrm_state.c の 506 行で定義されています。
参照先 atomic_set, xfrm_state::bydst, xfrm_state::byspi, xfrm_state::bysrc, get_seconds(), GFP_ATOMIC, NULL, xfrm_state::refcnt, setup_timer(), spin_lock_init, xfrm_state::timer, xfrm_state::tunnel_users, x, XFRM_INF, xfrm_replay_timer_handler(), と xfrm_timer_handler().
参照元 __find_acq_core(), ipcomp6_tunnel_create(), ipcomp_tunnel_create(), pfkey_msg2xfrm_state(), xfrm_add_acquire(), xfrm_state_construct(), と xfrm_state_find().

| int xfrm_state_check_expire | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 1322 行で定義されています。
参照先 xfrm_lifetime_cur::bytes, xfrm_state::curlft, xfrm_state::dying, EINVAL, get_seconds(), xfrm_lifetime_cfg::hard_byte_limit, xfrm_lifetime_cfg::hard_packet_limit, jiffies, xfrm_state::km, km_state_expired(), xfrm_state::lft, mod_timer(), xfrm_lifetime_cur::packets, xfrm_lifetime_cfg::soft_byte_limit, xfrm_lifetime_cfg::soft_packet_limit, xfrm_state::state, xfrm_state::timer, xfrm_lifetime_cur::use_time, XFRM_STATE_EXPIRED, と XFRM_STATE_VALID.
参照元 xfrm6_input_addr(), xfrm_input(), xfrm_output_one(), と xfrm_state_update().

| int xfrm_state_delete | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 573 行で定義されています。
参照先 __xfrm_state_delete(), err, xfrm_state::lock, spin_lock_bh, と spin_unlock_bh.
参照元 pfkey_delete(), xfrm_del_sa(), xfrm_state_add(), xfrm_state_delete_tunnel(), xfrm_state_flush(), と xfrm_state_update().

| void xfrm_state_delete_tunnel | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 1919 行で定義されています。
参照先 atomic_dec, atomic_read, NULL, xfrm_state::tunnel, xfrm_state::tunnel_users, xfrm_state_delete(), と xfrm_state_put().
参照元 ipcomp6_destroy(), と ipcomp_destroy().

| struct xfrm_state* xfrm_state_find | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| struct flowi * | fl, | |||
| struct xfrm_tmpl * | tmpl, | |||
| struct xfrm_policy * | pol, | |||
| int * | err, | |||
| unsigned short | family | |||
| ) | [read] |
xfrm_state.c の 767 行で定義されています。
参照先 __xfrm_state_lookup(), xfrm_lifetime_cur::add_time, add_timer(), xfrm_state::bydst, xfrm_state::byspi, xfrm_state::bysrc, xfrm_state::curlft, xfrm_id::daddr, xfrm_state::dying, EAGAIN, EEXIST, ENOMEM, error, ESRCH, timer_list::expires, xfrm_state::family, xfrm_selector::family, xfrm_state::flags, xfrm_lifetime_cfg::hard_add_expires_seconds, HZ, xfrm_tmpl::id, xfrm_state::id, jiffies, xfrm_state::km, km_query(), xfrm_state::lft, xfrm_tmpl::mode, xfrm_state::mode, NULL, out, xfrm_state::props, xfrm_id::proto, xfrm_tmpl::reqid, xfrm_state::reqid, flowi::secid, xfrm_policy::security, security_xfrm_state_alloc_acquire(), security_xfrm_state_pol_flow_match(), xfrm_state::sel, xfrm_id::spi, spin_lock_bh, spin_unlock_bh, xfrm_state::state, sysctl_xfrm_acq_expires, xfrm_state::timer, xfrm_dst_hash(), xfrm_hash_grow_check(), xfrm_init_tempsel(), xfrm_selector_match(), xfrm_spi_hash(), xfrm_src_hash(), XFRM_STATE_ACQ, xfrm_state_addr_check(), xfrm_state_alloc(), XFRM_STATE_DEAD, XFRM_STATE_ERROR, XFRM_STATE_EXPIRED, xfrm_state_hold(), xfrm_state_num, xfrm_state_put(), XFRM_STATE_VALID, と XFRM_STATE_WILDRECV.

| int xfrm_state_flush | ( | u8 | proto, | |
| struct xfrm_audit * | audit_info | |||
| ) |
xfrm_state.c の 616 行で定義されています。
参照先 xfrm_state::bydst, xfrm_state::id, km_waitq, xfrm_audit::loginuid, out, xfrm_id::proto, restart(), xfrm_audit::secid, spin_lock_bh, spin_unlock_bh, xfrm_audit_state_delete, xfrm_id_proto_match(), xfrm_state_delete(), xfrm_state_flush_secctx_check(), xfrm_state_hold(), xfrm_state_kern(), と xfrm_state_put().
参照元 pfkey_flush(), と xfrm_flush_sa().

| static int xfrm_state_flush_secctx_check | ( | u8 | proto, | |
| struct xfrm_audit * | audit_info | |||
| ) | [inline, static] |
| static void xfrm_state_gc_destroy | ( | struct xfrm_state * | x | ) | [static] |
xfrm_state.c の 380 行で定義されています。
参照先 xfrm_state::aalg, xfrm_state::calg, xfrm_state::coaddr, del_timer_sync, xfrm_type::destructor, xfrm_state::ealg, xfrm_state::encap, xfrm_state::inner_mode, xfrm_state::inner_mode_iaf, kfree(), xfrm_state::outer_mode, xfrm_state::rtimer, security_xfrm_state_free(), xfrm_state::timer, xfrm_state::type, xfrm_put_mode(), と xfrm_put_type().
参照元 xfrm_state_gc_task().

| static void xfrm_state_gc_task | ( | struct work_struct * | data | ) | [static] |
xfrm_state.c の 403 行で定義されています。
参照先 km_waitq, spin_lock_bh, spin_unlock_bh, tmp, x, と xfrm_state_gc_destroy().
参照元 xfrm_state_init().

| static struct xfrm_state_afinfo * xfrm_state_get_afinfo | ( | unsigned int | family | ) | [static, read] |
xfrm_state.c の 1900 行で定義されています。
参照先 NPROTO, NULL, read_lock, と read_unlock.
参照元 xfrm_get_mode(), xfrm_get_type(), xfrm_init_state(), と xfrm_init_tempsel().
| void __init xfrm_state_init | ( | void | ) |
xfrm_state.c の 2032 行で定義されています。
参照先 INIT_WORK, panic(), xfrm_hash_alloc(), xfrm_state_gc_task(), と xfrm_state_gc_work.
参照元 xfrm_init().

| void xfrm_state_insert | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 960 行で定義されています。
参照先 __xfrm_state_bump_genids(), __xfrm_state_insert(), spin_lock_bh, と spin_unlock_bh.
参照元 ipcomp6_tunnel_attach(), と ipcomp_tunnel_attach().

| static struct xfrm_state_afinfo* xfrm_state_lock_afinfo | ( | unsigned int | family | ) | [static, read] |
xfrm_state.c の 201 行で定義されています。
参照先 NPROTO, NULL, write_lock_bh, と write_unlock_bh.
参照元 xfrm_register_mode(), xfrm_register_type(), xfrm_unregister_mode(), と xfrm_unregister_type().
| struct xfrm_state* xfrm_state_lookup | ( | xfrm_address_t * | daddr, | |
| __be32 | spi, | |||
| u8 | proto, | |||
| unsigned short | family | |||
| ) | [read] |
xfrm_state.c の 1348 行で定義されています。
参照先 __xfrm_state_lookup(), spin_lock_bh, と spin_unlock_bh.
参照元 ah4_err(), ah6_err(), esp4_err(), esp6_err(), ipcomp4_err(), ipcomp6_err(), ipcomp6_tunnel_attach(), ipcomp_tunnel_attach(), pfkey_xfrm_state_lookup(), xfrm_add_sa_expire(), xfrm_alloc_spi(), xfrm_get_ae(), xfrm_input(), xfrm_new_ae(), と xfrm_user_state_lookup().

| struct xfrm_state* xfrm_state_lookup_byaddr | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| u8 | proto, | |||
| unsigned short | family | |||
| ) | [read] |
xfrm_state.c の 1361 行で定義されています。
参照先 __xfrm_state_lookup_byaddr(), spin_lock_bh, と spin_unlock_bh.
参照元 xfrm6_input_addr(), と xfrm_user_state_lookup().

| int xfrm_state_mtu | ( | struct xfrm_state * | x, | |
| int | mtu | |||
| ) |
| static void xfrm_state_put_afinfo | ( | struct xfrm_state_afinfo * | afinfo | ) | [static] |
xfrm_state.c の 1912 行で定義されています。
参照先 read_unlock.
参照元 xfrm_get_mode(), xfrm_get_type(), xfrm_init_state(), と xfrm_init_tempsel().
| int xfrm_state_register_afinfo | ( | struct xfrm_state_afinfo * | afinfo | ) |
xfrm_state.c の 1864 行で定義されています。
参照先 EAFNOSUPPORT, EINVAL, ENOBUFS, xfrm_state_afinfo::family, NPROTO, NULL, write_lock_bh, と write_unlock_bh.
参照元 xfrm4_state_init(), と xfrm6_state_init().
| static void xfrm_state_unlock_afinfo | ( | struct xfrm_state_afinfo * | afinfo | ) | [static] |
xfrm_state.c の 213 行で定義されています。
参照先 write_unlock_bh.
参照元 xfrm_register_mode(), xfrm_register_type(), xfrm_unregister_mode(), と xfrm_unregister_type().
| int xfrm_state_unregister_afinfo | ( | struct xfrm_state_afinfo * | afinfo | ) |
xfrm_state.c の 1881 行で定義されています。
参照先 EAFNOSUPPORT, EINVAL, xfrm_state_afinfo::family, NPROTO, NULL, write_lock_bh, と write_unlock_bh.
参照元 xfrm6_state_fini().
| int xfrm_state_update | ( | struct xfrm_state * | x | ) |
xfrm_state.c の 1258 行で定義されています。
参照先 __xfrm_state_insert(), __xfrm_state_locate(), xfrm_state::coaddr, xfrm_state::curlft, xfrm_state::dying, EEXIST, EINVAL, xfrm_state::encap, ESRCH, xfrm_state::family, HZ, xfrm_state::id, IPSEC_PROTO_ANY, jiffies, xfrm_state::km, xfrm_state::lft, xfrm_state::lock, memcmp, memcpy, mod_timer(), NULL, out, xfrm_state::props, xfrm_id::proto, xfrm_state::sel, spin_lock_bh, spin_unlock_bh, xfrm_state::state, xfrm_state::timer, xfrm_lifetime_cur::use_time, xfrm_id_proto_match(), XFRM_STATE_ACQ, xfrm_state_check_expire(), xfrm_state_delete(), xfrm_state_kern(), xfrm_state_put(), と XFRM_STATE_VALID.
参照元 pfkey_add(), と xfrm_add_sa().

| int xfrm_state_walk | ( | u8 | proto, | |
| int(*)(struct xfrm_state *, int, void *) | func, | |||
| void * | data | |||
| ) |
xfrm_state.c の 1524 行で定義されています。
参照先 count, ENOENT, func, xfrm_state::id, last, NULL, out, xfrm_id::proto, spin_lock_bh, spin_unlock_bh, と xfrm_id_proto_match().
参照元 pfkey_dump(), と xfrm_dump_sa().

| struct xfrm_state* xfrm_stateonly_find | ( | xfrm_address_t * | daddr, | |
| xfrm_address_t * | saddr, | |||
| unsigned short | family, | |||
| u8 | mode, | |||
| u8 | proto, | |||
| u32 | reqid | |||
| ) | [read] |
xfrm_state.c の 879 行で定義されています。
参照先 NULL, spin_lock, spin_unlock, xfrm_dst_hash(), xfrm_state_addr_check(), xfrm_state_hold(), XFRM_STATE_VALID, と XFRM_STATE_WILDRECV.

| static void xfrm_timer_handler | ( | unsigned long | data | ) | [static] |
xfrm_state.c の 428 行で定義されています。
参照先 __xfrm_state_delete(), xfrm_lifetime_cur::add_time, xfrm_state::curlft, current, xfrm_state::dying, err, get_seconds(), xfrm_lifetime_cfg::hard_add_expires_seconds, xfrm_lifetime_cfg::hard_use_expires_seconds, xfrm_state::id, jiffies, xfrm_state::km, km_state_expired(), km_waitq, xfrm_state::lft, xfrm_state::lock, make_jiffies(), mod_timer(), next(), now, out, xfrm_lifetime_cfg::soft_add_expires_seconds, xfrm_lifetime_cfg::soft_use_expires_seconds, xfrm_id::spi, spin_lock, spin_unlock, xfrm_state::state, xfrm_state::timer, xfrm_lifetime_cur::use_time, warn, x, xfrm_audit_state_delete, XFRM_STATE_ACQ, XFRM_STATE_DEAD, と XFRM_STATE_EXPIRED.
参照元 xfrm_state_alloc().

| int xfrm_unregister_km | ( | struct xfrm_mgr * | km | ) |
xfrm_state.c の 1855 行で定義されています。
参照先 xfrm_mgr::list, list_del(), write_lock_bh, と write_unlock_bh.
参照元 ipsec_pfkey_exit(), と xfrm_user_exit().

| int xfrm_unregister_mode | ( | struct xfrm_mode * | mode, | |
| int | family | |||
| ) |
xfrm_state.c の 321 行で定義されています。
参照先 xfrm_mode::afinfo, EAFNOSUPPORT, EINVAL, xfrm_mode::encap, ENOENT, err, xfrm_state_afinfo::mode_map, module_put(), NULL, xfrm_state_afinfo::owner, XFRM_MODE_MAX, xfrm_state_lock_afinfo(), と xfrm_state_unlock_afinfo().
参照元 xfrm4_beet_exit(), xfrm4_mode_tunnel_exit(), xfrm4_transport_exit(), xfrm6_beet_exit(), xfrm6_mode_tunnel_exit(), xfrm6_ro_exit(), と xfrm6_transport_exit().

| int xfrm_unregister_type | ( | const struct xfrm_type * | type, | |
| unsigned short | family | |||
| ) |
xfrm_state.c の 238 行で定義されています。
参照先 EAFNOSUPPORT, ENOENT, err, NULL, xfrm_type::proto, xfrm_state_afinfo::type_map, xfrm_state_lock_afinfo(), と xfrm_state_unlock_afinfo().
参照元 ah4_fini(), ah4_init(), ah6_fini(), ah6_init(), esp4_fini(), esp4_init(), esp6_fini(), esp6_init(), ipcomp4_fini(), ipcomp4_init(), ipcomp6_fini(), ipcomp6_init(), ipip_fini(), ipip_init(), mip6_fini(), mip6_init(), xfrm6_tunnel_fini(), と xfrm6_tunnel_init().

xfrm_state.c の 1806 行で定義されています。
参照先 xfrm_mgr::compile_policy, copy_from_user, EFAULT, EINVAL, EMSGSIZE, ENOMEM, GFP_KERNEL, kfree(), kmalloc(), list, NULL, out, PAGE_SIZE, read_lock, read_unlock, u8, xfrm_pol_put(), と xfrm_sk_policy_insert().

unsigned int xfrm_state_hashmax __read_mostly = XFRM_AE_ETIME [read] |
xfrm_state.c の 30 行で定義されています。
xfrm_state.c の 27 行で定義されています。
参照元 xfrm_aevent_state_notify(), xfrm_alloc_userspi(), xfrm_exp_policy_notify(), xfrm_exp_state_notify(), xfrm_get_ae(), xfrm_get_policy(), xfrm_get_sa(), xfrm_get_sadinfo(), xfrm_get_spdinfo(), xfrm_notify_policy(), xfrm_notify_policy_flush(), xfrm_notify_sa(), xfrm_notify_sa_flush(), xfrm_send_acquire(), xfrm_send_report(), xfrm_user_exit(), xfrm_user_init(), と xfrm_user_rcv_msg().
struct xfrm_state_afinfo* xfrm_state_afinfo[NPROTO] [static] |
xfrm_state.c の 190 行で定義されています。
struct work_struct xfrm_state_gc_work [static] |
unsigned int xfrm_state_genid [static] |
unsigned int xfrm_state_num [static] |
xfrm_state.c の 58 行で定義されています。
参照元 __find_acq_core(), __xfrm_state_delete(), __xfrm_state_insert(), xfrm_hash_grow_check(), xfrm_sad_getinfo(), と xfrm_state_find().
1.5.4