Lines Matching refs:super
1542 exclude_supersets(struct pf_rule *super, struct pf_rule *sub) in exclude_supersets() argument
1544 if (super->ifname[0] == '\0') in exclude_supersets()
1546 if (super->direction == PF_INOUT) in exclude_supersets()
1548 if ((super->proto == 0 || super->proto == sub->proto) && in exclude_supersets()
1549 super->flags == 0 && super->flagset == 0 && (sub->flags || in exclude_supersets()
1551 sub->flags = super->flags; in exclude_supersets()
1552 sub->flagset = super->flagset; in exclude_supersets()
1554 if (super->proto == 0) in exclude_supersets()
1557 if (super->src.port_op == 0) { in exclude_supersets()
1562 if (super->dst.port_op == 0) { in exclude_supersets()
1568 if (super->src.addr.type == PF_ADDR_ADDRMASK && !super->src.neg && in exclude_supersets()
1569 !sub->src.neg && super->src.addr.v.a.mask.addr32[0] == 0 && in exclude_supersets()
1570 super->src.addr.v.a.mask.addr32[1] == 0 && in exclude_supersets()
1571 super->src.addr.v.a.mask.addr32[2] == 0 && in exclude_supersets()
1572 super->src.addr.v.a.mask.addr32[3] == 0) in exclude_supersets()
1574 else if (super->src.addr.type == PF_ADDR_ADDRMASK && in exclude_supersets()
1576 super->src.neg == sub->src.neg && in exclude_supersets()
1577 super->af == sub->af && in exclude_supersets()
1578 unmask(&super->src.addr.v.a.mask, super->af) < in exclude_supersets()
1580 super->src.addr.v.a.addr.addr32[0] == in exclude_supersets()
1582 super->src.addr.v.a.mask.addr32[0]) && in exclude_supersets()
1583 super->src.addr.v.a.addr.addr32[1] == in exclude_supersets()
1585 super->src.addr.v.a.mask.addr32[1]) && in exclude_supersets()
1586 super->src.addr.v.a.addr.addr32[2] == in exclude_supersets()
1588 super->src.addr.v.a.mask.addr32[2]) && in exclude_supersets()
1589 super->src.addr.v.a.addr.addr32[3] == in exclude_supersets()
1591 super->src.addr.v.a.mask.addr32[3])) { in exclude_supersets()
1593 memcpy(&sub->src.addr, &super->src.addr, sizeof(sub->src.addr)); in exclude_supersets()
1596 if (super->dst.addr.type == PF_ADDR_ADDRMASK && !super->dst.neg && in exclude_supersets()
1597 !sub->dst.neg && super->dst.addr.v.a.mask.addr32[0] == 0 && in exclude_supersets()
1598 super->dst.addr.v.a.mask.addr32[1] == 0 && in exclude_supersets()
1599 super->dst.addr.v.a.mask.addr32[2] == 0 && in exclude_supersets()
1600 super->dst.addr.v.a.mask.addr32[3] == 0) in exclude_supersets()
1602 else if (super->dst.addr.type == PF_ADDR_ADDRMASK && in exclude_supersets()
1604 super->dst.neg == sub->dst.neg && in exclude_supersets()
1605 super->af == sub->af && in exclude_supersets()
1606 unmask(&super->dst.addr.v.a.mask, super->af) < in exclude_supersets()
1608 super->dst.addr.v.a.addr.addr32[0] == in exclude_supersets()
1610 super->dst.addr.v.a.mask.addr32[0]) && in exclude_supersets()
1611 super->dst.addr.v.a.addr.addr32[1] == in exclude_supersets()
1613 super->dst.addr.v.a.mask.addr32[1]) && in exclude_supersets()
1614 super->dst.addr.v.a.addr.addr32[2] == in exclude_supersets()
1616 super->dst.addr.v.a.mask.addr32[2]) && in exclude_supersets()
1617 super->dst.addr.v.a.addr.addr32[3] == in exclude_supersets()
1619 super->dst.addr.v.a.mask.addr32[3])) { in exclude_supersets()
1621 memcpy(&sub->dst.addr, &super->dst.addr, sizeof(sub->dst.addr)); in exclude_supersets()
1624 if (super->af == 0) in exclude_supersets()