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

ip.h File Reference

Go to the source code of this file.

Data Structures

struct  PIP_ADDRESS
struct  PIPv4_HEADER
struct  PIPv6_HEADER
union  PIP_HEADER
struct  PIP_PACKET
struct  PPACKET_CONTEXT
struct  PLLIP_BIND_INFO
struct  PSEND_RECV_STATS
struct  PIP_INTERFACE
struct  PIP_SET_ADDRESS

Defines

#define FOURCC(a, b, c, d)   (((a)<<24)|((b)<<16)|((c)<<8)|(d))
#define IP_ADDRESS_V4   0x04 /* IPv4 style address */
#define IP_ADDRESS_V6   0x06 /* IPv6 style address */
#define IPv4_FRAGOFS_MASK   0x1FFF /* Fragment offset mask (host byte order) */
#define IPv4_MF_MASK   0x2000 /* More fragments (host byte order) */
#define IPv4_DF_MASK   0x4000 /* Don't fragment (host byte order) */
#define IPv4_MAX_HEADER_SIZE   60
#define IP_PACKET_FLAG_RAW   0x01 /* Raw IP packet */
#define PC(Packet)   ((PPACKET_CONTEXT)(&Packet->ProtocolReserved))
#define ADE_UNICAST   0x01
#define ADE_BROADCAST   0x02
#define ADE_ADDRMASK   0x04
#define ADE_POINTOPOINT   0x10
#define ADE_MULTICAST   0x8000
#define IP_PROTOCOL_TABLE_SIZE   0x100
#define LOOPBACK_ADDRESS_IPv4   ((IPv4_RAW_ADDRESS)DH2N(0x7F000001))
#define LOOPBACK_BCASTADDR_IPv4   ((IPv4_RAW_ADDRESS)DH2N(0x7FFFFFFF))
#define LOOPBACK_ADDRMASK_IPv4   ((IPv4_RAW_ADDRESS)DH2N(0xFF000000))
#define IPPROTO_RAW   0 /* Raw IP */
#define IPPROTO_ICMP   1 /* Internet Control Message Protocol */
#define IPPROTO_IGMP   2 /* Internet Group Management Protocol */
#define IPPROTO_TCP   6 /* Transmission Control Protocol */
#define IPPROTO_UDP   17 /* User Datagram Protocol */
#define IP_TIMEOUT   1000 /* Timeout in milliseconds */
#define IP_DEFAULT_LINK_SPEED   10000

Typedefs

typedef VOID(* OBJECT_FREE_ROUTINE )(PVOID Object)
typedef ULONG IPv4_RAW_ADDRESS
typedef IPv4_RAW_ADDRESSPIPv4_RAW_ADDRESS
typedef USHORT IPv6_RAW_ADDRESS [8]
typedef IPv6_RAW_ADDRESSPIPv6_RAW_ADDRESS
typedef VOID(* PACKET_COMPLETION_ROUTINE )(PVOID Context, PNDIS_PACKET NdisPacket, NDIS_STATUS NdisStatus)
typedef VOID(* LL_TRANSMIT_ROUTINE )(PVOID Context, PNDIS_PACKET NdisPacket, UINT Offset, PVOID LinkAddress, USHORT Type)
typedef VOID(* IP_PROTOCOL_HANDLER )(PIP_INTERFACE Interface, PIP_PACKET IPPacket)

Functions

PIP_PACKET IPCreatePacket (ULONG Type)
PIP_PACKET IPInitializePacket (PIP_PACKET IPPacket, ULONG Type)
PIP_INTERFACE IPCreateInterface (PLLIP_BIND_INFO BindInfo)
VOID IPAddInterfaceRoute (PIP_INTERFACE IF)
VOID IPRemoveInterfaceRoute (PIP_INTERFACE IF)
VOID IPDestroyInterface (PIP_INTERFACE IF)
BOOLEAN IPRegisterInterface (PIP_INTERFACE IF)
VOID IPUnregisterInterface (PIP_INTERFACE IF)
VOID NTAPI IPTimeoutDpcFn (PKDPC Dpc, PVOID DeferredContext, PVOID SystemArgument1, PVOID SystemArgument2)
VOID IPDispatchProtocol (PIP_INTERFACE Interface, PIP_PACKET IPPacket)
VOID IPRegisterProtocol (UINT ProtocolNumber, IP_PROTOCOL_HANDLER Handler)
NTSTATUS IPStartup (PUNICODE_STRING RegistryPath)
NTSTATUS IPShutdown (VOID)

Variables

LIST_ENTRY InterfaceListHead
KSPIN_LOCK InterfaceListLock
LIST_ENTRY NetTableListHead
KSPIN_LOCK NetTableListLock

Generated on Thu May 24 2012 05:09:57 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.