ReactOS  0.4.13-dev-79-gcd489d8
ndrtypes.h File Reference
#include <limits.h>
Include dependency graph for ndrtypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  PARAM_ATTRIBUTES
 
struct  INTERPRETER_OPT_FLAGS
 
struct  INTERPRETER_OPT_FLAGS2
 
struct  NDR_PROC_HEADER_EXTS
 
struct  NDR_PROC_HEADER_EXTS64
 

Macros

#define FC_ALLOCATE_ALL_NODES   0x01
 
#define FC_DONT_FREE   0x02
 
#define FC_ALLOCED_ON_STACK   0x04
 
#define FC_SIMPLE_POINTER   0x08
 
#define FC_POINTER_DEREF   0x10
 
#define HANDLE_PARAM_IS_VIA_PTR   0x80
 
#define HANDLE_PARAM_IS_IN   0x40
 
#define HANDLE_PARAM_IS_OUT   0x20
 
#define HANDLE_PARAM_IS_RETURN   0x10
 
#define NDR_STRICT_CONTEXT_HANDLE   0x08
 
#define NDR_CONTEXT_HANDLE_NOSERIALIZE   0x04
 
#define NDR_CONTEXT_HANDLE_SERIALIZE   0x02
 
#define NDR_CONTEXT_HANDLE_CANNOT_BE_NULL   0x01
 
#define Oi_FULL_PTR_USED   0x01
 
#define Oi_RPCSS_ALLOC_USED   0x02
 
#define Oi_OBJECT_PROC   0x04
 
#define Oi_HAS_RPCFLAGS   0x08
 
#define Oi_OBJ_USE_V2_INTERPRETER   0x20
 
#define Oi_HAS_COMM_OR_FAULT   0x20
 
#define Oi_USE_NEW_INIT_ROUTINES   0x40
 
#define FC_NORMAL_CONFORMANCE   (unsigned char) 0x00
 
#define FC_POINTER_CONFORMANCE   (unsigned char) 0x10
 
#define FC_TOP_LEVEL_CONFORMANCE   (unsigned char) 0x20
 
#define FC_CONSTANT_CONFORMANCE   (unsigned char) 0x40
 
#define FC_TOP_LEVEL_MULTID_CONFORMANCE   (unsigned char) 0x80
 
#define USER_MARSHAL_UNIQUE   0x80
 
#define USER_MARSHAL_REF   0x40
 
#define USER_MARSHAL_POINTER   0xc0
 
#define USER_MARSHAL_IID   0x20
 

Typedefs

typedef struct INTERPRETER_OPT_FLAGSPINTERPRETER_OPT_FLAGS
 
typedef struct INTERPRETER_OPT_FLAGS2PINTERPRETER_OPT_FLAGS2
 

Enumerations

