Lines Matching refs:ioe

4082 		struct pfioc_trans_e    *ioe;  in pfioctl_ioc_trans()  local
4086 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4090 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4092 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4093 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4095 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4099 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4100 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4105 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4108 &ioe->ticket, NULL, 0))) { in pfioctl_ioc_trans()
4110 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4115 if ((error = pf_begin_rules(&ioe->ticket, in pfioctl_ioc_trans()
4116 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4118 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4123 if (copyout(ioe, buf, sizeof(*ioe))) { in pfioctl_ioc_trans()
4125 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4131 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4136 struct pfioc_trans_e *ioe; in pfioctl_ioc_trans() local
4140 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4144 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4146 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4147 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4149 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4153 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4154 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4159 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4162 ioe->ticket, NULL, 0))) { in pfioctl_ioc_trans()
4164 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4169 if ((error = pf_rollback_rules(ioe->ticket, in pfioctl_ioc_trans()
4170 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4172 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4179 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4184 struct pfioc_trans_e *ioe; in pfioctl_ioc_trans() local
4190 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4194 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4197 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4198 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4200 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4204 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4205 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4209 rs = pf_find_ruleset(ioe->anchor); in pfioctl_ioc_trans()
4210 if (rs == NULL || !rs->topen || ioe->ticket != in pfioctl_ioc_trans()
4213 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4219 if (ioe->rs_num < 0 || ioe->rs_num >= in pfioctl_ioc_trans()
4222 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4226 rs = pf_find_ruleset(ioe->anchor); in pfioctl_ioc_trans()
4228 !rs->rules[ioe->rs_num].inactive.open || in pfioctl_ioc_trans()
4229 rs->rules[ioe->rs_num].inactive.ticket != in pfioctl_ioc_trans()
4230 ioe->ticket) { in pfioctl_ioc_trans()
4232 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4241 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4242 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4244 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4248 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4249 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4254 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4256 if ((error = pfr_ina_commit(table, ioe->ticket, in pfioctl_ioc_trans()
4259 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4264 if ((error = pf_commit_rules(ioe->ticket, in pfioctl_ioc_trans()
4265 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4267 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4274 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()