Lines Matching refs:fin

284 int appr_ok(fin, tcp, nat)  in appr_ok()  argument
285 fr_info_t *fin; in appr_ok()
293 (fin->fin_p != apr->apr_p))
357 int appr_match(fin, nat) in appr_match() argument
358 fr_info_t *fin; in appr_match()
368 (u_long)fin, (u_long)nat, (u_long)nat->nat_aps,
371 if ((fin->fin_flx & (FI_SHORT|FI_BAD)) != 0) {
374 fin->fin_flx);
387 result = (*apr->apr_match)(fin, nat->nat_aps, nat, apr->apr_private);
403 int appr_new(fin, nat) in appr_new() argument
404 fr_info_t *fin; in appr_new()
409 ipf_stack_t *ifs = fin->fin_ifs;
412 printf("appr_new(%lx,%lx) \n", (u_long)fin, (u_long)nat);
424 (fin->fin_p != apr->apr_p)) {
427 apr->apr_flags, fin->fin_p, apr->apr_p);
440 aps->aps_p = fin->fin_p;
445 if ((*apr->apr_new)(fin, aps, nat, apr->apr_private) == -1) {
470 int appr_check(fin, nat) in appr_check() argument
471 fr_info_t *fin; in appr_check()
491 ipf_stack_t *ifs = fin->fin_ifs;
495 if (fin->fin_v == 4)
501 if (fin->fin_flx & FI_BAD) {
503 printf("appr_check: flx 0x%x (BAD)\n", fin->fin_flx);
508 if ((fin->fin_out == 0) && (fr_checkl4sum(fin) == -1)) {
511 fin->fin_p);
512 if (fin->fin_p == IPPROTO_TCP)
513 ifs->ifs_frstats[fin->fin_out].fr_tcpbad++;
519 if ((aps != NULL) && (aps->aps_p == fin->fin_p)) {
525 if ((fin->fin_dlen > 0) && !(fin->fin_flx & FI_COALESCE))
526 if (fr_coalesce(fin) == -1) {
528 printf("appr_check: fr_coalesce failed %x\n", fin->fin_flx);
532 ip = fin->fin_ip;
534 switch (fin->fin_p)
537 tcp = (tcphdr_t *)fin->fin_dp;
541 m = fin->fin_qfm;
549 if ((fin->fin_tcpf & TH_RST) != 0)
553 udp = (udphdr_t *)fin->fin_dp;
561 if (fin->fin_out != 0) {
563 err = (*apr->apr_outpkt)(fin, aps, nat, apr->apr_private);
566 err = (*apr->apr_inpkt)(fin, aps, nat, apr->apr_private);
573 fin->fin_out, err, rv);
597 if (!fin->fin_out ||
598 !NET_IS_HCK_L3_FULL(net_data_p, fin->fin_m))
615 (void) appr_fixseqack(fin, ip, aps, APR_INC(err));
623 if (!fin->fin_out) {
631 DB_CKSUMFLAGS(fin->fin_m) &= ~HCK_PARTIALCKSUM;
634 *csump = fr_cksum(fin->fin_qfm, ip,
635 fin->fin_p, tcpudp);
636 } else if (NET_IS_HCK_L4_PART(net_data_p, fin->fin_m)) {
638 DB_CKSUMEND(fin->fin_m) += (short)err;
641 } else if (!NET_IS_HCK_L4_FULL(net_data_p, fin->fin_m))
642 *csump = fr_cksum(fin->fin_qfm, ip,
643 fin->fin_p, tcpudp);
645 *csump = fr_cksum(fin->fin_m, ip, fin->fin_p, tcpudp);
648 aps->aps_bytes += fin->fin_plen;
724 static int appr_fixseqack(fin, ip, aps, inc) in appr_fixseqack() argument
725 fr_info_t *fin; in appr_fixseqack()
735 tcp = (tcphdr_t *)fin->fin_dp;
736 out = fin->fin_out;