@@ -474,54 +474,6 @@ inline uint16_t parse_udp_hdr(const u_char *data_ptr, uint16_t data_len, Packet
474474 return 8 ;
475475}
476476
477- /* *
478- * \brief Parse specific fields from ICMP header.
479- * \param [in] data_ptr Pointer to begin of header.
480- * \param [in] data_len Length of packet data in `data_ptr`.
481- * \param [out] pkt Pointer to Packet structure where parsed fields will be stored.
482- * \return Size of header in bytes.
483- */
484- inline uint16_t parse_icmp_hdr (const u_char *data_ptr, uint16_t data_len, Packet *pkt)
485- {
486- struct icmphdr *icmp = (struct icmphdr *) data_ptr;
487- if (sizeof (struct icmphdr ) > data_len) {
488- throw " Parser detected malformed packet" ;
489- }
490- pkt->dst_port = icmp->type * 256 + icmp->code ;
491-
492- DEBUG_MSG (" ICMP header:\n " );
493- DEBUG_MSG (" \t Type:\t\t %u\n " , icmp->type );
494- DEBUG_MSG (" \t Code:\t\t %u\n " , icmp->code );
495- DEBUG_MSG (" \t Checksum:\t %#06x\n " ,ntohs (icmp->checksum ));
496- DEBUG_MSG (" \t Rest:\t\t %#06x\n " , ntohl (*(uint32_t *) &icmp->un ));
497-
498- return 0 ;
499- }
500-
501- /* *
502- * \brief Parse specific fields from ICMPv6 header.
503- * \param [in] data_ptr Pointer to begin of header.
504- * \param [in] data_len Length of packet data in `data_ptr`.
505- * \param [out] pkt Pointer to Packet structure where parsed fields will be stored.
506- * \return Size of header in bytes.
507- */
508- inline uint16_t parse_icmpv6_hdr (const u_char *data_ptr, uint16_t data_len, Packet *pkt)
509- {
510- struct icmp6_hdr *icmp6 = (struct icmp6_hdr *) data_ptr;
511- if (sizeof (struct icmp6_hdr ) > data_len) {
512- throw " Parser detected malformed packet" ;
513- }
514- pkt->dst_port = icmp6->icmp6_type * 256 + icmp6->icmp6_code ;
515-
516- DEBUG_MSG (" ICMPv6 header:\n " );
517- DEBUG_MSG (" \t Type:\t\t %u\n " , icmp6->icmp6_type );
518- DEBUG_MSG (" \t Code:\t\t %u\n " , icmp6->icmp6_code );
519- DEBUG_MSG (" \t Checksum:\t %#x\n " , ntohs (icmp6->icmp6_cksum ));
520- DEBUG_MSG (" \t Body:\t\t %#x\n " , ntohs (*(uint32_t *) &icmp6->icmp6_dataun ));
521-
522- return 0 ;
523- }
524-
525477/* *
526478 * \brief Skip MPLS stack.
527479 * \param [in] data_ptr Pointer to begin of header.
@@ -696,10 +648,6 @@ void parse_packet(parser_opt_t *opt, struct timeval ts, const uint8_t *data, uin
696648 data_offset += parse_tcp_hdr (data + data_offset, caplen - data_offset, pkt);
697649 } else if (pkt->ip_proto == IPPROTO_UDP) {
698650 data_offset += parse_udp_hdr (data + data_offset, caplen - data_offset, pkt);
699- } else if (pkt->ip_proto == IPPROTO_ICMP) {
700- data_offset += parse_icmp_hdr (data + data_offset, caplen - data_offset, pkt);
701- } else if (pkt->ip_proto == IPPROTO_ICMPV6) {
702- data_offset += parse_icmpv6_hdr (data + data_offset, caplen - data_offset, pkt);
703651 }
704652 } catch (const char *err) {
705653 DEBUG_MSG (" %s\n " , err);
0 commit comments