5.43 DRS_SecBuffer

DRS_SecBuffer is a concrete type for a buffer that contains authentication data.

 typedef struct {
   [range(0,10000)] unsigned long cbBuffer;
   unsigned long BufferType;
   [size_is(cbBuffer)] BYTE* pvBuffer;
 } DRS_SecBuffer;

cbBuffer: The size, in bytes, of the pvBuffer array.

BufferType: A bit field, presented in little-endian byte order, that contains the following values:


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

X

X

X

X

X

T Y P

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

R O

X

X

X

X

X

X

X

X: Unused. MUST be zero and ignored.

TYP: Can be one of the following values:

Value

Meaning

SECBUFFER_EMPTY

0x00000000

A placeholder in the buffer array. The caller can supply several such entries in the array, and the security package can return data in them.

SECBUFFER_DATA

0x00000001

Used for common data. The security package can read this data and write it, for example, to encrypt some or all of it.

SECBUFFER_TOKEN

0x00000002

This buffer is used to indicate the security token portion of the message. This is read-only for input parameters or read/write for output parameters.

SECBUFFER_PKG_PARAMS

0x00000003

These are transport-to-package–specific parameters. For example, the Netware redirector can supply the server object identifier, while DCE RPC can supply an association UUID, and so on.

SECBUFFER_MISSING

0x00000004

The security package uses this value to indicate the number of missing bytes in a particular message. The pvBuffer member is ignored in this type.

SECBUFFER_EXTRA

0x00000005

The security package uses this value to indicate the number of extra or unprocessed bytes in a message.

SECBUFFER_STREAM_TRAILER

0x00000006

Indicates a protocol-specific trailer for a particular record.

SECBUFFER_STREAM_HEADER

0x00000007

Indicates a protocol-specific header for a particular record.

RO (SECBUFFER_READONLY, 0x80000000): The buffer is read-only. This flag is intended for sending header data to the security package for checksumming. The package can read this buffer but cannot modify it.

pvBuffer: Authentication data.

Show: