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

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

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