enum  FORMAT_CHARACTER {
  FC_BYTE = 0x01, FC_CHAR, FC_SMALL, FC_USMALL,
  FC_WCHAR, FC_SHORT, FC_USHORT, FC_LONG,
  FC_ULONG, FC_FLOAT, FC_HYPER, FC_DOUBLE,
  FC_ENUM16, FC_ENUM32, FC_IGNORE, FC_ERROR_STATUS_T,
  FC_RP, FC_UP, FC_OP, FC_FP,
  FC_STRUCT, FC_PSTRUCT, FC_CSTRUCT, FC_CPSTRUCT,
  FC_CVSTRUCT, FC_BOGUS_STRUCT, FC_CARRAY, FC_CVARRAY,
  FC_SMFARRAY, FC_LGFARRAY, FC_SMVARRAY, FC_LGVARRAY,
  FC_BOGUS_ARRAY, FC_C_CSTRING, FC_C_BSTRING, FC_C_SSTRING,
  FC_C_WSTRING, FC_CSTRING, FC_BSTRING, FC_SSTRING,
  FC_WSTRING, FC_ENCAPSULATED_UNION, FC_NON_ENCAPSULATED_UNION, FC_BYTE_COUNT_POINTER,
  FC_TRANSMIT_AS, FC_REPRESENT_AS, FC_IP, FC_BIND_CONTEXT,
  FC_BIND_GENERIC, FC_BIND_PRIMITIVE, FC_AUTO_HANDLE, FC_CALLBACK_HANDLE,
  FC_UNUSED1, FC_POINTER, FC_ALIGNM2, FC_ALIGNM4,
  FC_ALIGNM8, FC_UNUSED2, FC_UNUSED3, FC_UNUSED4,
  FC_STRUCTPAD1, FC_STRUCTPAD2, FC_STRUCTPAD3, FC_STRUCTPAD4,
  FC_STRUCTPAD5, FC_STRUCTPAD6, FC_STRUCTPAD7, FC_STRING_SIZED,
  FC_UNUSED5, FC_NO_REPEAT, FC_FIXED_REPEAT, FC_VARIABLE_REPEAT,
  FC_FIXED_OFFSET, FC_VARIABLE_OFFSET, FC_PP, FC_EMBEDDED_COMPLEX,
  FC_IN_PARAM, FC_IN_PARAM_BASETYPE, FC_IN_PARAM_NO_FREE_INST, FC_IN_OUT_PARAM,
  FC_OUT_PARAM, FC_RETURN_PARAM, FC_RETURN_PARAM_BASETYPE, FC_DEREFERENCE,
  FC_DIV_2, FC_MULT_2, FC_ADD_1, FC_SUB_1,
  FC_CALLBACK, FC_CONSTANT_IID, FC_END, FC_PAD,
  FC_HARD_STRUCT = 0xb1, FC_TRANSMIT_AS_PTR, FC_REPRESENT_AS_PTR, FC_USER_MARSHAL,
  FC_PIPE, FC_BLKHOLE, FC_RANGE, FC_INT3264,
  FC_UINT3264
}
 

Macro Definition Documentation

◆ FC_ALLOCATE_ALL_NODES

#define FC_ALLOCATE_ALL_NODES   0x01

Definition at line 272 of file ndrtypes.h.

◆ FC_ALLOCED_ON_STACK

#define FC_ALLOCED_ON_STACK   0x04

Definition at line 274 of file ndrtypes.h.

◆ FC_CONSTANT_CONFORMANCE

#define FC_CONSTANT_CONFORMANCE   (unsigned char) 0x40

Definition at line 301 of file ndrtypes.h.

◆ FC_DONT_FREE

#define FC_DONT_FREE   0x02

Definition at line 273 of file ndrtypes.h.

◆ FC_NORMAL_CONFORMANCE

#define FC_NORMAL_CONFORMANCE   (unsigned char) 0x00

Definition at line 298 of file ndrtypes.h.

◆ FC_POINTER_CONFORMANCE

#define FC_POINTER_CONFORMANCE   (unsigned char) 0x10

Definition at line 299 of file ndrtypes.h.

◆ FC_POINTER_DEREF

#define FC_POINTER_DEREF   0x10

Definition at line 276 of file ndrtypes.h.

◆ FC_SIMPLE_POINTER

#define FC_SIMPLE_POINTER   0x08

Definition at line 275 of file ndrtypes.h.

◆ FC_TOP_LEVEL_CONFORMANCE

#define FC_TOP_LEVEL_CONFORMANCE   (unsigned char) 0x20

Definition at line 300 of file ndrtypes.h.

◆ FC_TOP_LEVEL_MULTID_CONFORMANCE

#define FC_TOP_LEVEL_MULTID_CONFORMANCE   (unsigned char) 0x80

Definition at line 302 of file ndrtypes.h.

◆ HANDLE_PARAM_IS_IN

#define HANDLE_PARAM_IS_IN   0x40

Definition at line 280 of file ndrtypes.h.

◆ HANDLE_PARAM_IS_OUT

#define HANDLE_PARAM_IS_OUT   0x20

Definition at line 281 of file ndrtypes.h.

◆ HANDLE_PARAM_IS_RETURN

#define HANDLE_PARAM_IS_RETURN   0x10

Definition at line 282 of file ndrtypes.h.

◆ HANDLE_PARAM_IS_VIA_PTR

#define HANDLE_PARAM_IS_VIA_PTR   0x80

Definition at line 279 of file ndrtypes.h.

◆ NDR_CONTEXT_HANDLE_CANNOT_BE_NULL

#define NDR_CONTEXT_HANDLE_CANNOT_BE_NULL   0x01

