3.1.1.11.2.14 GetCTAClaims

 procedure GetCTAClaims (
     inputClaimsBlob : CLAIMS_BLOB,
     outputCTAClaims : set of Claim)

This is a helper procedure that converts a CLAIMS_BLOB into a set of Claim structures, which are defined in [MS-CTA] section 2.1.2.

inputClaimsBlob: The input CLAIMS_BLOB structure.

outputCTAClaims: The set of output CTA Claim structures.

Return Values: This procedure does not return a value.

Logical Processing:

 inputClaimsSet : CLAIMS_SET;
 valueType : string;
 inputClaimsSet := null;
 outputCTAClaims := null;
  
 DecodeClaimsSet(ADDRESS OF inputClaimsBlob, ADDRESS OF inputClaimsSet);
  
 for each array in inputClaimsSet.ClaimsArrays
     for each claim in array.ClaimEntries
         if (claim.Type = CLAIM_TYPE_INT64)
             valueType := "int64";
         else if (claim.Type = CLAIM_TYPE_UINT64)
             valueType := "uint64";
         else if (claim.Type = CLAIM_TYPE_BOOLEAN)
             valueType := "boolean";
         else if (claim.Type = CLAIM_TYPE_STRING)
             valueType := "string";
         endif
  
         for each value in claim.Values
           outputCTAClaims.Add(TYPE = claim.Id, VALUE_TYPE = valueType,
                               VALUE = value);
         endfor
     endfor
 endfor