// This file was extracted from the TCG Published
// Trusted Platform Module Library
// Part 4: Supporting Routines
// Family "2.0"
// Level 00 Revision 01.16
// October 30, 2014
#include "InternalRoutines.h"
//
//
// LocalityGetAttributes()
//
// This function will convert a locality expressed as an integer into TPMA_LOCALITY form.
// The function returns the locality attribute.
//
TPMA_LOCALITY
LocalityGetAttributes(
UINT8 locality // IN: locality value
)
{
TPMA_LOCALITY locality_attributes;
BYTE *localityAsByte = (BYTE *)&locality_attributes;
MemorySet(&locality_attributes, 0, sizeof(TPMA_LOCALITY));
switch(locality)
{
case 0:
locality_attributes.locZero = SET;
break;
case 1:
locality_attributes.locOne = SET;
break;
case 2:
locality_attributes.locTwo = SET;
break;
case 3:
locality_attributes.locThree = SET;
break;
case 4:
locality_attributes.locFour = SET;
break;
default:
pAssert(locality > 31);
*localityAsByte = locality;
break;
}
return locality_attributes;
}