1 // This file was extracted from the TCG Published
2 // Trusted Platform Module Library
3 // Part 3: Commands
4 // Family "2.0"
5 // Level 00 Revision 01.16
6 // October 30, 2014
7 
8 #include "InternalRoutines.h"
9 #include "NV_ReadPublic_fp.h"
10 TPM_RC
TPM2_NV_ReadPublic(NV_ReadPublic_In * in,NV_ReadPublic_Out * out)11 TPM2_NV_ReadPublic(
12    NV_ReadPublic_In      *in,          // IN: input parameter list
13    NV_ReadPublic_Out     *out          // OUT: output parameter list
14    )
15 {
16    NV_INDEX         nvIndex;
17 
18 // Command Output
19 
20    // Get NV index info
21    NvGetIndexInfo(in->nvIndex, &nvIndex);
22 
23    // Copy data to output
24    out->nvPublic.t.nvPublic = nvIndex.publicArea;
25 
26    // Compute NV name
27    out->nvName.t.size = NvGetName(in->nvIndex, &out->nvName.t.name);
28 
29    return TPM_RC_SUCCESS;
30 }
31