Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygentdiinfo.h
Go to the documentation of this file.
00001 /* 00002 * tdiinfo.h 00003 * 00004 * TDI set and query information interface 00005 * 00006 * This file is part of the w32api package. 00007 * 00008 * Contributors: 00009 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> 00010 * 00011 * THIS SOFTWARE IS NOT COPYRIGHTED 00012 * 00013 * This source code is offered for use in the public domain. You may 00014 * use, modify or distribute it freely. 00015 * 00016 * This code is distributed in the hope that it will be useful but 00017 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY 00018 * DISCLAIMED. This includes but is not limited to warranties of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00020 * 00021 */ 00022 00023 #ifndef __TDIINFO_H 00024 #define __TDIINFO_H 00025 00026 #ifdef __cplusplus 00027 extern "C" { 00028 #endif 00029 00030 typedef struct _TDIEntityID { 00031 ULONG tei_entity; 00032 ULONG tei_instance; 00033 } TDIEntityID; 00034 00035 #define MAX_TDI_ENTITIES 4096 00036 #define INVALID_ENTITY_INSTANCE -1 00037 #define GENERIC_ENTITY 0 00038 #define ENTITY_LIST_ID 0 00039 #define ENTITY_TYPE_ID 1 00040 00041 #define AT_ENTITY 0x280 00042 #define CL_NL_ENTITY 0x301 00043 #define CL_TL_ENTITY 0x401 00044 #define CO_NL_ENTITY 0x300 00045 #define CO_TL_ENTITY 0x400 00046 #define ER_ENTITY 0x380 00047 #define IF_ENTITY 0x200 00048 00049 #define AT_ARP 0x280 00050 #define AT_NULL 0x282 00051 #define CL_TL_NBF 0x401 00052 #define CL_TL_UDP 0x403 00053 #define CL_NL_IPX 0x301 00054 #define CL_NL_IP 0x303 00055 #define CO_TL_NBF 0x400 00056 #define CO_TL_SPX 0x402 00057 #define CO_TL_TCP 0x404 00058 #define CO_TL_SPP 0x406 00059 #define ER_ICMP 0x380 00060 #define IF_GENERIC 0x200 00061 #define IF_MIB 0x202 00062 00063 /* TDIObjectID.toi_class constants */ 00064 #define INFO_CLASS_GENERIC 0x100 00065 #define INFO_CLASS_PROTOCOL 0x200 00066 #define INFO_CLASS_IMPLEMENTATION 0x300 00067 00068 /* TDIObjectID.toi_type constants */ 00069 #define INFO_TYPE_PROVIDER 0x100 00070 #define INFO_TYPE_ADDRESS_OBJECT 0x200 00071 #define INFO_TYPE_CONNECTION 0x300 00072 00073 typedef struct _TDIObjectID { 00074 TDIEntityID toi_entity; 00075 ULONG toi_class; 00076 ULONG toi_type; 00077 ULONG toi_id; 00078 } TDIObjectID; 00079 00080 #define CONTEXT_SIZE 16 00081 00082 typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX { 00083 TDIObjectID ID; 00084 ULONG_PTR Context[CONTEXT_SIZE / sizeof(ULONG_PTR)]; 00085 } TCP_REQUEST_QUERY_INFORMATION_EX, *PTCP_REQUEST_QUERY_INFORMATION_EX; 00086 00087 #if defined(_WIN64) 00088 typedef struct _TCP_REQUEST_QUERY_INFORMATION_EX32 { 00089 TDIObjectID ID; 00090 ULONG32 Context[CONTEXT_SIZE / sizeof(ULONG32)]; 00091 } TCP_REQUEST_QUERY_INFORMATION_EX32, *PTCP_REQUEST_QUERY_INFORMATION_EX32; 00092 #endif /* _WIN64 */ 00093 00094 typedef struct _TCP_REQUEST_SET_INFORMATION_EX { 00095 TDIObjectID ID; 00096 unsigned int BufferSize; 00097 unsigned char Buffer[1]; 00098 } TCP_REQUEST_SET_INFORMATION_EX, *PTCP_REQUEST_SET_INFORMATION_EX; 00099 00100 #ifdef __cplusplus 00101 } 00102 #endif 00103 00104 #endif /* __TDIINFO_H */ Generated on Fri May 25 2012 04:30:57 for ReactOS by
1.7.6.1
|