lwIP
2.0.2
Lightweight IP stack
|
#include "lwip/opt.h"
#include "lwip/pbuf.h"
#include "lwip/ip6_addr.h"
#include "lwip/netif.h"
#include "lwip/prot/icmp6.h"
Functions | |
void | icmp6_input (struct pbuf *p, struct netif *inp) |
void | icmp6_dest_unreach (struct pbuf *p, enum icmp6_dur_code c) |
void | icmp6_packet_too_big (struct pbuf *p, u32_t mtu) |
void | icmp6_time_exceeded (struct pbuf *p, enum icmp6_te_code c) |
void | icmp6_param_problem (struct pbuf *p, enum icmp6_pp_code c, u32_t pointer) |
IPv6 version of ICMP, as per RFC 4443.
void icmp6_dest_unreach | ( | struct pbuf * | p, |
enum icmp6_dur_code | c | ||
) |
Send an icmpv6 'destination unreachable' packet.
p | the input packet for which the 'unreachable' should be sent, p->payload pointing to the IPv6 header |
c | ICMPv6 code for the unreachable type |
Process an input ICMPv6 message. Called by ip6_input.
Will generate a reply for echo requests. Other messages are forwarded to nd6_input, or mld6_input.
p | the mld packet, p->payload pointing to the icmpv6 header |
inp | the netif on which this packet was received |
void icmp6_packet_too_big | ( | struct pbuf * | p, |
u32_t | mtu | ||
) |
Send an icmpv6 'packet too big' packet.
p | the input packet for which the 'packet too big' should be sent, p->payload pointing to the IPv6 header |
mtu | the maximum mtu that we can accept |
void icmp6_param_problem | ( | struct pbuf * | p, |
enum icmp6_pp_code | c, | ||
u32_t | pointer | ||
) |
Send an icmpv6 'parameter problem' packet.
p | the input packet for which the 'param problem' should be sent, p->payload pointing to the IP header |
c | ICMPv6 code for the param problem type |
pointer | the pointer to the byte where the parameter is found |
void icmp6_time_exceeded | ( | struct pbuf * | p, |
enum icmp6_te_code | c | ||
) |
Send an icmpv6 'time exceeded' packet.
p | the input packet for which the 'unreachable' should be sent, p->payload pointing to the IPv6 header |
c | ICMPv6 code for the time exceeded type |