2.2 Common Data Types

This protocol MUST indicate to the RPC runtime that it is to support both the NDR and NDR64 transfer syntaxes and provide a negotiation mechanism for determining which transfer syntax will be used, as specified in [C706] section 12 and in [MS-RPCE] section 3.3.1.5.6.

This protocol contains messages with parameters that do not have any effect on message processing in any environment; however, the parameters remain for backward compatibility of the interfaces. These will be called out as ignored in sections on data type definition, message definition, and message processing. These values MUST be ignored on receipt and SHOULD be set to zero when sent, unless specified otherwise.

In addition to RPC base types and definitions specified in [C706] and [MS-DTYP], other data types are defined in this specification.<8>

The following lists summarize the types defined in this specification.

Note LUID, NTSTATUS, RPC_SID, and RPC_UNICODE_STRING are specified in [MS-DTYP] sections 2.3.7, 2.2.38, 2.4. 2.4.2.3, and 2.3.10, respectively.

Note The LARGE INTEGER structure, when it represents time in this protocol, is used as a 64-bit value that represents the number of 100-nanosecond intervals since January 1, 1601, Coordinated Universal Time (UTC).

Constant value definitions:

Basic data types:

Data types referenced by basic data types:

Policy query/set data types:

Account query/set data types:

Secret query/set data types:

Trusted domain query/set data types:

Privilege data types:

The following citation contains a timeline of when each structure, data type, or enumeration was introduced.<10>