ReactOS 0.4.16-dev-117-g38f21f9
|
#include <assert.h>
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <limits.h>
#include "windef.h"
#include "winbase.h"
#include "winerror.h"
#include "ndr_misc.h"
#include "rpcndr.h"
#include "ndrtypes.h"
#include "wine/debug.h"
#include "pshpack1.h"
#include "poppack.h"
Go to the source code of this file.
Classes | |
struct | _NDR_MEMORY_LIST |
struct | NDR_RANGE |
struct | _NDR_CSTRUCT_FORMAT |
struct | NDR_SMFARRAY_FORMAT |
struct | NDR_LGFARRAY_FORMAT |
Macros | |
#define | NONAMELESSUNION |
#define | LITTLE_ENDIAN_UINT32_WRITE(pchar, uint32) |
#define | LITTLE_ENDIAN_UINT32_READ(pchar) |
#define | BIG_ENDIAN_UINT32_WRITE(pchar, uint32) |
#define | BIG_ENDIAN_UINT32_READ(pchar) |
#define | NDR_LOCAL_UINT32_WRITE(pchar, uint32) LITTLE_ENDIAN_UINT32_WRITE(pchar, uint32) |
#define | NDR_LOCAL_UINT32_READ(pchar) LITTLE_ENDIAN_UINT32_READ(pchar) |
#define | STD_OVERFLOW_CHECK(_Msg) |
#define | NDR_POINTER_ID_BASE 0x20000 |
#define | NDR_POINTER_ID(pStubMsg) (NDR_POINTER_ID_BASE + ((pStubMsg)->UniquePtrCount++) * 4) |
#define | NDR_TABLE_SIZE 128 |
#define | NDR_TABLE_MASK 127 |
#define | MEML_MAGIC ('M' << 24 | 'E' << 16 | 'M' << 8 | 'L') |
#define | BASE_TYPE_UNMARSHALL(type) |
#define | USER_MARSHAL_PTR_PREFIX |
#define | RANGE_UNMARSHALL(mem_type, wire_type, format_spec) |
#define | BASE_TYPE_UNMARSHALL(type) |
Typedefs | |
typedef struct _NDR_MEMORY_LIST | NDR_MEMORY_LIST |
typedef struct _NDR_CSTRUCT_FORMAT | NDR_CSTRUCT_FORMAT |
typedef struct _NDR_CSTRUCT_FORMAT | NDR_CVSTRUCT_FORMAT |
#define BIG_ENDIAN_UINT32_READ | ( | pchar | ) |
Definition at line 75 of file ndr_marshall.c.
Definition at line 69 of file ndr_marshall.c.
#define LITTLE_ENDIAN_UINT32_READ | ( | pchar | ) |
Definition at line 63 of file ndr_marshall.c.
Definition at line 400 of file ndr_marshall.c.
#define NDR_LOCAL_UINT32_READ | ( | pchar | ) | LITTLE_ENDIAN_UINT32_READ(pchar) |
Definition at line 88 of file ndr_marshall.c.
#define NDR_LOCAL_UINT32_WRITE | ( | pchar, | |
uint32 | |||
) | LITTLE_ENDIAN_UINT32_WRITE(pchar, uint32) |
Definition at line 86 of file ndr_marshall.c.
#define NDR_POINTER_ID | ( | pStubMsg | ) | (NDR_POINTER_ID_BASE + ((pStubMsg)->UniquePtrCount++) * 4) |
Definition at line 130 of file ndr_marshall.c.
#define NDR_POINTER_ID_BASE 0x20000 |
Definition at line 129 of file ndr_marshall.c.
#define NDR_TABLE_MASK 127 |
Definition at line 132 of file ndr_marshall.c.
#define NDR_TABLE_SIZE 128 |
Definition at line 131 of file ndr_marshall.c.
#define NONAMELESSUNION |
Definition at line 36 of file ndr_marshall.c.
#define RANGE_UNMARSHALL | ( | mem_type, | |
wire_type, | |||
format_spec | |||
) |
#define STD_OVERFLOW_CHECK | ( | _Msg | ) |
Definition at line 123 of file ndr_marshall.c.
#define USER_MARSHAL_PTR_PREFIX |
Definition at line 4389 of file ndr_marshall.c.
typedef struct _NDR_MEMORY_LIST NDR_MEMORY_LIST |
Definition at line 92 of file ndr_marshall.c.
Referenced by array_buffer_size(), ComplexBufferSize(), ComplexStructMemorySize(), ComplexStructSize(), NdrBaseTypeBufferSize(), NdrBaseTypeMemorySize(), NdrComplexStructBufferSize(), NdrConformantStructBufferSize(), NdrConformantVaryingStructBufferSize(), NdrContextHandleBufferSize(), NdrEncapsulatedUnionBufferSize(), NdrFixedArrayBufferSize(), NdrPointerBufferSize(), NdrPointerMemorySize(), NdrSimpleStructBufferSize(), NdrUserMarshalBufferSize(), NdrVaryingArrayBufferSize(), PointerMemorySize(), SizeConformance(), SizeVariance(), union_arm_buffer_size(), and union_arm_memory_size().
Definition at line 97 of file ndr_marshall.c.
Referenced by array_memory_size(), array_read_variance_and_unmarshall(), ComplexStructMemorySize(), ComplexUnmarshall(), NdrBaseTypeMemorySize(), NdrBaseTypeUnmarshall(), NdrClientContextUnmarshall(), NdrComplexStructMemorySize(), NdrComplexStructUnmarshall(), NdrConformantStructUnmarshall(), NdrConformantVaryingStructMemorySize(), NdrConformantVaryingStructUnmarshall(), NdrEncapsulatedUnionMemorySize(), NdrEncapsulatedUnionUnmarshall(), NdrFixedArrayMemorySize(), NdrFixedArrayUnmarshall(), NdrPointerMemorySize(), NdrPointerUnmarshall(), NdrServerContextMarshall(), NdrServerContextNewMarshall(), NdrServerContextNewUnmarshall(), NdrServerContextUnmarshall(), NdrSimpleStructMemorySize(), NdrSimpleStructUnmarshall(), NdrSimpleTypeUnmarshall(), NdrUserMarshalMemorySize(), NdrUserMarshalUnmarshall(), NdrVaryingArrayMemorySize(), NdrVaryingArrayUnmarshall(), ReadConformance(), ReadVariance(), union_arm_memory_size(), union_arm_unmarshall(), and unmarshall_discriminant().
Definition at line 103 of file ndr_marshall.c.
Referenced by array_write_variance_and_marshall(), ComplexMarshall(), NdrBaseTypeMarshall(), NdrClientContextMarshall(), NdrComplexStructMarshall(), NdrConformantStructMarshall(), NdrConformantVaryingStructMarshall(), NdrEncapsulatedUnionMarshall(), NdrFixedArrayMarshall(), NdrPointerMarshall(), NdrSimpleStructMarshall(), NdrUserMarshalMarshall(), NdrVaryingArrayMarshall(), union_arm_marshall(), WriteConformance(), and WriteVariance().
|
inlinestatic |
Definition at line 110 of file ndr_marshall.c.
Referenced by ComplexBufferSize(), ComplexFree(), and ComplexMarshall().
|
inlinestatic |
Definition at line 1896 of file ndr_marshall.c.
Referenced by NdrComplexArrayBufferSize(), NdrComplexStructBufferSize(), NdrConformantArrayBufferSize(), NdrConformantStringBufferSize(), NdrConformantVaryingArrayBufferSize(), and NdrConformantVaryingStructBufferSize().
|
inlinestatic |
Definition at line 1846 of file ndr_marshall.c.
Referenced by NdrComplexArrayBufferSize(), NdrComplexStructBufferSize(), NdrConformantArrayBufferSize(), NdrConformantStringBufferSize(), NdrConformantVaryingArrayBufferSize(), and NdrConformantVaryingStructBufferSize().
|
inlinestatic |
Definition at line 1968 of file ndr_marshall.c.
Referenced by NdrComplexArrayMarshall(), NdrComplexStructMarshall(), NdrConformantArrayMarshall(), NdrConformantStringMarshall(), NdrConformantVaryingArrayMarshall(), and NdrConformantVaryingStructMarshall().
|
inlinestatic |
Definition at line 2401 of file ndr_marshall.c.
Referenced by NdrComplexStructFree(), NdrConformantArrayFree(), NdrConformantVaryingArrayFree(), and NdrConformantVaryingStructFree().
|
inlinestatic |
Definition at line 2300 of file ndr_marshall.c.
Referenced by NdrComplexArrayMemorySize(), NdrComplexStructMemorySize(), NdrConformantArrayMemorySize(), NdrConformantStringMemorySize(), NdrConformantVaryingArrayMemorySize(), and NdrConformantVaryingStructMemorySize().
|
inlinestatic |
Definition at line 2095 of file ndr_marshall.c.
Referenced by NdrComplexArrayMemorySize(), NdrComplexArrayUnmarshall(), NdrComplexStructMemorySize(), NdrComplexStructUnmarshall(), NdrConformantArrayMemorySize(), NdrConformantArrayUnmarshall(), NdrConformantStringMemorySize(), NdrConformantStringUnmarshall(), NdrConformantVaryingArrayMemorySize(), NdrConformantVaryingArrayUnmarshall(), NdrConformantVaryingStructMemorySize(), and NdrConformantVaryingStructUnmarshall().
|
inlinestatic |
Definition at line 2141 of file ndr_marshall.c.
Referenced by NdrComplexArrayUnmarshall(), NdrComplexStructUnmarshall(), NdrConformantArrayUnmarshall(), NdrConformantStringUnmarshall(), NdrConformantVaryingArrayUnmarshall(), and NdrConformantVaryingStructUnmarshall().
|
inlinestatic |
Definition at line 2019 of file ndr_marshall.c.
Referenced by NdrComplexArrayMarshall(), NdrComplexStructMarshall(), NdrConformantArrayMarshall(), NdrConformantStringMarshall(), NdrConformantVaryingArrayMarshall(), and NdrConformantVaryingStructMarshall().
|
static |
Definition at line 3178 of file ndr_marshall.c.
Referenced by array_buffer_size(), and NdrComplexStructBufferSize().
|
static |
Definition at line 3303 of file ndr_marshall.c.
Referenced by array_free(), NdrComplexArrayFree(), and NdrComplexStructFree().
|
static |
Definition at line 2842 of file ndr_marshall.c.
Referenced by array_write_variance_and_marshall(), and NdrComplexStructMarshall().
|
static |
Definition at line 3404 of file ndr_marshall.c.
Referenced by array_memory_size(), and NdrComplexStructMemorySize().
ULONG ComplexStructSize | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
PFORMAT_STRING | pFormat | ||
) |
Definition at line 3522 of file ndr_marshall.c.
Referenced by array_memory_size(), array_read_conformance(), array_read_variance_and_unmarshall(), calc_arg_size(), NdrComplexStructBufferSize(), and NdrComplexStructMarshall().
|
static |
Definition at line 3001 of file ndr_marshall.c.
Referenced by array_read_variance_and_unmarshall(), and NdrComplexStructUnmarshall().
PFORMAT_STRING ComputeConformanceOrVariance | ( | MIDL_STUB_MESSAGE * | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat, | ||
ULONG_PTR | def, | ||
ULONG_PTR * | pCount | ||
) |
Definition at line 556 of file ndr_marshall.c.
Referenced by ComputeConformance(), and ComputeVariance().
Definition at line 795 of file ndr_marshall.c.
Referenced by PointerBufferSize(), PointerFree(), PointerMarshall(), PointerMemorySize(), and PointerUnmarshall().
|
static |
Definition at line 2827 of file ndr_marshall.c.
Referenced by ComplexStructMemorySize().
|
static |
Definition at line 2766 of file ndr_marshall.c.
Referenced by ComplexBufferSize(), ComplexFree(), ComplexMarshall(), ComplexStructSize(), and ComplexUnmarshall().
|
static |
Definition at line 1337 of file ndr_marshall.c.
Referenced by array_buffer_size(), NdrConformantStructBufferSize(), NdrConformantVaryingStructBufferSize(), NdrFixedArrayBufferSize(), NdrSimpleStructBufferSize(), and NdrVaryingArrayBufferSize().
|
static |
Definition at line 1480 of file ndr_marshall.c.
Referenced by array_free(), NdrConformantStructFree(), NdrConformantVaryingStructFree(), NdrFixedArrayFree(), NdrSimpleStructFree(), and NdrVaryingArrayFree().
|
static |
Definition at line 1177 of file ndr_marshall.c.
Referenced by array_write_variance_and_marshall(), NdrConformantStructMarshall(), NdrConformantVaryingStructMarshall(), NdrFixedArrayMarshall(), NdrSimpleStructMarshall(), and NdrVaryingArrayMarshall().
|
static |
Definition at line 1410 of file ndr_marshall.c.
Referenced by array_memory_size(), NdrConformantVaryingStructMemorySize(), NdrFixedArrayMemorySize(), NdrSimpleStructMemorySize(), and NdrVaryingArrayMemorySize().
|
static |
Definition at line 1260 of file ndr_marshall.c.
Referenced by array_read_variance_and_unmarshall(), NdrConformantStructUnmarshall(), NdrConformantVaryingStructUnmarshall(), NdrFixedArrayUnmarshall(), NdrSimpleStructUnmarshall(), and NdrVaryingArrayUnmarshall().
|
static |
Definition at line 5685 of file ndr_marshall.c.
Referenced by union_arm_buffer_size(), union_arm_free(), union_arm_marshall(), union_arm_memory_size(), and union_arm_unmarshall().
Definition at line 5661 of file ndr_marshall.c.
Referenced by NdrEncapsulatedUnionBufferSize(), NdrEncapsulatedUnionFree(), NdrEncapsulatedUnionMarshall(), NdrEncapsulatedUnionMemorySize(), and NdrEncapsulatedUnionUnmarshall().
|
inlinestatic |
Definition at line 463 of file ndr_marshall.c.
Referenced by array_buffer_size(), array_compute_and_size_conformance(), array_compute_and_write_conformance(), array_read_conformance(), array_write_variance_and_marshall(), ComputeConformanceOrVariance(), and ReadVariance().
void *WINAPI NdrAllocate | ( | MIDL_STUB_MESSAGE * | pStubMsg, |
SIZE_T | len | ||
) |
Definition at line 419 of file ndr_marshall.c.
Referenced by array_read_variance_and_unmarshall(), NdrAllocateZero(), NdrBaseTypeUnmarshall(), NdrEncapsulatedUnionUnmarshall(), NdrNonConformantStringUnmarshall(), NdrNonEncapsulatedUnionUnmarshall(), NdrUserMarshalUnmarshall(), stub_do_args(), and test_ndr_allocate().
|
static |
Definition at line 449 of file ndr_marshall.c.
Referenced by array_read_variance_and_unmarshall(), NdrComplexStructUnmarshall(), NdrConformantStructUnmarshall(), NdrConformantVaryingStructUnmarshall(), NdrFixedArrayUnmarshall(), NdrSimpleStructUnmarshall(), NdrVaryingArrayUnmarshall(), and PointerUnmarshall().
|
static |
Definition at line 6811 of file ndr_marshall.c.
Referenced by NdrEncapsulatedUnionBufferSize(), NdrNonEncapsulatedUnionBufferSize(), NdrRangeBufferSize(), and union_arm_buffer_size().
|
static |
Definition at line 6948 of file ndr_marshall.c.
|
static |
Definition at line 6617 of file ndr_marshall.c.
Referenced by NdrEncapsulatedUnionMarshall(), NdrNonEncapsulatedUnionMarshall(), NdrRangeMarshall(), NdrSimpleTypeMarshall(), and union_arm_marshall().
|
static |
Definition at line 6867 of file ndr_marshall.c.
Referenced by NdrRangeMemorySize(), and union_arm_memory_size().
|
static |
Definition at line 6693 of file ndr_marshall.c.
Referenced by NdrEncapsulatedUnionUnmarshall(), and union_arm_unmarshall().
void WINAPI NdrByteCountPointerBufferSize | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 6355 of file ndr_marshall.c.
void WINAPI NdrByteCountPointerFree | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 6375 of file ndr_marshall.c.
unsigned char *WINAPI NdrByteCountPointerMarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 6332 of file ndr_marshall.c.
|
static |
Definition at line 6365 of file ndr_marshall.c.
unsigned char *WINAPI NdrByteCountPointerUnmarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char ** | ppMemory, | ||
PFORMAT_STRING | pFormat, | ||
unsigned char | fMustAlloc | ||
) |
Definition at line 6343 of file ndr_marshall.c.
void WINAPI NdrClearOutParameters | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
PFORMAT_STRING | pFormat, | ||
void * | ArgAddr | ||
) |
Definition at line 4661 of file ndr_marshall.c.
Referenced by client_do_args().
void WINAPI NdrClientContextMarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
NDR_CCONTEXT | ContextHandle, | ||
int | fCheck | ||
) |
Definition at line 7057 of file ndr_marshall.c.
Referenced by CtxClose(), CtxHello(), m_CtxClose(), m_CtxHello(), m_CtxOpen2(), and NdrContextHandleMarshall().
void WINAPI NdrClientContextUnmarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
NDR_CCONTEXT * | pContextHandle, | ||
RPC_BINDING_HANDLE | BindHandle | ||
) |
Definition at line 7082 of file ndr_marshall.c.
Referenced by CtxClose(), CtxOpen(), m_CtxClose(), m_CtxOpen(), m_CtxOpen2(), and NdrContextHandleUnmarshall().
void WINAPI NdrComplexArrayBufferSize | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 4271 of file ndr_marshall.c.
Referenced by NdrComplexArrayBufferSize(), and NdrComplexArrayMarshall().
void WINAPI NdrComplexArrayFree | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 4346 of file ndr_marshall.c.
unsigned char *WINAPI NdrComplexArrayMarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char * | pMemory, | ||
PFORMAT_STRING | pFormat | ||
) |
Definition at line 4155 of file ndr_marshall.c.
ULONG WINAPI NdrComplexArrayMemorySize | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
PFORMAT_STRING | pFormat | ||
) |
Definition at line 4326 of file ndr_marshall.c.
Referenced by NdrComplexArrayUnmarshall().
unsigned char *WINAPI NdrComplexArrayUnmarshall | ( | PMIDL_STUB_MESSAGE | pStubMsg, |
unsigned char ** | ppMemory, | ||
PFORMAT_STRING | pFormat, | ||