nf_conntrack_compat.h

来自「LINUX 2.6.17.4的源码」· C头文件 代码 · 共 109 行

H
109
字号
#ifndef _NF_CONNTRACK_COMPAT_H#define _NF_CONNTRACK_COMPAT_H#ifdef __KERNEL__#if defined(CONFIG_IP_NF_CONNTRACK) || defined(CONFIG_IP_NF_CONNTRACK_MODULE)#include <linux/netfilter_ipv4/ip_conntrack.h>#ifdef CONFIG_IP_NF_CONNTRACK_MARKstatic inline u_int32_t *nf_ct_get_mark(const struct sk_buff *skb,					u_int32_t *ctinfo){	struct ip_conntrack *ct = ip_conntrack_get(skb, ctinfo);	if (ct)		return &ct->mark;	else		return NULL;}#endif /* CONFIG_IP_NF_CONNTRACK_MARK */#ifdef CONFIG_IP_NF_CT_ACCTstatic inline struct ip_conntrack_counter *nf_ct_get_counters(const struct sk_buff *skb){	enum ip_conntrack_info ctinfo;	struct ip_conntrack *ct = ip_conntrack_get(skb, &ctinfo);	if (ct)		return ct->counters;	else		return NULL;}#endif /* CONFIG_IP_NF_CT_ACCT */static inline int nf_ct_is_untracked(const struct sk_buff *skb){	return (skb->nfct == &ip_conntrack_untracked.ct_general);}static inline void nf_ct_untrack(struct sk_buff *skb){	skb->nfct = &ip_conntrack_untracked.ct_general;}static inline int nf_ct_get_ctinfo(const struct sk_buff *skb,				   enum ip_conntrack_info *ctinfo){	struct ip_conntrack *ct = ip_conntrack_get(skb, ctinfo);	return (ct != NULL);}#else /* CONFIG_IP_NF_CONNTRACK */#include <net/netfilter/ipv4/nf_conntrack_ipv4.h>#include <net/netfilter/nf_conntrack.h>#ifdef CONFIG_NF_CONNTRACK_MARKstatic inline u_int32_t *nf_ct_get_mark(const struct sk_buff *skb,					u_int32_t *ctinfo){	struct nf_conn *ct = nf_ct_get(skb, ctinfo);	if (ct)		return &ct->mark;	else		return NULL;}#endif /* CONFIG_NF_CONNTRACK_MARK */#ifdef CONFIG_NF_CT_ACCTstatic inline struct ip_conntrack_counter *nf_ct_get_counters(const struct sk_buff *skb){	enum ip_conntrack_info ctinfo;	struct nf_conn *ct = nf_ct_get(skb, &ctinfo);	if (ct)		return ct->counters;	else		return NULL;}#endif /* CONFIG_NF_CT_ACCT */static inline int nf_ct_is_untracked(const struct sk_buff *skb){	return (skb->nfct == &nf_conntrack_untracked.ct_general);}static inline void nf_ct_untrack(struct sk_buff *skb){	skb->nfct = &nf_conntrack_untracked.ct_general;}static inline int nf_ct_get_ctinfo(const struct sk_buff *skb,				   enum ip_conntrack_info *ctinfo){	struct nf_conn *ct = nf_ct_get(skb, ctinfo);	return (ct != NULL);}#endif /* CONFIG_IP_NF_CONNTRACK */#endif /* __KERNEL__ */#endif /* _NF_CONNTRACK_COMPAT_H */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?