Lines Matching refs:ruleset

636 	/* destroy main ruleset */
696 struct pf_ruleset *ruleset;
700 ruleset = pf_find_ruleset(anchor);
701 if (ruleset == NULL)
708 ruleset->rules[rs_num].active.ticket)
711 rule = TAILQ_LAST(ruleset->rules[rs_num].active.ptr,
714 rule = TAILQ_FIRST(ruleset->rules[rs_num].active.ptr);
717 ruleset->rules[rs_num].inactive.ticket)
720 rule = TAILQ_LAST(ruleset->rules[rs_num].inactive.ptr,
723 rule = TAILQ_FIRST(ruleset->rules[rs_num].inactive.ptr);
1312 /* Calculate checksum for the main ruleset */
1966 struct pf_ruleset *ruleset = &pf_main_ruleset;
1970 ruleset->rules[PF_RULESET_FILTER].active.ptr, entries) {
2798 pf_delete_rule_from_ruleset(struct pf_ruleset *ruleset, int rs_num,
2806 pf_rm_rule(ruleset->rules[rs_num].active.ptr, rule);
2807 if (ruleset->rules[rs_num].active.rcount-- == 0)
2809 r = TAILQ_FIRST(ruleset->rules[rs_num].active.ptr);
2819 pf_ruleset_cleanup(struct pf_ruleset *ruleset, int rs)
2821 pf_calc_skip_steps(ruleset->rules[rs].active.ptr);
2822 ruleset->rules[rs].active.ticket =
2823 ++ruleset->rules[rs].inactive.ticket;
2833 struct pf_ruleset *ruleset;
2840 if ((ruleset = pf_find_ruleset_with_owner(pr->anchor,
2845 rule = TAILQ_FIRST(ruleset->rules[i].active.ptr);
2858 if (rule->anchor && (ruleset != &pf_main_ruleset) &&
2859 ((strcmp(ruleset->anchor->owner, "")) == 0) &&
2860 ((ruleset->rules[i].active.rcount - 1) == 0)) {
2861 /* set rule & ruleset to parent and repeat */
2863 struct pf_ruleset *delete_ruleset = ruleset;
2865 #define parent_ruleset ruleset->anchor->parent->ruleset
2866 if (ruleset->anchor->parent == NULL)
2867 ruleset = &pf_main_ruleset;
2869 ruleset = &parent_ruleset;
2871 rule = TAILQ_FIRST(ruleset->rules[i].active.ptr);
2909 pf_delete_rule_from_ruleset(ruleset, i,
2911 pf_ruleset_cleanup(ruleset, i);
2924 struct pf_ruleset *ruleset;
2930 ruleset = &pf_main_ruleset;
2944 if (rule->anchor->ruleset.rules[rs].active.rcount > 0) {
2946 pf_ruleset_cleanup(ruleset, rs);
2950 ruleset =
2951 &rule->anchor->ruleset;
2952 rule = TAILQ_FIRST(ruleset->rules[rs].active.ptr);
2958 pf_delete_rule_from_ruleset(ruleset, rs, rule);
2969 pf_delete_rule_from_ruleset(ruleset,
2977 pf_ruleset_cleanup(ruleset, rs);
2980 if (ruleset != &pf_main_ruleset)
2981 pf_deleterule_anchor_step_out(&ruleset,
2992 struct pf_ruleset *ruleset = *ruleset_ptr;
2996 struct pf_ruleset *rs_copy = ruleset;
2997 ruleset = ruleset->anchor->parent?
2998 &ruleset->anchor->parent->ruleset:&pf_main_ruleset;
3000 rule = TAILQ_FIRST(ruleset->rules[rs].active.ptr);
3005 if (rule->anchor->ruleset.rules[rs].active.rcount > 0)
3008 *ruleset_ptr = ruleset;
3021 struct pf_ruleset *ruleset) {
3070 if (pf_tbladdr_setup(ruleset, &rule->src.addr))
3072 if (pf_tbladdr_setup(ruleset, &rule->dst.addr))
3074 if (pf_anchor_setup(rule, ruleset, pr->anchor_call))
3077 if (pf_tbladdr_setup(ruleset, &apa->addr))
3081 if ((rule->overload_tbl = pfr_attach_table(ruleset,
3115 struct pf_ruleset *ruleset;
3121 ruleset = pf_find_ruleset(pr->anchor);
3122 if (ruleset == NULL) {
3135 if (pr->ticket != ruleset->rules[rs_num].inactive.ticket) {
3163 tail = TAILQ_LAST(ruleset->rules[rs_num].inactive.ptr,
3170 if ((error = pf_rule_setup(pr, rule, ruleset)))
3173 TAILQ_INSERT_TAIL(ruleset->rules[rs_num].inactive.ptr,
3175 ruleset->rules[rs_num].inactive.rcount++;
3182 struct pf_ruleset *ruleset;
3188 ruleset = pf_find_ruleset(pr->anchor);
3189 if (ruleset == NULL) {
3198 tail = TAILQ_LAST(ruleset->rules[rs_num].active.ptr,
3204 pr->ticket = ruleset->rules[rs_num].active.ticket;
3209 struct pf_ruleset *ruleset;
3215 ruleset = pf_find_ruleset(pr->anchor);
3216 if (ruleset == NULL) {
3225 if (pr->ticket != ruleset->rules[rs_num].active.ticket) {
3229 rule = TAILQ_FIRST(ruleset->rules[rs_num].active.ptr);
3237 if (pf_anchor_copyout(ruleset, rule, pr)) {
3264 struct pf_ruleset *ruleset;
3284 ruleset = pf_find_ruleset(pcr->anchor);
3285 if (ruleset == NULL) {
3296 pcr->ticket = ++ruleset->rules[rs_num].active.ticket;
3300 ruleset->rules[rs_num].active.ticket) {
3381 if (pf_tbladdr_setup(ruleset, &newrule->src.addr))
3383 if (pf_tbladdr_setup(ruleset, &newrule->dst.addr))
3385 if (pf_anchor_setup(newrule, ruleset, pcr->anchor_call))
3388 if (pf_tbladdr_setup(ruleset, &pa->addr))
3393 ruleset, newrule->overload_tblname)) ==
3423 ruleset->rules[rs_num].active.ptr);
3426 ruleset->rules[rs_num].active.ptr, pf_rulequeue);
3429 ruleset->rules[rs_num].active.ptr);
3441 pf_rm_rule(ruleset->rules[rs_num].active.ptr, oldrule);
3442 ruleset->rules[rs_num].active.rcount--;
3446 ruleset->rules[rs_num].active.ptr,
3453 ruleset->rules[rs_num].active.ptr,
3455 ruleset->rules[rs_num].active.rcount++;
3460 ruleset->rules[rs_num].active.ptr, entries)
3463 ruleset->rules[rs_num].active.ticket++;
3465 pf_calc_skip_steps(ruleset->rules[rs_num].active.ptr);
3466 pf_remove_if_empty_ruleset(ruleset);
3472 struct pf_ruleset *ruleset;
3481 if ((ruleset = pf_find_ruleset_with_owner(pr->anchor,
3497 r = TAILQ_FIRST(ruleset->rules[rs_num].active.ptr);
3537 r = TAILQ_FIRST(ruleset->rules[rs_num].active.ptr);
3542 TAILQ_LAST(ruleset->rules[rs_num].active.ptr,
3551 if ((error = pf_rule_setup(pr, rule, ruleset)))
3563 TAILQ_INSERT_TAIL(ruleset->rules[rs_num].active.ptr,
3565 ruleset->rules[rs_num].active.rcount++;
3567 /* Calculate checksum for the main ruleset */
3568 if (ruleset == &pf_main_ruleset)
3569 error = pf_setup_pfsync_matching(ruleset);
3571 pf_ruleset_cleanup(ruleset, rs_num);
4158 struct pf_ruleset *ruleset;
4173 ruleset = pf_find_ruleset(pca->anchor);
4174 if (ruleset == NULL) {
4217 pf_tbladdr_setup(ruleset, &newpa->addr)) {
4283 struct pf_ruleset *ruleset;
4288 if ((ruleset = pf_find_ruleset(pr->path)) == NULL) {
4293 if (ruleset->anchor == NULL) {
4300 &ruleset->anchor->children)
4307 struct pf_ruleset *ruleset;
4312 if ((ruleset = pf_find_ruleset(pr->path)) == NULL) {
4317 if (ruleset->anchor == NULL) {
4327 &ruleset->anchor->children)