Lines Matching refs:fr

62 void printc(fr)  in printc()  argument
63 frentry_t *fr; in printc()
71 if (fr->fr_v != 4)
73 if ((fr->fr_type != FR_T_IPF) && (fr->fr_type != FR_T_NONE))
75 if ((fr->fr_type == FR_T_IPF) &&
76 ((fr->fr_datype != FRI_NORMAL) || (fr->fr_satype != FRI_NORMAL)))
78 ipf = fr->fr_ipf;
127 addrule(fp, fr);
128 fr->fr_type |= FR_T_BUILTIN;
130 fr->fr_ref = 1;
131 i = sizeof(*fr);
134 for (i /= sizeof(u_long), ulp = (u_long *)fr; i > 0; i--) {
139 fr->fr_type &= ~FR_T_BUILTIN;
150 static void addrule(fp, fr) in addrule() argument
152 frentry_t *fr;
165 bcopy((char *)fr, (char *)f, sizeof(*fr));
166 if (fr->fr_ipf) {
172 bcopy((char *)fr->fr_ipf, (char *)f->fr_ipf,
173 sizeof(*fr->fr_ipf));
200 if (fr->fr_dsize > 0) {
206 i = fr->fr_dsize;
207 ulp = fr->fr_data;
294 void emit(num, dir, v, fr) in emit() argument
297 frentry_t *fr;
310 emitGroup(num, dir, v, fr, g->fg_name, incnt, 0);
318 emitGroup(num, dir, v, fr, g->fg_name, 0, outcnt);
438 static void emitGroup(num, dir, v, fr, group, incount, outcount) in emitGroup() argument
441 frentry_t *fr;
552 ipf = fr->fr_ipf;
589 if (*fr->fr_ifname)
616 fr->fr_tcpfm != 0)
622 if (fr->fr_scmp == FR_INRANGE)
624 else if (fr->fr_scmp == FR_OUTRANGE)
626 else if (fr->fr_scmp != 0)
632 if (fr->fr_dcmp == FR_INRANGE)
634 else if (fr->fr_dcmp == FR_OUTRANGE)
636 else if (fr->fr_dcmp != 0)
642 if (fr->fr_satype == FRI_LOOKUP) {
644 } else if ((fr->fr_smask != 0) ||
645 (fr->fr_flags & FR_NOTSRCIP) != 0)
651 if (fr->fr_datype == FRI_LOOKUP) {
653 } else if ((fr->fr_dmask != 0) ||
654 (fr->fr_flags & FR_NOTDSTIP) != 0)
660 if (fr->fr_optmask != 0)
666 if (fr->fr_secmask != 0)
672 if (fr->fr_authmask != 0)
678 if ((fr->fr_icmpm & 0xff00) != 0)
684 if ((fr->fr_icmpm & 0xff) != 0)
796 printeq(fp, "fin->fin_tcpf", fr->fr_tcpfm,
797 0xff, fr->fr_tcpf);
804 if (fr->fr_scmp == FR_INRANGE) {
807 fr->fr_sport);
809 fr->fr_stop);
812 } else if (fr->fr_scmp == FR_OUTRANGE) {
815 fr->fr_sport);
817 fr->fr_stop);
820 } else if (fr->fr_scmp) {
823 portcmp[fr->fr_scmp], fr->fr_sport);
831 if (fr->fr_dcmp == FR_INRANGE) {
834 fr->fr_dport);
836 fr->fr_dtop);
839 } else if (fr->fr_dcmp == FR_OUTRANGE) {
842 fr->fr_dport);
844 fr->fr_dtop);
847 } else if (fr->fr_dcmp) {
850 portcmp[fr->fr_dcmp], fr->fr_dport);
858 if (fr->fr_satype == FRI_LOOKUP) {
860 } else if ((fr->fr_smask != 0) ||
861 (fr->fr_flags & FR_NOTSRCIP) != 0) {
865 fr->fr_flags & FR_NOTSRCIP,
866 fr->fr_smask, fr->fr_saddr);
873 if (fr->fr_datype == FRI_LOOKUP) {
875 } else if ((fr->fr_dmask != 0) ||
876 (fr->fr_flags & FR_NOTDSTIP) != 0) {
880 fr->fr_flags & FR_NOTDSTIP,
881 fr->fr_dmask, fr->fr_daddr);
890 fr->fr_optmask, 0xffffffff,
891 fr->fr_optbits);
900 fr->fr_secmask, 0xffff,
901 fr->fr_secbits);
910 fr->fr_authmask, 0xffff,
911 fr->fr_authbits);
920 fr->fr_icmpm & 0xff00, 0xffff,
921 fr->fr_icmp & 0xff00);
930 fr->fr_icmpm & 0xff, 0xffff,
931 fr->fr_icmp & 0xff);
940 if (fr->fr_flags & FR_QUICK) {
942 fr->fr_flags & FR_INQUE ? "in" : "out",
943 fr->fr_group, num);
946 fr->fr_flags & FR_INQUE ? "in" : "out",
947 fr->fr_group, num);
995 frentry_t *fr, *fr1; local
1033 for (fr = fr1->fr_next; fr; fr = fr->fr_next) {
1034 if (!dir && !(fr->fr_flags & FR_INQUE))
1036 if (dir && !(fr->fr_flags & FR_OUTQUE))
1040 !strcmp(fr1->fr_ifname, fr->fr_ifname)) {
1046 if ((n & 0x0002) && (fr1->fr_v == fr->fr_v)) {
1053 (fr->fr_type == fr1->fr_type) &&
1054 (fr->fr_type == FR_T_IPF) &&
1055 (fr1->fr_mip.fi_flx == fr->fr_mip.fi_flx) &&
1056 (fr1->fr_ip.fi_flx == fr->fr_ip.fi_flx)) {
1063 (fr->fr_type == fr1->fr_type) &&
1064 (fr->fr_type == FR_T_IPF) &&
1065 (fr1->fr_proto == fr->fr_proto)) {
1072 (fr->fr_type == fr1->fr_type) &&
1073 (fr->fr_type == FR_T_IPF) &&
1074 (fr1->fr_ttl == fr->fr_ttl)) {
1081 (fr->fr_type == fr1->fr_type) &&
1082 (fr->fr_type == FR_T_IPF) &&
1083 (fr1->fr_tos == fr->fr_tos)) {
1090 (fr->fr_type == fr1->fr_type) &&
1091 (fr->fr_type == FR_T_IPF) &&
1092 ((fr1->fr_tcpfm == fr->fr_tcpfm) &&
1093 (fr1->fr_tcpf == fr->fr_tcpf))) {
1100 (fr->fr_type == fr1->fr_type) &&
1101 (fr->fr_type == FR_T_IPF) &&
1102 ((fr1->fr_scmp == fr->fr_scmp) &&
1103 (fr1->fr_stop == fr->fr_stop) &&
1104 (fr1->fr_sport == fr->fr_sport))) {
1111 (fr->fr_type == fr1->fr_type) &&
1112 (fr->fr_type == FR_T_IPF) &&
1113 ((fr1->fr_dcmp == fr->fr_dcmp) &&
1114 (fr1->fr_dtop == fr->fr_dtop) &&
1115 (fr1->fr_dport == fr->fr_dport))) {
1122 (fr->fr_type == fr1->fr_type) &&
1123 (fr->fr_type == FR_T_IPF) &&
1125 (fr->fr_satype == FRI_LOOKUP) &&
1126 (fr1->fr_srcnum == fr->fr_srcnum))) {
1130 (fr->fr_type == fr1->fr_type) &&
1131 (fr->fr_type == FR_T_IPF) &&
1133 (fr->fr_flags & FR_NOTSRCIP)))) {
1134 if ((fr1->fr_smask == fr->fr_smask) &&
1135 (fr1->fr_saddr == fr->fr_saddr))
1141 (fr->fr_saddr & fr1->fr_smask)) {
1150 (fr->fr_type == fr1->fr_type) &&
1151 (fr->fr_type == FR_T_IPF) &&
1153 (fr->fr_datype == FRI_LOOKUP) &&
1154 (fr1->fr_dstnum == fr->fr_dstnum))) {
1158 (fr->fr_type == fr1->fr_type) &&
1159 (fr->fr_type == FR_T_IPF) &&
1161 (fr->fr_flags & FR_NOTDSTIP)))) {
1162 if ((fr1->fr_dmask == fr->fr_dmask) &&
1163 (fr1->fr_daddr == fr->fr_daddr))
1169 (fr->fr_daddr & fr1->fr_dmask)) {
1178 (fr->fr_type == fr1->fr_type) &&
1179 (fr->fr_type == FR_T_IPF) &&
1180 (fr1->fr_optmask == fr->fr_optmask) &&
1181 (fr1->fr_optbits == fr->fr_optbits)) {
1188 (fr->fr_type == fr1->fr_type) &&
1189 (fr->fr_type == FR_T_IPF) &&
1190 (fr1->fr_secmask == fr->fr_secmask) &&
1191 (fr1->fr_secbits == fr->fr_secbits)) {
1198 (fr->fr_type == fr1->fr_type) &&
1199 (fr->fr_type == FR_T_IPF) &&
1200 (fr1->fr_authmask == fr->fr_authmask) &&
1201 (fr1->fr_authbits == fr->fr_authbits)) {
1208 (fr->fr_type == fr1->fr_type) &&
1209 (fr->fr_type == FR_T_IPF) &&
1211 (fr->fr_icmpm & 0xff00)) &&
1213 (fr->fr_icmp & 0xff00))) {
1220 (fr->fr_type == fr1->fr_type) &&
1221 (fr->fr_type == FR_T_IPF) &&
1222 ((fr1->fr_icmpm & 0xff) == (fr->fr_icmpm & 0xff)) &&
1223 ((fr1->fr_icmp & 0xff) == (fr->fr_icmp & 0xff))) {
1244 frentry_t *fr; local
1281 for (i = 0, fr = grp->fg_start; fr != NULL; i++, fr = fr->fr_next)
1282 if (fr->fr_dsize > 0) {