Lines Matching refs:l2info

473         struct juniper_l2info_t l2info;  in juniper_ggsn_if_print()  local
486 memset(&l2info, 0, sizeof(l2info)); in juniper_ggsn_if_print()
487 l2info.pictype = DLT_JUNIPER_GGSN; in juniper_ggsn_if_print()
488 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_ggsn_if_print()
489 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_ggsn_if_print()
493 p+=l2info.header_len; in juniper_ggsn_if_print()
494 gh = (struct juniper_ggsn_header *)&l2info.cookie; in juniper_ggsn_if_print()
507 ip_print(ndo, p, l2info.length); in juniper_ggsn_if_print()
510 ip6_print(ndo, p, l2info.length); in juniper_ggsn_if_print()
517 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_ggsn_if_print()
526 struct juniper_l2info_t l2info; in juniper_es_if_print() local
539 memset(&l2info, 0, sizeof(l2info)); in juniper_es_if_print()
540 l2info.pictype = DLT_JUNIPER_ES; in juniper_es_if_print()
541 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_es_if_print()
542 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_es_if_print()
546 p+=l2info.header_len; in juniper_es_if_print()
565 l2info.length); in juniper_es_if_print()
566 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_es_if_print()
570 l2info.length-=rewrite_len; in juniper_es_if_print()
583 l2info.length); in juniper_es_if_print()
590 l2info.length); in juniper_es_if_print()
594 ip_print(ndo, p, l2info.length); in juniper_es_if_print()
595 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_es_if_print()
604 struct juniper_l2info_t l2info; in juniper_monitor_if_print() local
614 memset(&l2info, 0, sizeof(l2info)); in juniper_monitor_if_print()
615 l2info.pictype = DLT_JUNIPER_MONITOR; in juniper_monitor_if_print()
616 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_monitor_if_print()
617 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_monitor_if_print()
621 p+=l2info.header_len; in juniper_monitor_if_print()
632 ip_heuristic_guess (ndo, p, l2info.length); in juniper_monitor_if_print()
634 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_monitor_if_print()
643 struct juniper_l2info_t l2info; in juniper_services_if_print() local
654 memset(&l2info, 0, sizeof(l2info)); in juniper_services_if_print()
655 l2info.pictype = DLT_JUNIPER_SERVICES; in juniper_services_if_print()
656 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_services_if_print()
657 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_services_if_print()
661 p+=l2info.header_len; in juniper_services_if_print()
673 ip_heuristic_guess (ndo, p, l2info.length); in juniper_services_if_print()
675 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_services_if_print()
684 struct juniper_l2info_t l2info; in juniper_pppoe_if_print() local
687 memset(&l2info, 0, sizeof(l2info)); in juniper_pppoe_if_print()
688 l2info.pictype = DLT_JUNIPER_PPPOE; in juniper_pppoe_if_print()
689 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_pppoe_if_print()
690 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_pppoe_if_print()
694 p+=l2info.header_len; in juniper_pppoe_if_print()
696 ether_print(ndo, p, l2info.length, l2info.caplen, NULL, NULL); in juniper_pppoe_if_print()
697 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_pppoe_if_print()
706 struct juniper_l2info_t l2info; in juniper_ether_if_print() local
709 memset(&l2info, 0, sizeof(l2info)); in juniper_ether_if_print()
710 l2info.pictype = DLT_JUNIPER_ETHER; in juniper_ether_if_print()
711 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_ether_if_print()
712 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_ether_if_print()
716 p+=l2info.header_len; in juniper_ether_if_print()
719 l2info.header_len + in juniper_ether_if_print()
720 ether_print(ndo, p, l2info.length, l2info.caplen, NULL, NULL); in juniper_ether_if_print()
729 struct juniper_l2info_t l2info; in juniper_ppp_if_print() local
732 memset(&l2info, 0, sizeof(l2info)); in juniper_ppp_if_print()
733 l2info.pictype = DLT_JUNIPER_PPP; in juniper_ppp_if_print()
734 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_ppp_if_print()
735 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_ppp_if_print()
739 p+=l2info.header_len; in juniper_ppp_if_print()
741 ppp_print(ndo, p, l2info.length); in juniper_ppp_if_print()
742 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_ppp_if_print()
751 struct juniper_l2info_t l2info; in juniper_frelay_if_print() local
754 memset(&l2info, 0, sizeof(l2info)); in juniper_frelay_if_print()
755 l2info.pictype = DLT_JUNIPER_FRELAY; in juniper_frelay_if_print()
756 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_frelay_if_print()
757 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_frelay_if_print()
761 p+=l2info.header_len; in juniper_frelay_if_print()
763 fr_print(ndo, p, l2info.length); in juniper_frelay_if_print()
764 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_frelay_if_print()
773 struct juniper_l2info_t l2info; in juniper_chdlc_if_print() local
776 memset(&l2info, 0, sizeof(l2info)); in juniper_chdlc_if_print()
777 l2info.pictype = DLT_JUNIPER_CHDLC; in juniper_chdlc_if_print()
778 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_chdlc_if_print()
779 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_chdlc_if_print()
783 p+=l2info.header_len; in juniper_chdlc_if_print()
785 chdlc_print(ndo, p, l2info.length); in juniper_chdlc_if_print()
786 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_chdlc_if_print()
795 struct juniper_l2info_t l2info; in juniper_pppoe_atm_if_print() local
799 memset(&l2info, 0, sizeof(l2info)); in juniper_pppoe_atm_if_print()
800 l2info.pictype = DLT_JUNIPER_PPPOE_ATM; in juniper_pppoe_atm_if_print()
801 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_pppoe_atm_if_print()
802 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_pppoe_atm_if_print()
806 p+=l2info.header_len; in juniper_pppoe_atm_if_print()
813 l2info.length-ETHERTYPE_LEN, in juniper_pppoe_atm_if_print()
814 l2info.caplen-ETHERTYPE_LEN, in juniper_pppoe_atm_if_print()
819 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_pppoe_atm_if_print()
828 struct juniper_l2info_t l2info; in juniper_mlppp_if_print() local
831 memset(&l2info, 0, sizeof(l2info)); in juniper_mlppp_if_print()
832 l2info.pictype = DLT_JUNIPER_MLPPP; in juniper_mlppp_if_print()
833 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_mlppp_if_print()
834 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
842 EXTRACT_BE_U_2(&l2info.cookie) != PPP_OSI && in juniper_mlppp_if_print()
844 EXTRACT_BE_U_2(&l2info.cookie) != (PPP_ADDRESS << 8 | PPP_CONTROL)) in juniper_mlppp_if_print()
845 ND_PRINT("Bundle-ID %u: ", l2info.bundle); in juniper_mlppp_if_print()
847 p+=l2info.header_len; in juniper_mlppp_if_print()
850 switch(l2info.proto) { in juniper_mlppp_if_print()
855 if (l2info.cookie[4] == (JUNIPER_LSQ_COOKIE_RE|JUNIPER_LSQ_COOKIE_DIR)) in juniper_mlppp_if_print()
856 ppp_print(ndo, p, l2info.length); in juniper_mlppp_if_print()
858 ip_print(ndo, p, l2info.length); in juniper_mlppp_if_print()
859 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
862 ip6_print(ndo, p,l2info.length); in juniper_mlppp_if_print()
863 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
866 mpls_print(ndo, p, l2info.length); in juniper_mlppp_if_print()
867 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
870 isoclns_print(ndo, p, l2info.length); in juniper_mlppp_if_print()
871 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
879 switch (EXTRACT_BE_U_2(&l2info.cookie)) { in juniper_mlppp_if_print()
881 ppp_print(ndo, p - 2, l2info.length + 2); in juniper_mlppp_if_print()
885 ppp_print(ndo, p, l2info.length); in juniper_mlppp_if_print()
889 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlppp_if_print()
899 struct juniper_l2info_t l2info; in juniper_mfr_if_print() local
902 memset(&l2info, 0, sizeof(l2info)); in juniper_mfr_if_print()
903 l2info.pictype = DLT_JUNIPER_MFR; in juniper_mfr_if_print()
904 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_mfr_if_print()
905 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
909 p+=l2info.header_len; in juniper_mfr_if_print()
912 if (l2info.cookie_len == 0) { in juniper_mfr_if_print()
913 mfr_print(ndo, p, l2info.length); in juniper_mfr_if_print()
914 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
919 if (l2info.cookie_len == AS_PIC_COOKIE_LEN) { in juniper_mfr_if_print()
920 switch(l2info.proto) { in juniper_mfr_if_print()
922 ip_print(ndo, p, l2info.length); in juniper_mfr_if_print()
923 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
926 ip6_print(ndo, p,l2info.length); in juniper_mfr_if_print()
927 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
930 mpls_print(ndo, p, l2info.length); in juniper_mfr_if_print()
931 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
934 isoclns_print(ndo, p, l2info.length); in juniper_mfr_if_print()
935 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
940 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
946 if (ndo->ndo_eflag && EXTRACT_BE_U_4(l2info.cookie) != 1) in juniper_mfr_if_print()
947 ND_PRINT("Bundle-ID %u, ", l2info.bundle); in juniper_mfr_if_print()
948 switch (l2info.proto) { in juniper_mfr_if_print()
952 isoclns_print(ndo, p + 1, l2info.length - 1); in juniper_mfr_if_print()
958 isoclns_print(ndo, p - 1, l2info.length + 1); in juniper_mfr_if_print()
961 ND_PRINT("unknown protocol 0x%04x, length %u", l2info.proto, l2info.length); in juniper_mfr_if_print()
964 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mfr_if_print()
973 struct juniper_l2info_t l2info; in juniper_mlfr_if_print() local
976 memset(&l2info, 0, sizeof(l2info)); in juniper_mlfr_if_print()
977 l2info.pictype = DLT_JUNIPER_MLFR; in juniper_mlfr_if_print()
978 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_mlfr_if_print()
979 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlfr_if_print()
983 p+=l2info.header_len; in juniper_mlfr_if_print()
987 if (ndo->ndo_eflag && EXTRACT_BE_U_4(l2info.cookie) != 1) in juniper_mlfr_if_print()
988 ND_PRINT("Bundle-ID %u, ", l2info.bundle); in juniper_mlfr_if_print()
989 switch (l2info.proto) { in juniper_mlfr_if_print()
992 isoclns_print(ndo, p, l2info.length); in juniper_mlfr_if_print()
998 isoclns_print(ndo, p - 1, l2info.length + 1); in juniper_mlfr_if_print()
1001 ND_PRINT("unknown protocol 0x%04x, length %u", l2info.proto, l2info.length); in juniper_mlfr_if_print()
1004 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_mlfr_if_print()
1023 struct juniper_l2info_t l2info; in juniper_atm1_if_print() local
1026 memset(&l2info, 0, sizeof(l2info)); in juniper_atm1_if_print()
1027 l2info.pictype = DLT_JUNIPER_ATM1; in juniper_atm1_if_print()
1028 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_atm1_if_print()
1029 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1033 p+=l2info.header_len; in juniper_atm1_if_print()
1035 if (l2info.cookie[0] == 0x80) { /* OAM cell ? */ in juniper_atm1_if_print()
1036 oam_print(ndo, p, l2info.length, ATM_OAM_NOHEC); in juniper_atm1_if_print()
1037 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1044 llc_hdrlen = llc_print(ndo, p, l2info.length, l2info.caplen, NULL, NULL); in juniper_atm1_if_print()
1046 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1054 isoclns_print(ndo, p + 1, l2info.length - 1); in juniper_atm1_if_print()
1056 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1060 if (ip_heuristic_guess(ndo, p, l2info.length) != 0) { /* last try - vcmux encaps ? */ in juniper_atm1_if_print()
1061 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1065 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm1_if_print()
1084 struct juniper_l2info_t l2info; in juniper_atm2_if_print() local
1087 memset(&l2info, 0, sizeof(l2info)); in juniper_atm2_if_print()
1088 l2info.pictype = DLT_JUNIPER_ATM2; in juniper_atm2_if_print()
1089 if (juniper_parse_header(ndo, p, h, &l2info) == 0) { in juniper_atm2_if_print()
1090 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1094 p+=l2info.header_len; in juniper_atm2_if_print()
1096 if (l2info.cookie[7] & ATM2_PKT_TYPE_MASK) { /* OAM cell ? */ in juniper_atm2_if_print()
1097 oam_print(ndo, p, l2info.length, ATM_OAM_NOHEC); in juniper_atm2_if_print()
1098 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1105 llc_hdrlen = llc_print(ndo, p, l2info.length, l2info.caplen, NULL, NULL); in juniper_atm2_if_print()
1107 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1112 if (l2info.direction != JUNIPER_BPF_PKT_IN && /* ether-over-1483 encaps ? */ in juniper_atm2_if_print()
1114 (EXTRACT_BE_U_4(l2info.cookie) & ATM2_GAP_COUNT_MASK)) { in juniper_atm2_if_print()
1115 ether_print(ndo, p, l2info.length, l2info.caplen, NULL, NULL); in juniper_atm2_if_print()
1116 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1123 isoclns_print(ndo, p + 1, l2info.length - 1); in juniper_atm2_if_print()
1125 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1129 if(juniper_ppp_heuristic_guess(ndo, p, l2info.length) != 0) { /* PPPoA vcmux encaps ? */ in juniper_atm2_if_print()
1130 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1134 if (ip_heuristic_guess(ndo, p, l2info.length) != 0) { /* last try - vcmux encaps ? */ in juniper_atm2_if_print()
1135 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1139 ndo->ndo_ll_hdr_len += l2info.header_len; in juniper_atm2_if_print()
1266 const u_char *p, const struct pcap_pkthdr *h, struct juniper_l2info_t *l2info) in juniper_parse_header() argument
1278 l2info->header_len = 0; in juniper_parse_header()
1279 l2info->cookie_len = 0; in juniper_parse_header()
1280 l2info->proto = 0; in juniper_parse_header()
1283 l2info->length = h->len; in juniper_parse_header()
1284 l2info->caplen = h->caplen; in juniper_parse_header()
1285 l2info->flags = GET_U_1(p + 3); in juniper_parse_header()
1286 l2info->direction = GET_U_1(p + 3) & JUNIPER_BPF_PKT_IN; in juniper_parse_header()
1294 ND_PRINT("%3s ", tok2str(juniper_direction_values, "---", l2info->direction)); in juniper_parse_header()
1301 bittok2str(jnx_flag_values, "none", l2info->flags)); in juniper_parse_header()
1304 if ((l2info->flags & JUNIPER_BPF_EXT ) == JUNIPER_BPF_EXT ) { in juniper_parse_header()
1383 if ((l2info->flags & JUNIPER_BPF_NO_L2 ) == JUNIPER_BPF_NO_L2 ) { in juniper_parse_header()
1393 l2info->length - (jnx_header_len + 4)) == 0) in juniper_parse_header()
1396 l2info->header_len=jnx_header_len+4; in juniper_parse_header()
1400 l2info->header_len = jnx_header_len; in juniper_parse_header()
1401 p+=l2info->header_len; in juniper_parse_header()
1402 l2info->length -= l2info->header_len; in juniper_parse_header()
1403 l2info->caplen -= l2info->header_len; in juniper_parse_header()
1409 if (table_lp->pictype == l2info->pictype) { in juniper_parse_header()
1417 l2info->cookie_len += lp->cookie_len; in juniper_parse_header()
1421 l2info->cookie_type = LS_COOKIE_ID; in juniper_parse_header()
1422 l2info->cookie_len += 2; in juniper_parse_header()
1425 l2info->cookie_type = AS_COOKIE_ID; in juniper_parse_header()
1426 l2info->cookie_len = 8; in juniper_parse_header()
1430 l2info->bundle = l2info->cookie[0]; in juniper_parse_header()
1437 if (l2info->pictype == DLT_JUNIPER_MFR && in juniper_parse_header()
1439 l2info->cookie_len = 0; in juniper_parse_header()
1443 l2info->header_len += l2info->cookie_len; in juniper_parse_header()
1444 l2info->length -= l2info->cookie_len; in juniper_parse_header()
1445 l2info->caplen -= l2info->cookie_len; in juniper_parse_header()
1450 l2info->cookie_len); in juniper_parse_header()
1452 if (l2info->cookie_len > 8) { in juniper_parse_header()
1457 if (l2info->cookie_len > 0) { in juniper_parse_header()
1458 ND_TCHECK_LEN(p, l2info->cookie_len); in juniper_parse_header()
1461 for (idx = 0; idx < l2info->cookie_len; idx++) { in juniper_parse_header()
1462 l2info->cookie[idx] = GET_U_1(p + idx); /* copy cookie data */ in juniper_parse_header()
1470 l2info->proto = GET_BE_U_2(p + l2info->cookie_len); in juniper_parse_header()
1472 p+=l2info->cookie_len; in juniper_parse_header()
1475 switch(l2info->pictype) { in juniper_parse_header()
1478 switch (l2info->cookie_type) { in juniper_parse_header()
1480 l2info->bundle = l2info->cookie[1]; in juniper_parse_header()
1484 l2info->bundle = (EXTRACT_BE_U_2(&l2info->cookie[6])>>3)&0xfff; in juniper_parse_header()
1485 l2info->proto = (l2info->cookie[5])&JUNIPER_LSQ_L3_PROTO_MASK; in juniper_parse_header()
1488 l2info->bundle = l2info->cookie[0]; in juniper_parse_header()
1495 switch (l2info->cookie_type) { in juniper_parse_header()
1497 l2info->bundle = l2info->cookie[1]; in juniper_parse_header()
1498 l2info->proto = GET_BE_U_2(p); in juniper_parse_header()
1499 l2info->header_len += 2; in juniper_parse_header()
1500 l2info->length -= 2; in juniper_parse_header()
1501 l2info->caplen -= 2; in juniper_parse_header()
1505 l2info->bundle = (EXTRACT_BE_U_2(&l2info->cookie[6])>>3)&0xfff; in juniper_parse_header()
1506 l2info->proto = (l2info->cookie[5])&JUNIPER_LSQ_L3_PROTO_MASK; in juniper_parse_header()
1509 l2info->bundle = l2info->cookie[0]; in juniper_parse_header()
1510 l2info->header_len += 2; in juniper_parse_header()
1511 l2info->length -= 2; in juniper_parse_header()
1512 l2info->caplen -= 2; in juniper_parse_header()
1519 switch (l2info->cookie_type) { in juniper_parse_header()
1521 l2info->bundle = l2info->cookie[1]; in juniper_parse_header()
1522 l2info->proto = GET_BE_U_2(p); in juniper_parse_header()
1523 l2info->header_len += 2; in juniper_parse_header()
1524 l2info->length -= 2; in juniper_parse_header()
1525 l2info->caplen -= 2; in juniper_parse_header()
1529 l2info->bundle = (EXTRACT_BE_U_2(&l2info->cookie[6])>>3)&0xfff; in juniper_parse_header()
1530 l2info->proto = (l2info->cookie[5])&JUNIPER_LSQ_L3_PROTO_MASK; in juniper_parse_header()
1533 l2info->bundle = l2info->cookie[0]; in juniper_parse_header()
1542 if (l2info->cookie[7] & ATM2_PKT_TYPE_MASK) { in juniper_parse_header()
1549 l2info->header_len += 4; in juniper_parse_header()
1606 ND_PRINT("Unknown Juniper DLT_ type %u: ", l2info->pictype); in juniper_parse_header()
1611 ND_PRINT("hlen %u, proto 0x%04x, ", l2info->header_len, l2info->proto); in juniper_parse_header()