2.2 Common Data Types

This protocol MUST indicate to the RPC runtime that it supports both the Network Data Representation (NDR) and NDR64 transfer syntaxes and provides a negotiation mechanism for determining which transfer syntax will be used, as specified in [MS-RPCE] section 3.

In addition to RPC base types and definitions specified in [C706] and [MS-RPCE], additional data types are defined in this section.

The following data types are specified in [MS-DTYP]:

Data type name

Section

Description

FILETIME

2.3.3

A structure of 64-bit value that represents the number of 100-nanosecond intervals that have elapsed since January 1, 1601, Coordinated Universal Time (UTC).

GUID

2.3.4.2

A packet representation of a globally unique identifier (GUID).

HRESULT

2.2.18

A 32-bit value that is used to describe an error or warning and contains the following fields:

  • A 1-bit code that indicates severity, where 0 represents success and 1 represents failure.

  • A 4-bit reserved value.

  • An 11-bit code, also known as a facility code, that indicates responsibility for the error or warning.

  • A 16-bit code that describes the error or warning.

LONG

2.2.27

A 32-bit signed integer, in twos-complement format (range: –2147483648 through 2147483647 decimal). The first bit (Most Significant Bit (MSB)) is the signing bit.

ULONG

2.2.51

A 32-bit unsigned integer (range: 0 through 4294967295 decimal). Because a ULONG is unsigned, its first bit (most significant bit (MSB)) is not reserved for signing.