Definition at line 288 of file ndrtypes.h.

◆ NDR_CONTEXT_HANDLE_NOSERIALIZE

#define NDR_CONTEXT_HANDLE_NOSERIALIZE   0x04

Definition at line 286 of file ndrtypes.h.

◆ NDR_CONTEXT_HANDLE_SERIALIZE

#define NDR_CONTEXT_HANDLE_SERIALIZE   0x02

Definition at line 287 of file ndrtypes.h.

◆ NDR_STRICT_CONTEXT_HANDLE

#define NDR_STRICT_CONTEXT_HANDLE   0x08

Definition at line 285 of file ndrtypes.h.

◆ Oi_FULL_PTR_USED

#define Oi_FULL_PTR_USED   0x01

Definition at line 290 of file ndrtypes.h.

◆ Oi_HAS_COMM_OR_FAULT

#define Oi_HAS_COMM_OR_FAULT   0x20

Definition at line 295 of file ndrtypes.h.

◆ Oi_HAS_RPCFLAGS

#define Oi_HAS_RPCFLAGS   0x08

Definition at line 293 of file ndrtypes.h.

◆ Oi_OBJ_USE_V2_INTERPRETER

#define Oi_OBJ_USE_V2_INTERPRETER   0x20

Definition at line 294 of file ndrtypes.h.

◆ Oi_OBJECT_PROC

#define Oi_OBJECT_PROC   0x04

Definition at line 292 of file ndrtypes.h.

◆ Oi_RPCSS_ALLOC_USED

#define Oi_RPCSS_ALLOC_USED   0x02

Definition at line 291 of file ndrtypes.h.

◆ Oi_USE_NEW_INIT_ROUTINES

#define Oi_USE_NEW_INIT_ROUTINES   0x40

Definition at line 296 of file ndrtypes.h.

◆ USER_MARSHAL_IID

#define USER_MARSHAL_IID   0x20

Definition at line 307 of file ndrtypes.h.

◆ USER_MARSHAL_POINTER

#define USER_MARSHAL_POINTER   0xc0

Definition at line 306 of file ndrtypes.h.

◆ USER_MARSHAL_REF

#define USER_MARSHAL_REF   0x40

Definition at line 305 of file ndrtypes.h.

◆ USER_MARSHAL_UNIQUE

#define USER_MARSHAL_UNIQUE   0x80

Definition at line 304 of file ndrtypes.h.

Typedef Documentation

◆ PINTERPRETER_OPT_FLAGS

◆ PINTERPRETER_OPT_FLAGS2

Enumeration Type Documentation

◆ FORMAT_CHARACTER

Enumerator
FC_BYTE 
FC_CHAR 
FC_SMALL 
FC_USMALL 
FC_WCHAR 
FC_SHORT 
FC_USHORT 
FC_LONG 
FC_ULONG 
FC_FLOAT 
FC_HYPER 
FC_DOUBLE 
FC_ENUM16 
FC_ENUM32 
FC_IGNORE 
FC_ERROR_STATUS_T 
FC_RP 
FC_UP 
FC_OP 
FC_FP 
FC_STRUCT 
FC_PSTRUCT 
FC_CSTRUCT 
FC_CPSTRUCT 
FC_CVSTRUCT 
FC_BOGUS_STRUCT 
FC_CARRAY 
FC_CVARRAY 
FC_SMFARRAY 
FC_LGFARRAY 
FC_SMVARRAY 
FC_LGVARRAY 
FC_BOGUS_ARRAY 
FC_C_CSTRING 
FC_C_BSTRING 
FC_C_SSTRING 
FC_C_WSTRING 
FC_CSTRING 
FC_BSTRING 
FC_SSTRING 
FC_WSTRING 
FC_ENCAPSULATED_UNION 
FC_NON_ENCAPSULATED_UNION 
FC_BYTE_COUNT_POINTER 
FC_TRANSMIT_AS 
FC_REPRESENT_AS 
FC_IP 
FC_BIND_CONTEXT 
FC_BIND_GENERIC 
FC_BIND_PRIMITIVE 
FC_AUTO_HANDLE 
FC_CALLBACK_HANDLE 
FC_UNUSED1 
FC_POINTER 
FC_ALIGNM2 
FC_ALIGNM4 
FC_ALIGNM8 
FC_UNUSED2 
FC_UNUSED3 
FC_UNUSED4 
FC_STRUCTPAD1 
FC_STRUCTPAD2 
FC_STRUCTPAD3 
FC_STRUCTPAD4 
FC_STRUCTPAD5 
FC_STRUCTPAD6 
FC_STRUCTPAD7 
FC_STRING_SIZED 
FC_UNUSED5 
FC_NO_REPEAT 
FC_FIXED_REPEAT 
FC_VARIABLE_REPEAT 
FC_FIXED_OFFSET 
FC_VARIABLE_OFFSET 
FC_PP 
FC_EMBEDDED_COMPLEX 
FC_IN_PARAM 
FC_IN_PARAM_BASETYPE 
FC_IN_PARAM_NO_FREE_INST 
FC_IN_OUT_PARAM 
FC_OUT_PARAM 
FC_RETURN_PARAM 
FC_RETURN_PARAM_BASETYPE 
FC_DEREFERENCE 
FC_DIV_2 
FC_MULT_2 
FC_ADD_1 
FC_SUB_1 
FC_CALLBACK 
FC_CONSTANT_IID 
FC_END 
FC_PAD 
FC_HARD_STRUCT 
FC_TRANSMIT_AS_PTR 
FC_REPRESENT_AS_PTR 
FC_USER_MARSHAL 
FC_PIPE 
FC_BLKHOLE 
FC_RANGE 
FC_INT3264 
FC_UINT3264 

