2.2.10.1 USER_PROPERTIES

The USER_PROPERTIES structure defines the format of the supplementalCredentials attribute.


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

Reserved1

Length

Reserved2

Reserved3

Reserved4 (96 bytes)

...

...

PropertySignature

PropertyCount (optional)

UserProperties (variable)

...

Reserved5

Reserved1 (4 bytes): This value MUST be set to zero and MUST be ignored by the recipient.

Length (4 bytes): This value MUST be set to the length, in bytes, of the entire structure, starting from the Reserved4 field.

Reserved2 (2 bytes): This value MUST be set to zero and MUST be ignored by the recipient.

Reserved3 (2 bytes): This value MUST be set to zero and MUST be ignored by the recipient.

Reserved4 (96 bytes): This value MUST be ignored by the recipient and MAY<22> contain arbitrary values.

PropertySignature (2 bytes): This field MUST be the value 0x50, in little-endian byte order. This is an arbitrary value used to indicate whether the structure is corrupt. That is, if this value is not 0x50 on read, the structure is considered corrupt, processing MUST be aborted, and an error code MUST be returned.

PropertyCount (2 bytes): The number of USER_PROPERTY elements in the UserProperties field. When there are zero USER_PROPERTY elements in the UserProperties field, this field MUST be omitted; the resultant USER_PROPERTIES structure has a constant size of 0x6F bytes.

UserProperties (variable): An array of PropertyCount USER_PROPERTY elements.

Reserved5 (1 byte): This value SHOULD<23> be set to zero and MUST be ignored by the recipient.