SAMV71 Xplained Ultra Software Package 1.4

icmp.c File Reference

#include "lwip/opt.h"
#include "lwip/icmp.h"
#include "lwip/inet.h"
#include "lwip/inet_chksum.h"
#include "lwip/ip.h"
#include "lwip/def.h"
#include "lwip/stats.h"
#include "lwip/snmp.h"
#include <string.h>

Go to the source code of this file.

Defines

#define ICMP_DEST_UNREACH_DATASIZE   8

Functions

void icmp_input (struct pbuf *p, struct netif *inp)
void icmp_dest_unreach (struct pbuf *p, enum icmp_dur_type t)
void icmp_time_exceeded (struct pbuf *p, enum icmp_te_type t)

Detailed Description

ICMP - Internet Control Message Protocol

Definition in file icmp.c.


Define Documentation

#define ICMP_DEST_UNREACH_DATASIZE   8

Small optimization: set to 0 if incoming PBUF_POOL pbuf always can be used to modify and send a response packet (and to 1 if this is not the case, e.g. when link header is stripped of when receiving)

Definition at line 64 of file icmp.c.


Function Documentation

void icmp_dest_unreach ( struct pbuf p,
enum icmp_dur_type  t 
)

Send an icmp 'destination unreachable' packet, called from ip_input() if the transport layer protocol is unknown and from udp_input() if the local port is not bound.

Parameters:
p the input packet for which the 'unreachable' should be sent, p->payload pointing to the IP header
t type of the 'unreachable' packet

Definition at line 255 of file icmp.c.

void icmp_input ( struct pbuf p,
struct netif inp 
)

Processes ICMP input packets, called from ip_input().

Currently only processes icmp echo requests and sends out the echo response.

Parameters:
p the icmp echo request packet, p->payload pointing to the ip header
inp the netif on which this packet was received

Definition at line 78 of file icmp.c.

Here is the call graph for this function:

void icmp_time_exceeded ( struct pbuf p,
enum icmp_te_type  t 
)

Send a 'time exceeded' packet, called from ip_forward() if TTL is 0.

Parameters:
p the input packet for which the 'time exceeded' should be sent, p->payload pointing to the IP header
t type of the 'time exceeded' packet

Definition at line 269 of file icmp.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines