diff options
| author | David S. Miller <davem@nuts.ninka.net> | 2003-05-15 07:05:28 -0700 |
|---|---|---|
| committer | David S. Miller <davem@nuts.ninka.net> | 2003-05-15 07:05:28 -0700 |
| commit | f958137c56133dbe9da9f37862169740d0f538ee (patch) | |
| tree | ef23a3eba50505bfb333d98789e7d3773354f778 /include | |
| parent | a7b43a568bac5ac97a89f2efecef3526f2fd0be3 (diff) | |
[NET]: Split out policy flow cache to be a generic facility.
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/flow.h | 12 | ||||
| -rw-r--r-- | include/net/xfrm.h | 1 |
2 files changed, 12 insertions, 1 deletions
diff --git a/include/net/flow.h b/include/net/flow.h index c764d9d159d9..f09d5763ecae 100644 --- a/include/net/flow.h +++ b/include/net/flow.h @@ -75,4 +75,16 @@ struct flowi { #define fl_icmp_code uli_u.icmpt.code #define fl_ipsec_spi uli_u.spi }; + +#define FLOW_DIR_IN 0 +#define FLOW_DIR_OUT 1 +#define FLOW_DIR_FWD 2 + +typedef void (*flow_resolve_t)(struct flowi *key, u16 family, u8 dir, + void **objp, atomic_t **obj_refp); + +extern void *flow_cache_lookup(struct flowi *key, u16 family, u8 dir, + flow_resolve_t resolver); +extern atomic_t flow_cache_genid; + #endif diff --git a/include/net/xfrm.h b/include/net/xfrm.h index f11387b308af..4278f9490551 100644 --- a/include/net/xfrm.h +++ b/include/net/xfrm.h @@ -788,7 +788,6 @@ void xfrm4_policy_init(void); void xfrm6_policy_init(void); struct xfrm_policy *xfrm_policy_alloc(int gfp); extern int xfrm_policy_walk(int (*func)(struct xfrm_policy *, int, int, void*), void *); -struct xfrm_policy *xfrm_policy_lookup(int dir, struct flowi *fl, unsigned short family); int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl); struct xfrm_policy *xfrm_policy_delete(int dir, struct xfrm_selector *sel); struct xfrm_policy *xfrm_policy_byid(int dir, u32 id, int delete); |
