pf_krule
struct pf_krule *rule;
struct pf_krule *anchor;
struct pf_krule *nat_rule;
struct pf_krule *nr;
struct pf_krule *tr;
struct pf_krule **rm;
struct pf_krule *a;
struct pf_krule **am;
struct pf_krule *, struct pf_krule *, struct pf_kruleset *,
struct pf_pdesc *, int, struct pf_krule *);
TAILQ_HEAD(pf_krulequeue, pf_krule);
struct pf_krule *related_rule;
LIST_HEAD(allrulelist_head, pf_krule);
VNET_DECLARE(struct pf_krule *, pf_rulemarker);
struct pf_krule *, sa_family_t,
VNET_DECLARE(struct pf_krule, pf_default_rule);
void pf_free_rule(struct pf_krule *);
int pf_match_tag(struct mbuf *, struct pf_krule *, int *, int);
struct mbuf *pf_build_tcp(const struct pf_krule *, sa_family_t,
void pf_send_tcp(const struct pf_krule *, sa_family_t,
int pf_kanchor_setup(struct pf_krule *,
const struct pf_krule *, char *, size_t);
const struct pf_krule *, nvlist_t *);
void pf_remove_kanchor(struct pf_krule *);
struct pf_krule *pf_krule_alloc(void);
int pf_ioctl_addrule(struct pf_krule *, uint32_t,
void pf_krule_free(struct pf_krule *);
void pf_krule_clear_counters(struct pf_krule *);
enum pf_test_status pf_step_into_anchor(struct pf_test_ctx *, struct pf_krule *);
u_short pf_map_addr(sa_family_t, struct pf_krule *,
u_short pf_map_addr_sn(u_int8_t, struct pf_krule *,
int pf_get_transaddr_af(struct pf_krule *,
struct pf_krule *,
void pf_rule_to_actions(struct pf_krule *,
RB_HEAD(pf_krule_global, pf_krule);
RB_PROTOTYPE(pf_krule_global, pf_krule, entry_global, pf_krule_compare);
struct pf_krule *skip[PF_SKIP_COUNT];
TAILQ_ENTRY(pf_krule) entries;
RB_ENTRY(pf_krule) entry_global;
LIST_ENTRY(pf_krule) allrulelist;
struct pf_krule *r;
struct pf_krule *rule;
struct pf_krule *rm, struct pf_krule *am,
struct pf_krule *trigger)
struct pf_krule *r = NULL;
pf_route6(struct pf_krule *r, struct ifnet *oifp,
pf_pdesc_to_dnflow(const struct pf_pdesc *pd, const struct pf_krule *r,
struct pf_krule *r, struct mbuf **m0)
struct pf_krule *r, struct ifnet *ifp, const struct sockaddr *sa,
pf_rule_counters_inc(struct pf_pdesc *pd, struct pf_krule *r, int dir_out,
struct pf_krule *r, struct pf_krule *a, struct pf_krule_slist *match_rules)
struct pf_krule *nr = NULL;
pf_log_matches(struct pf_pdesc *pd, struct pf_krule *rm,
struct pf_krule *am, struct pf_kruleset *ruleset,
struct pf_krule *a = NULL, *r = &V_pf_default_rule;
struct pf_krule *lr;
pf_find_src_node(struct pf_addr *src, struct pf_krule *rule, sa_family_t af,
struct pf_srchash *snhs[PF_SN_MAX], struct pf_krule *rule,
struct pf_krule *r_track = rule;
VNET_DEFINE(struct pf_krule *, pf_rulemarker);
struct pf_krule *rule;
struct pf_krule *rule;
int, sa_family_t, struct pf_krule *, int);
struct pf_krule *r, *r1;
struct pf_krule *, struct mbuf **);
struct pf_kstate *, struct pf_krule *,
static int pf_test_rule(struct pf_krule **, struct pf_kstate **,
struct pf_pdesc *, struct pf_krule **,
static int pf_create_state(struct pf_krule *,
struct pf_krule *cur, *prev, *head[PF_SKIP_COUNT];
static __inline int pf_synproxy_ack(struct pf_krule *, struct pf_pdesc *,
pf_translate_af(struct pf_pdesc *pd, struct pf_krule *r)
static int pf_match_rcvif(struct mbuf *, struct pf_krule *);
struct pf_kstate *, struct pf_krule *,
struct pf_krule *, struct pf_krule_slist *);
static void pf_log_matches(struct pf_pdesc *, struct pf_krule *,
struct pf_krule *, struct pf_kruleset *,
struct pf_srchash *[PF_SN_MAX], struct pf_krule *,
static int pf_route(struct pf_krule *,
static int pf_route6(struct pf_krule *,
pf_build_tcp(const struct pf_krule *r, sa_family_t af,
pf_send_tcp(const struct pf_krule *r, sa_family_t af,
pf_undo_nat(struct pf_krule *nr, struct pf_pdesc *pd, uint16_t bip_sum)
pf_return(struct pf_krule *r, struct pf_krule *nr, struct pf_pdesc *pd,
sa_family_t af, struct pf_krule *r, int rtableid)
pf_match_tag(struct mbuf *m, struct pf_krule *r, int *tag, int mtag)
pf_match_rcvif(struct mbuf *m, struct pf_krule *r)
#define PF_ANCHOR_RULE(f) (struct pf_krule *) \
pf_step_into_anchor(struct pf_test_ctx *ctx, struct pf_krule *r)
pf_rule_to_actions(struct pf_krule *r, struct pf_rule_actions *a)
pf_rule_apply_nat(struct pf_test_ctx *ctx, struct pf_krule *r)
struct pf_krule *r;
struct pf_krule *save_a;
pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm,
struct pf_pdesc *pd, struct pf_krule **am,
struct pf_krule *r = NULL;
pf_create_state(struct pf_krule *r, struct pf_test_ctx *ctx,
pf_synproxy_ack(struct pf_krule *r, struct pf_pdesc *pd, struct pf_kstate **sm,
struct pf_krule *ra = NULL;
struct pf_krule *r = &V_pf_default_rule;
pf_route(struct pf_krule *r, struct ifnet *oifp,
static void pf_hash_rule_rolling(MD5_CTX *, struct pf_krule *);
static void pf_hash_rule(struct pf_krule *);
struct pf_krule *rule;
struct pf_krule *rule;
pf_hash_rule_rolling(MD5_CTX *ctx, struct pf_krule *rule)
VNET_DEFINE(struct pf_krule, pf_default_rule);
static __inline int pf_krule_compare(struct pf_krule *,
struct pf_krule *);
RB_GENERATE(pf_krule_global, pf_krule, entry_global, pf_krule_compare);
pf_hash_rule(struct pf_krule *rule)
pf_krule_compare(struct pf_krule *a, struct pf_krule *b)
struct pf_krule *rule, *old_rule;
struct pf_krule *rule;
struct pf_krule *
struct pf_krule *rule;
rule = malloc(sizeof(struct pf_krule), M_PFRULE, M_WAITOK | M_ZERO);
pf_krule_free(struct pf_krule *rule)
pf_krule_clear_counters(struct pf_krule *rule)
pf_rule_to_krule(const struct pf_rule *rule, struct pf_krule *krule)
struct pf_krule *tail;
pf_rule_checkaf(struct pf_krule *r)
pf_ioctl_addrule(struct pf_krule *rule, uint32_t ticket,
struct pf_krule *tail;
pf_label_match(const struct pf_krule *rule, const char *label)
struct pf_krule *rule;
struct pf_krule *rule = NULL;
struct pf_krule *rule;
struct pf_krule *rule;
struct pf_krule *oldrule = NULL, *newrule = NULL;
struct pf_krule *rule;
pf_unlink_rule_locked(struct pf_krulequeue *rulequeue, struct pf_krule *rule)
pf_unlink_rule(struct pf_krulequeue *rulequeue, struct pf_krule *rule)
pf_free_rule(struct pf_krule *rule)
struct pf_krule *r = NULL;
pf_get_transaddr(struct pf_test_ctx *ctx, struct pf_krule *r,
pf_get_transaddr_af(struct pf_krule *r, struct pf_pdesc *pd)
struct pf_krule *r;
pf_step_into_translation_anchor(int rs_num, struct pf_test_ctx *ctx, struct pf_krule *r)
static struct pf_krule *
pf_get_sport(struct pf_pdesc *pd, struct pf_krule *r, struct pf_addr *naddr,
pf_get_mape_sport(struct pf_pdesc *pd, struct pf_krule *r,
pf_map_addr(sa_family_t saf, struct pf_krule *r, struct pf_addr *saddr,
static struct pf_krule *pf_match_translation(int, struct pf_test_ctx *);
struct pf_krule *);
static int pf_get_sport(struct pf_pdesc *, struct pf_krule *,
pf_map_addr_sn(sa_family_t saf, struct pf_krule *r, struct pf_addr *saddr,
nlattr_add_labels(struct nl_writer *nw, int attrtype, const struct pf_krule *r)
#define _OUT(_field) offsetof(struct pf_krule, _field)
struct pf_krule *rule;
struct pf_krule *rule;
struct pf_krule *r;
struct pf_krule *r;
struct pf_krule *r, *rm = NULL;
struct pf_krule *r, *rm = NULL;
pf_nvrule_to_krule(const nvlist_t *nvl, struct pf_krule *rule)
pf_divert_to_nvdivert(const struct pf_krule *rule)
pf_krule_to_nvrule(const struct pf_krule *rule)
nvlist_t *pf_krule_to_nvrule(const struct pf_krule *);
int pf_nvrule_to_krule(const nvlist_t *, struct pf_krule *);
pf_kanchor_setup(struct pf_krule *r, const struct pf_kruleset *s,
pf_kanchor_copyout(const struct pf_kruleset *rs, const struct pf_krule *r,
pf_kanchor_nvcopyout(const struct pf_kruleset *rs, const struct pf_krule *r,
pf_remove_kanchor(struct pf_krule *r)