summaryrefslogtreecommitdiffstats
path: root/libc/kernel/common/linux/icmp.h
blob: c5b58bb67232c4a449b8faf6831bf10590bf8ef4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/****************************************************************************
 ****************************************************************************
 ***
 ***   This header was automatically generated from a Linux kernel header
 ***   of the same name, to make information necessary for userspace to
 ***   call into the kernel available to libc.  It contains only constants,
 ***   structures, and macros generated from the original header, and thus,
 ***   contains no copyrightable information.
 ***
 ****************************************************************************
 ****************************************************************************/
#ifndef _LINUX_ICMP_H
#define _LINUX_ICMP_H

#include <linux/types.h>

#define ICMP_ECHOREPLY 0  
#define ICMP_DEST_UNREACH 3  
#define ICMP_SOURCE_QUENCH 4  
#define ICMP_REDIRECT 5  
#define ICMP_ECHO 8  
#define ICMP_TIME_EXCEEDED 11  
#define ICMP_PARAMETERPROB 12  
#define ICMP_TIMESTAMP 13  
#define ICMP_TIMESTAMPREPLY 14  
#define ICMP_INFO_REQUEST 15  
#define ICMP_INFO_REPLY 16  
#define ICMP_ADDRESS 17  
#define ICMP_ADDRESSREPLY 18  
#define NR_ICMP_TYPES 18

#define ICMP_NET_UNREACH 0  
#define ICMP_HOST_UNREACH 1  
#define ICMP_PROT_UNREACH 2  
#define ICMP_PORT_UNREACH 3  
#define ICMP_FRAG_NEEDED 4  
#define ICMP_SR_FAILED 5  
#define ICMP_NET_UNKNOWN 6
#define ICMP_HOST_UNKNOWN 7
#define ICMP_HOST_ISOLATED 8
#define ICMP_NET_ANO 9
#define ICMP_HOST_ANO 10
#define ICMP_NET_UNR_TOS 11
#define ICMP_HOST_UNR_TOS 12
#define ICMP_PKT_FILTERED 13  
#define ICMP_PREC_VIOLATION 14  
#define ICMP_PREC_CUTOFF 15  
#define NR_ICMP_UNREACH 15  

#define ICMP_REDIR_NET 0  
#define ICMP_REDIR_HOST 1  
#define ICMP_REDIR_NETTOS 2  
#define ICMP_REDIR_HOSTTOS 3  

#define ICMP_EXC_TTL 0  
#define ICMP_EXC_FRAGTIME 1  

struct icmphdr {
 __u8 type;
 __u8 code;
 __u16 checksum;
 union {
 struct {
 __u16 id;
 __u16 sequence;
 } echo;
 __u32 gateway;
 struct {
 __u16 __unused_field;
 __u16 mtu;
 } frag;
 } un;
};

#define ICMP_FILTER 1

struct icmp_filter {
 __u32 data;
};

#endif