1951a39d68df598db08dfced8b4707755864a0492Ying Wang/**************************************************************************** 2951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 3951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 4951a39d68df598db08dfced8b4707755864a0492Ying Wang *** This header was automatically generated from a Linux kernel header 5951a39d68df598db08dfced8b4707755864a0492Ying Wang *** of the same name, to make information necessary for userspace to 6951a39d68df598db08dfced8b4707755864a0492Ying Wang *** call into the kernel available to libc. It contains only constants, 7951a39d68df598db08dfced8b4707755864a0492Ying Wang *** structures, and macros generated from the original header, and thus, 8951a39d68df598db08dfced8b4707755864a0492Ying Wang *** contains no copyrightable information. 9951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 10951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/ 12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_ICMP_H 13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_ICMP_H 14951a39d68df598db08dfced8b4707755864a0492Ying Wang 15951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <linux/types.h> 16951a39d68df598db08dfced8b4707755864a0492Ying Wang 17951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_ECHOREPLY 0 18951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_DEST_UNREACH 3 19951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_SOURCE_QUENCH 4 20951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_REDIRECT 5 21951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_ECHO 8 22951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_TIME_EXCEEDED 11 23951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PARAMETERPROB 12 24951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_TIMESTAMP 13 25951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_TIMESTAMPREPLY 14 26951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_INFO_REQUEST 15 27951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_INFO_REPLY 16 28951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_ADDRESS 17 29951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_ADDRESSREPLY 18 30951a39d68df598db08dfced8b4707755864a0492Ying Wang#define NR_ICMP_TYPES 18 31951a39d68df598db08dfced8b4707755864a0492Ying Wang 32951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_NET_UNREACH 0 33951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_HOST_UNREACH 1 34951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PROT_UNREACH 2 35951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PORT_UNREACH 3 36951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_FRAG_NEEDED 4 37951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_SR_FAILED 5 38951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_NET_UNKNOWN 6 39951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_HOST_UNKNOWN 7 40951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_HOST_ISOLATED 8 41951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_NET_ANO 9 42951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_HOST_ANO 10 43951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_NET_UNR_TOS 11 44951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_HOST_UNR_TOS 12 45951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PKT_FILTERED 13 46951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PREC_VIOLATION 14 47951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_PREC_CUTOFF 15 48951a39d68df598db08dfced8b4707755864a0492Ying Wang#define NR_ICMP_UNREACH 15 49951a39d68df598db08dfced8b4707755864a0492Ying Wang 50951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_REDIR_NET 0 51951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_REDIR_HOST 1 52951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_REDIR_NETTOS 2 53951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_REDIR_HOSTTOS 3 54951a39d68df598db08dfced8b4707755864a0492Ying Wang 55951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_EXC_TTL 0 56951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_EXC_FRAGTIME 1 57951a39d68df598db08dfced8b4707755864a0492Ying Wang 58951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct icmphdr { 59951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 type; 60951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 code; 61951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 checksum; 62951a39d68df598db08dfced8b4707755864a0492Ying Wang union { 63951a39d68df598db08dfced8b4707755864a0492Ying Wang struct { 64951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 id; 65951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 sequence; 66951a39d68df598db08dfced8b4707755864a0492Ying Wang } echo; 67951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 gateway; 68951a39d68df598db08dfced8b4707755864a0492Ying Wang struct { 690fd55ba58eee50c65bc52ce44f7374e91ac83b54Andrew Hsieh __u16 __linux_unused; 70951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 mtu; 71951a39d68df598db08dfced8b4707755864a0492Ying Wang } frag; 72951a39d68df598db08dfced8b4707755864a0492Ying Wang } un; 73951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 74951a39d68df598db08dfced8b4707755864a0492Ying Wang 75951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ICMP_FILTER 1 76951a39d68df598db08dfced8b4707755864a0492Ying Wang 77951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct icmp_filter { 78951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 data; 79951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 80951a39d68df598db08dfced8b4707755864a0492Ying Wang 81951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif 82