Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenicmp.h
Go to the documentation of this file.
00001 /* 00002 * COPYRIGHT: See COPYING in the top level directory 00003 * PROJECT: ReactOS TCP/IP protocol driver 00004 * FILE: include/icmp.h 00005 * PURPOSE: Internet Control Message Protocol definitions 00006 */ 00007 00008 #pragma once 00009 00010 typedef struct ICMP_HEADER { 00011 UCHAR Type; /* ICMP message type */ 00012 UCHAR Code; /* ICMP message code */ 00013 USHORT Checksum; /* ICMP message checksum */ 00014 ULONG Unused; /* ICMP unused */ 00015 } ICMP_HEADER, *PICMP_HEADER; 00016 00017 /* ICMP message types */ 00018 #define ICMP_TYPE_ECHO_REPLY 0 /* Echo reply */ 00019 #define ICMP_TYPE_DEST_UNREACH 3 /* Destination unreachable */ 00020 #define ICMP_TYPE_SOURCE_QUENCH 4 /* Source quench */ 00021 #define ICMP_TYPE_REDIRECT 5 /* Redirect */ 00022 #define ICMP_TYPE_ECHO_REQUEST 8 /* Echo request */ 00023 #define ICMP_TYPE_TIME_EXCEEDED 11 /* Time exceeded */ 00024 #define ICMP_TYPE_PARAMETER 12 /* Parameter problem */ 00025 #define ICMP_TYPE_TIMESTAMP_REQUEST 13 /* Timestamp request */ 00026 #define ICMP_TYPE_TIMESTAMP_REPLY 14 /* Timestamp reply */ 00027 #define ICMP_TYPE_INFO_REQUEST 15 /* Information request */ 00028 #define ICMP_TYPE_INFO_REPLY 16 /* Information reply */ 00029 00030 /* ICMP codes for ICMP_TYPE_DEST_UNREACH */ 00031 #define ICMP_CODE_DU_NET_UNREACH 0 /* Network unreachable */ 00032 #define ICMP_CODE_DU_HOST_UNREACH 1 /* Host unreachable */ 00033 #define ICMP_CODE_DU_PROTOCOL_UNREACH 2 /* Protocol unreachable */ 00034 #define ICMP_CODE_DU_PORT_UNREACH 3 /* Port unreachable */ 00035 #define ICMP_CODE_DU_FRAG_DF_SET 4 /* Fragmentation needed and DF set */ 00036 #define ICMP_CODE_DU_SOURCE_ROUTE_FAILED 5 /* Source route failed */ 00037 00038 /* ICMP codes for ICMP_TYPE_REDIRECT */ 00039 #define ICMP_CODE_RD_NET 0 /* Redirect datagrams for the network */ 00040 #define ICMP_CODE_RD_HOST 1 /* Redirect datagrams for the host */ 00041 #define ICMP_CODE_RD_TOS_NET 2 /* Redirect datagrams for the Type of Service and network */ 00042 #define ICMP_CODE_RD_TOS_HOST 3 /* Redirect datagrams for the Type of Service and host */ 00043 00044 /* ICMP codes for ICMP_TYPE_TIME_EXCEEDED */ 00045 #define ICMP_CODE_TE_TTL 0 /* Time to live exceeded in transit */ 00046 #define ICMP_CODE_TE_REASSEMBLY 1 /* Fragment reassembly time exceeded */ 00047 00048 /* ICMP codes for ICMP_TYPE_PARAMETER */ 00049 #define ICMP_CODE_TP_POINTER 1 /* Pointer indicates the error */ 00050 00051 NTSTATUS ICMPSendDatagram( 00052 PADDRESS_FILE AddrFile, 00053 PTDI_CONNECTION_INFORMATION ConnInfo, 00054 PCHAR BufferData, 00055 ULONG DataSize, 00056 PULONG DataUsed ); 00057 00058 NTSTATUS ICMPStartup(VOID); 00059 00060 NTSTATUS ICMPShutdown(VOID); 00061 00062 VOID ICMPReceive( 00063 PIP_INTERFACE Interface, 00064 PIP_PACKET IPPacket); 00065 00066 VOID ICMPTransmit( 00067 PIP_PACKET IPPacket, 00068 PIP_TRANSMIT_COMPLETE Complete, 00069 PVOID Context); 00070 00071 VOID ICMPReply( 00072 PIP_INTERFACE Interface, 00073 PIP_PACKET IPPacket, 00074 UCHAR Type, 00075 UCHAR Code); 00076 00077 /* EOF */ Generated on Sun May 27 2012 04:28:06 for ReactOS by
1.7.6.1
|