3.1.1.11.2.5 EncodeClaimsSet

 procedure EncodeClaimsSet (
     pClaimsSet : ADDRESS OF CLAIMS_SET,
     pClaimsBlob : ADDRESS OF CLAIMS_BLOB)

This procedure is a helper routine that encodes a given claims set into a claims BLOB.

pClaimsSet: The address of the input CLAIMS_SET structure that is to be encoded.

pClaimsBlob: The address of the output CLAIMS_BLOB structure that receives the encoded claims set.

Return Values: This procedure does not return a value.

Logical Processing:

 encodedClaimsSet: BYTE[];
 encodedClaimsSetSize: ULONG;
 claimsSetMetadata: CLAIMS_SET_METADATA;
 encodedClaimsSet := null;
 encodedClaimsSetSize := 0;
 claimsSetMetadata := null;
 pClaimsBlob^ := null;
  
 NdrEncode (pClaimsSet, ADDRESS OF encodedClaimsSet,
            ADDRESS OF encodedClaimsSetSize);
  
 FillClaimsSetMetadata(
     ADDRESS OF encodedClaimsSet,
     ADDRESS OF encodedClaimsSetSize,
     ADDRESS OF claimsSetMetadata);
  
 NdrEncode (
     claimsSetMetadata,
     ADDRESS OF pClaimsBlob^.EncodedBlob,
     ADDRESS OF pClaimsBlob^.ulBlobSizeinBytes);
  
 return;