ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

icmp.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 doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.