ICMP icmpinfo_t Structure
The icmpinfo_t structure is a DTrace translated version of the information contained in the various forms of ICMP and ICMP6 headers.
typedef struct icmpinfo {
uint8_t icmp_version;
uint8_t icmp_type;
uint8_t icmp_code;
uint16_t icmp_checksum;
uint32_t icmp_address_mask;
uint16_t icmp_echo_id;
uint16_t icmp_echo_seq;
uint32_t icmp_param_problem_ptr;
uint32_t icmp_pmtu_update;
uint8_t icmp_radv_num_addrs;
uint16_t icmp_radv_lifetime;
uint32_t *icmp_radv_addrs;
string icmp_redirect_gateway;
uint32_t icmp_timestamp_otime;
uint32_t icmp_timestamp_rtime;
uint32_t icmp_timestamp_ttime;
string icmp6_mld_addr;
uint8_t icmp6_mld_v2_num_mars;
uintptr_t icmp6_mld_v2_mars;
string icmp6_nd_target;
string icmp6_nd_redirect_destination;
uint32_t icmp6_nd_radv_reachable;
uint32_t icmp6_nd_radv_retransmit;
uint8_t icmp6_rr_segnum;
uint8_t icmp6_rr_flags;
uint16_t icmp6_rr_maxdelay;
/* Original data that triggered ICMP error - NULL/0 if not ICMP error */
ipha_t *icmp_error_ip_hdr; /* Orig. IP hdr for ICMP error */
ip6_t *icmp_error_ip6_hdr; /* Orig. IPv6 hdr for ICMP error */
uint16_t icmp_error_sport;
uint16_t icmp_error_dport;
struct icmp *icmp_hdr;
icmp6_t *icmp6_hdr;
} icmpinfo_t;Table 11-43 List of ICMP icmpinfo_t Members
| Member | Description |
|---|---|
|
|
ICMP/ICMPv6 message type. |
|
|
ICMP/ICMPv6 message code. |
|
|
Checksum of ICMP header and payload. |
|
|
Pointer to raw ICMP header at the time of tracing. |
|
|
Pointer to raw ICMPv6 header at the time of tracing. |
|
|
ICMP address mask reply. |
|
|
ICMP echo request/response ID. |
|
|
ICMP echo request/response sequence number. |
|
|
Offset of parameter in original datagram that caused the ICMP/ICMPv6 parameter problem. |
|
|
Path MTU update for ICMP "destination unreachable/needs fragmentation" and ICMPv6 "packet too big". |
|
|
Number of ICMP router advertisements to follow. |
|
|
Lifetime of router advertisements. |
|
|
Pointer to router advertisements. |
|
|
Gateway for ICMP redirect. |
|
|
Originating time set in ICMP timestamp request - number of seconds since 0:00 UT. |
|
|
Receive time of timestamp request set in ICMP timestamp response. |
|
|
Transmit time of timestamp reply sent in response to ICMP timestamp request. |
|
|
ICMP6 Multicast layer discovery address. |
|
|
Number of ICMPv6 Multicast Address Records. |
|
|
Pointer to first ICMPv6 Multicast Address Record. |
|
|
ICMPv6 neighbor discovery target. |
|
|
ICMPv6 neighbor discovery redirect destination. |
|
|
ICMPv6 neighbor discovery router advertisement reachable. |
|
|
ICMPv6 neighbor discovery router advertisement. |
|
|
ICMPv6 router renumbering segment number. |
|
|
ICMPv6 router renumbering flags. |
|
|
ICMPv6 router renumbering maximum delay. |
|
|
Original IP |
|
|
Original IPv6 |
|
|
Original layer 4 source port for ICMP/ICMPv6 error. |
|
|
Original layer 4 destination port for ICMP/ICMPv6 error. |
|
|
Pointer to original ICMP header, NULL for ICMP6. |
|
|
Pointer to original ICMPv6 header, NULL for ICMP. |
For more information about the various ICMP/ICMPv6 message header formats, see RFC 792, 1256, and 2463.