Definition at line 133 of file ndrtypes.h.

134 {
135  FC_BYTE = 0x01, /* 0x01 */
136  FC_CHAR, /* 0x02 */
137  FC_SMALL, /* 0x03 */
138  FC_USMALL, /* 0x04 */
139  FC_WCHAR, /* 0x05 */
140  FC_SHORT, /* 0x06 */
141  FC_USHORT, /* 0x07 */
142  FC_LONG, /* 0x08 */
143  FC_ULONG, /* 0x09 */
144  FC_FLOAT, /* 0x0a */
145  FC_HYPER, /* 0x0b */
146  FC_DOUBLE, /* 0x0c */
147  FC_ENUM16, /* 0x0d */
148  FC_ENUM32, /* 0x0e */
149  FC_IGNORE, /* 0x0f */
150  FC_ERROR_STATUS_T, /* 0x10 */
151 
152  FC_RP, /* 0x11 */ /* reference pointer */
153  FC_UP, /* 0x12 */ /* unique pointer */
154  FC_OP, /* 0x13 */ /* object pointer */
155  FC_FP, /* 0x14 */ /* full pointer */
156 
157  FC_STRUCT, /* 0x15 */ /* simple structure */
158  FC_PSTRUCT, /* 0x16 */ /* simple structure w/ pointers */
159  FC_CSTRUCT, /* 0x17 */ /* conformant structure */
160  FC_CPSTRUCT, /* 0x18 */ /* conformant structure w/ pointers */
161  FC_CVSTRUCT, /* 0x19 */ /* conformant varying struct */
162  FC_BOGUS_STRUCT, /* 0x1a */ /* complex structure */
163 
164  FC_CARRAY, /* 0x1b */ /* conformant array */
165  FC_CVARRAY, /* 0x1c */ /* conformant varying array */
166  FC_SMFARRAY, /* 0x1d */ /* small (<64K) fixed array */
167  FC_LGFARRAY, /* 0x1e */ /* large (>= 64k) fixed array */
168  FC_SMVARRAY, /* 0x1f */ /* small (<64k) varying array */
169  FC_LGVARRAY, /* 0x20 */ /* large (>= 64k) varying array */
170  FC_BOGUS_ARRAY, /* 0x21 */ /* complex array */
171 
172  FC_C_CSTRING, /* 0x22 */ /* conformant char string */
173  FC_C_BSTRING, /* 0x23 */
174  FC_C_SSTRING, /* 0x24 */
175  FC_C_WSTRING, /* 0x25 */ /* conformant wchar string */
176  FC_CSTRING, /* 0x26 */ /* non-conformant char string */
177  FC_BSTRING, /* 0x27 */
178  FC_SSTRING, /* 0x28 */
179  FC_WSTRING, /* 0x29 */ /* non-conformant wchar string */
180 
181  FC_ENCAPSULATED_UNION, /* 0x2a */
182  FC_NON_ENCAPSULATED_UNION, /* 0x2b */
183 
184  FC_BYTE_COUNT_POINTER, /* 0x2c */ /* [byte_count] ACF attribute */
185 
186  FC_TRANSMIT_AS, /* 0x2d */
187  FC_REPRESENT_AS, /* 0x2e */
188 
189  FC_IP, /* 0x2f */ /* interface pointer */
190 
191  FC_BIND_CONTEXT, /* 0x30 */
192 
193  FC_BIND_GENERIC, /* 0x31 */
194  FC_BIND_PRIMITIVE, /* 0x32 */
195  FC_AUTO_HANDLE, /* 0x33 */
196  FC_CALLBACK_HANDLE, /* 0x34 */
197 
198  FC_UNUSED1, /* 0x35 */
199 
200  FC_POINTER, /* 0x36 */
201 
202  FC_ALIGNM2, /* 0x37 */
203  FC_ALIGNM4, /* 0x38 */
204  FC_ALIGNM8, /* 0x39 */
205 
206  FC_UNUSED2, /* 0x3a */
207  FC_UNUSED3, /* 0x3b */
208  FC_UNUSED4, /* 0x3c */
209 
210  FC_STRUCTPAD1, /* 0x3d */
211  FC_STRUCTPAD2, /* 0x3e */
212  FC_STRUCTPAD3, /* 0x3f */
213  FC_STRUCTPAD4, /* 0x40 */
214  FC_STRUCTPAD5, /* 0x41 */
215  FC_STRUCTPAD6, /* 0x42 */
216  FC_STRUCTPAD7, /* 0x43 */
217 
218  FC_STRING_SIZED, /* 0x44 */
219 
220  FC_UNUSED5, /* 0x45 */
221 
222  FC_NO_REPEAT, /* 0x46 */
223  FC_FIXED_REPEAT, /* 0x47 */
224  FC_VARIABLE_REPEAT, /* 0x48 */
225  FC_FIXED_OFFSET, /* 0x49 */
226  FC_VARIABLE_OFFSET, /* 0x4a */
227 
228  FC_PP, /* 0x4b */ /* pointer layout */
229 /* FC_PP: FC_PAD layouts */
230 /* layouts: FC_NO_REPEAT FC_PAD instance */
231 /* instance: NdrFcShort(memofs), NdrFcShort(bufofs), desc */
232 
233  FC_EMBEDDED_COMPLEX, /* 0x4c */
234 
235  FC_IN_PARAM, /* 0x4d */
236  FC_IN_PARAM_BASETYPE, /* 0x4e */
237  FC_IN_PARAM_NO_FREE_INST, /* 0x4f */
238  FC_IN_OUT_PARAM, /* 0x50 */
239  FC_OUT_PARAM, /* 0x51 */
240  FC_RETURN_PARAM, /* 0x52 */
241  FC_RETURN_PARAM_BASETYPE, /* 0x53 */
242 
243  FC_DEREFERENCE, /* 0x54 */
244  FC_DIV_2, /* 0x55 */
245  FC_MULT_2, /* 0x56 */
246  FC_ADD_1, /* 0x57 */
247  FC_SUB_1, /* 0x58 */
248 
249  FC_CALLBACK, /* 0x59 */
250 
251  FC_CONSTANT_IID, /* 0x5a */
252 
253  FC_END, /* 0x5b */
254  FC_PAD, /* 0x5c */
255 
256  FC_HARD_STRUCT = 0xb1,
257 
258  FC_TRANSMIT_AS_PTR, /* 0xb2 */
259  FC_REPRESENT_AS_PTR, /* 0xb3 */
260 
261  FC_USER_MARSHAL, /* 0xb4 */
262 
263  FC_PIPE, /* 0xb5 */
264  FC_BLKHOLE, /* 0xb6 */
265 
266  FC_RANGE, /* 0xb7 */
267 
268  FC_INT3264, /* 0xb8 */
269  FC_UINT3264, /* 0xb9 */
FORMAT_CHARACTER
Definition: ndrtypes.h:133