NDR_USER_MARSHAL_INFO_LEVEL1 structure (rpcndr.h)

The NDR_USER_MARSHAL_INFO_LEVEL1 structure holds information about the state of an RPC call that can be passed to wire_marshal and user_marshal helper functions.

Syntax

typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1 {
  void                     *Buffer;
  unsigned long            BufferSize;
  void * )(size_t)                     *(pfnAllocate;
  void()(void *)                    * pfnFree;
  struct IRpcChannelBuffer *pRpcChannelBuffer;
  ULONG_PTR                Reserved[5];
} NDR_USER_MARSHAL_INFO_LEVEL1;

Members

Buffer

Pointer to the beginning of the marshaling buffer available for use by the helper function. If no buffer is available, this field is null.

BufferSize

Size, in bytes, of the marshaling buffer available for use by the helper function. If no buffer is available, BufferSize is zero.

pfnAllocate

Function used by RPC to allocate memory for the application. An example of the use of this function is to create a node.

pfnFree

Function used by RPC to free memory for the application. An example of the use of this function is to free a node.

pRpcChannelBuffer

If the current call is for a COM interface, this member is a pointer to the channel buffer that RPC uses for the call. Otherwise, this member is null.

Reserved[5]

Reserved for future use.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header rpcndr.h (include Rpc.h)