40 #ifndef included_ip6_input_h 41 #define included_ip6_input_h 66 error0 = error1 = IP6_ERROR_NONE;
72 6 ? IP6_ERROR_VERSION : error0;
76 6 ? IP6_ERROR_VERSION : error1;
82 error0 = ip0->
hop_limit < 1 ? IP6_ERROR_TIME_EXPIRED : error0;
83 error1 = ip1->
hop_limit < 1 ? IP6_ERROR_TIME_EXPIRED : error1;
87 p0->
current_length <
sizeof (ip0[0]) ? IP6_ERROR_TOO_SHORT : error0;
89 p1->
current_length <
sizeof (ip1[0]) ? IP6_ERROR_TOO_SHORT : error1;
93 if (error0 == IP6_ERROR_TIME_EXPIRED)
96 ICMP6_time_exceeded_ttl_exceeded_in_transit,
107 if (error1 == IP6_ERROR_TIME_EXPIRED)
110 ICMP6_time_exceeded_ttl_exceeded_in_transit,
128 error0 = IP6_ERROR_NONE;
132 (clib_net_to_host_u32
134 6 ? IP6_ERROR_VERSION : error0;
140 error0 = ip0->
hop_limit < 1 ? IP6_ERROR_TIME_EXPIRED : error0;
144 p0->
current_length <
sizeof (ip0[0]) ? IP6_ERROR_TOO_SHORT : error0;
148 if (error0 == IP6_ERROR_TIME_EXPIRED)
151 ICMP6_time_exceeded_ttl_exceeded_in_transit,
u16 current_length
Nbytes between current data and the end of this buffer.
void icmp6_error_set_vnet_buffer(vlib_buffer_t *b, u8 type, u8 code, u32 data)
VLIB buffer representation.