Lines Matching refs:ioe

4122 		struct pfioc_trans_e    *ioe;  in pfioctl_ioc_trans()  local
4126 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4130 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4132 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4133 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4135 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4139 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4140 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4145 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4148 &ioe->ticket, NULL, 0))) { in pfioctl_ioc_trans()
4150 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4155 if ((error = pf_begin_rules(&ioe->ticket, in pfioctl_ioc_trans()
4156 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4158 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4163 if (copyout(ioe, buf, sizeof(*ioe))) { in pfioctl_ioc_trans()
4165 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4171 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4176 struct pfioc_trans_e *ioe; in pfioctl_ioc_trans() local
4180 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4184 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4186 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4187 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4189 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4193 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4194 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4199 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4202 ioe->ticket, NULL, 0))) { in pfioctl_ioc_trans()
4204 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4209 if ((error = pf_rollback_rules(ioe->ticket, in pfioctl_ioc_trans()
4210 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4212 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4219 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4224 struct pfioc_trans_e *ioe; in pfioctl_ioc_trans() local
4229 if (esize != sizeof(*ioe)) { in pfioctl_ioc_trans()
4233 ioe = kalloc_type(struct pfioc_trans_e, Z_WAITOK); in pfioctl_ioc_trans()
4236 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4237 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4239 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4243 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4244 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4248 rs = pf_find_ruleset(ioe->anchor); in pfioctl_ioc_trans()
4249 if (rs == NULL || !rs->topen || ioe->ticket != in pfioctl_ioc_trans()
4252 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4258 if (ioe->rs_num < 0 || ioe->rs_num >= in pfioctl_ioc_trans()
4261 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4265 rs = pf_find_ruleset(ioe->anchor); in pfioctl_ioc_trans()
4267 !rs->rules[ioe->rs_num].inactive.open || in pfioctl_ioc_trans()
4268 rs->rules[ioe->rs_num].inactive.ticket != in pfioctl_ioc_trans()
4269 ioe->ticket) { in pfioctl_ioc_trans()
4271 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4280 for (i = 0; i < size; i++, buf += sizeof(*ioe)) { in pfioctl_ioc_trans()
4281 if (copyin(buf, ioe, sizeof(*ioe))) { in pfioctl_ioc_trans()
4283 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4287 ioe->anchor[sizeof(ioe->anchor) - 1] = '\0'; in pfioctl_ioc_trans()
4288 switch (ioe->rs_num) { in pfioctl_ioc_trans()
4293 strlcpy(table->pfrt_anchor, ioe->anchor, in pfioctl_ioc_trans()
4295 if ((error = pfr_ina_commit(table, ioe->ticket, in pfioctl_ioc_trans()
4298 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4303 if ((error = pf_commit_rules(ioe->ticket, in pfioctl_ioc_trans()
4304 ioe->rs_num, ioe->anchor))) { in pfioctl_ioc_trans()
4306 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()
4313 kfree_type(struct pfioc_trans_e, ioe); in pfioctl_ioc_trans()