cregit-Linux how code gets into the kernel

Release 4.7 include/net/netfilter/nf_conntrack_zones.h

#ifndef _NF_CONNTRACK_ZONES_H

#define _NF_CONNTRACK_ZONES_H

#include <linux/netfilter/nf_conntrack_zones_common.h>

#if IS_ENABLED(CONFIG_NF_CONNTRACK)
#include <net/netfilter/nf_conntrack_extend.h>


static inline const struct nf_conntrack_zone * nf_ct_zone(const struct nf_conn *ct) { const struct nf_conntrack_zone *nf_ct_zone = NULL; #ifdef CONFIG_NF_CONNTRACK_ZONES nf_ct_zone = nf_ct_ext_find(ct, NF_CT_EXT_ZONE); #endif return nf_ct_zone ? nf_ct_zone : &nf_ct_zone_dflt; }

Contributors

PersonTokensPropCommitsCommitProp
patrick mchardypatrick mchardy2656.52%150.00%
daniel borkmanndaniel borkmann2043.48%150.00%
Total46100.00%2100.00%


static inline const struct nf_conntrack_zone * nf_ct_zone_init(struct nf_conntrack_zone *zone, u16 id, u8 dir, u8 flags) { zone->id = id; zone->flags = flags; zone->dir = dir; return zone; }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann45100.00%2100.00%
Total45100.00%2100.00%


static inline const struct nf_conntrack_zone * nf_ct_zone_tmpl(const struct nf_conn *tmpl, const struct sk_buff *skb, struct nf_conntrack_zone *tmp) { const struct nf_conntrack_zone *zone; if (!tmpl) return &nf_ct_zone_dflt; zone = nf_ct_zone(tmpl); if (zone->flags & NF_CT_FLAG_MARK) zone = nf_ct_zone_init(tmp, skb->mark, zone->dir, 0); return zone; }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann7698.70%266.67%
patrick mchardypatrick mchardy11.30%133.33%
Total77100.00%3100.00%


static inline int nf_ct_zone_add(struct nf_conn *ct, gfp_t flags, const struct nf_conntrack_zone *info) { #ifdef CONFIG_NF_CONNTRACK_ZONES struct nf_conntrack_zone *nf_ct_zone; nf_ct_zone = nf_ct_ext_add(ct, NF_CT_EXT_ZONE, flags); if (!nf_ct_zone) return -ENOMEM; nf_ct_zone_init(nf_ct_zone, info->id, info->dir, info->flags); #endif return 0; }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann7098.59%266.67%
patrick mchardypatrick mchardy11.41%133.33%
Total71100.00%3100.00%


static inline bool nf_ct_zone_matches_dir(const struct nf_conntrack_zone *zone, enum ip_conntrack_dir dir) { return zone->dir & (1 << dir); }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann28100.00%1100.00%
Total28100.00%1100.00%


static inline u16 nf_ct_zone_id(const struct nf_conntrack_zone *zone, enum ip_conntrack_dir dir) { return nf_ct_zone_matches_dir(zone, dir) ? zone->id : NF_CT_DEFAULT_ZONE_ID; }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann31100.00%1100.00%
Total31100.00%1100.00%


static inline bool nf_ct_zone_equal(const struct nf_conn *a, const struct nf_conntrack_zone *b, enum ip_conntrack_dir dir) { return nf_ct_zone_id(nf_ct_zone(a), dir) == nf_ct_zone_id(b, dir); }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann41100.00%2100.00%
Total41100.00%2100.00%


static inline bool nf_ct_zone_equal_any(const struct nf_conn *a, const struct nf_conntrack_zone *b) { return nf_ct_zone(a)->id == b->id; }

Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann2890.32%266.67%
patrick mchardypatrick mchardy39.68%133.33%
Total31100.00%3100.00%

#endif /* IS_ENABLED(CONFIG_NF_CONNTRACK) */ #endif /* _NF_CONNTRACK_ZONES_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
daniel borkmanndaniel borkmann35289.34%466.67%
patrick mchardypatrick mchardy4210.66%233.33%
Total394100.00%6100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
{% endraw %}