pfctl_anchor
struct pfctl_anchor *anchor;
struct pfctl_anchor *anchor;
RB_HEAD(pfctl_anchor_global, pfctl_anchor);
RB_HEAD(pfctl_anchor_node, pfctl_anchor);
RB_ENTRY(pfctl_anchor) entry_global;
RB_ENTRY(pfctl_anchor) entry_node;
struct pfctl_anchor *parent;
RB_PROTOTYPE(pfctl_anchor_global, pfctl_anchor, entry_global,
RB_PROTOTYPE(pfctl_anchor_node, pfctl_anchor, entry_node,
struct pfctl_anchor;
struct pfctl_anchor *, struct pfctl_anchor *);
struct pfctl_anchor *a, struct pfctl_anchor *alast)
static struct pfctl_anchor *
struct pfctl_anchor *key, *found;
key = (struct pfctl_anchor *)rs_malloc(sizeof(*key));
struct pfctl_anchor *anchor;
struct pfctl_anchor *anchor = NULL, *dup, *parent = NULL;
anchor = (struct pfctl_anchor *)rs_malloc(sizeof(*anchor));
struct pfctl_anchor *parent;
extern struct pfctl_anchor pf_main_anchor;
static __inline int pf_anchor_compare(struct pfctl_anchor *,
struct pfctl_anchor *);
static struct pfctl_anchor *pf_find_anchor(const char *);
RB_GENERATE(pfctl_anchor_global, pfctl_anchor, entry_global,
RB_GENERATE(pfctl_anchor_node, pfctl_anchor, entry_node, pf_anchor_compare);
pf_anchor_compare(struct pfctl_anchor *a, struct pfctl_anchor *b)
int pfctl_ruleset_trans(struct pfctl *, char *, struct pfctl_anchor *, bool);
struct pfctl_anchor pf_main_anchor;
pfctl_ruleset_trans(struct pfctl *pf, char *path, struct pfctl_anchor *a, bool do_eth)
pfctl_load_tables(struct pfctl *pf, char *path, struct pfctl_anchor *a,
struct pfctl_anchor *astack[PFCTL_ANCHOR_STACK_DEPTH];
struct pfctl_anchor *anchor, *alast;