116 lines
1.9 KiB
C
116 lines
1.9 KiB
C
|
|
||
|
/*++
|
||
|
|
||
|
Copyright (c) 1998 Microsoft Corporation
|
||
|
All rights reserved.
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
marshall.hxx
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Declarations for marshalling spooler structures sent via RPC/LPC
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Ramanathan Venkatapathy (RamanV) 4/30/98
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
|
||
|
//
|
||
|
// 32-64 bit marshalling constants
|
||
|
//
|
||
|
|
||
|
#include "mType.h"
|
||
|
|
||
|
typedef enum _EDataSize
|
||
|
{
|
||
|
kPointerSize = sizeof (ULONG_PTR),
|
||
|
|
||
|
} EDataSize;
|
||
|
|
||
|
typedef enum _EPtrSize
|
||
|
{
|
||
|
kSpl32Ptr = 4,
|
||
|
kSpl64Ptr = 8,
|
||
|
|
||
|
} EPtrSize ;
|
||
|
|
||
|
EXTERN_C
|
||
|
BOOL
|
||
|
MarshallDownStructure(
|
||
|
IN OUT PBYTE pStructure,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T StructureSize,
|
||
|
IN CALL_ROUTE Route
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
BOOL
|
||
|
MarshallUpStructure(
|
||
|
IN OUT PBYTE pStructure,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T StructureSize,
|
||
|
IN CALL_ROUTE Route
|
||
|
);
|
||
|
|
||
|
|
||
|
EXTERN_C
|
||
|
BOOL
|
||
|
MarshallUpStructuresArray(
|
||
|
IN OUT PBYTE pBufferArray,
|
||
|
IN DWORD cReturned,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T StructureSize,
|
||
|
IN CALL_ROUTE Route
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
BOOL
|
||
|
MarshallDownStructuresArray(
|
||
|
IN OUT PBYTE pBufferArray,
|
||
|
IN DWORD cReturned,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T StructureSize,
|
||
|
IN CALL_ROUTE Route
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
DWORD
|
||
|
UpdateBufferSize(
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T cbStruct,
|
||
|
IN OUT LPDWORD pcbNeeded,
|
||
|
IN DWORD cbBuf,
|
||
|
IN DWORD dwError,
|
||
|
IN LPDWORD pcReturned
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
BOOL
|
||
|
GetShrinkedSize(
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
OUT SIZE_T *pShrinkedSize
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
VOID
|
||
|
AdjustPointers(
|
||
|
IN PBYTE pStructure,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN ULONG_PTR cbAdjustment
|
||
|
);
|
||
|
|
||
|
EXTERN_C
|
||
|
VOID
|
||
|
AdjustPointersInStructuresArray(
|
||
|
IN PBYTE pBufferArray,
|
||
|
IN DWORD cReturned,
|
||
|
IN FieldInfo *pFieldInfo,
|
||
|
IN SIZE_T StructureSize,
|
||
|
IN ULONG_PTR cbAdjustment
|
||
|
);
|