xref: /aosp_15_r20/external/tpm2-tss/include/tss2/tss2_mu.h (revision 758e9fba6fc9adbf15340f70c73baee7b168b1c9)
1*758e9fbaSOystein Eftevaag /* SPDX-License-Identifier: BSD-2-Clause */
2*758e9fbaSOystein Eftevaag /***********************************************************************
3*758e9fbaSOystein Eftevaag  * Copyright (c) 2015 - 2017, Intel Corporation
4*758e9fbaSOystein Eftevaag  *
5*758e9fbaSOystein Eftevaag  * All rights reserved.
6*758e9fbaSOystein Eftevaag  ***********************************************************************/
7*758e9fbaSOystein Eftevaag 
8*758e9fbaSOystein Eftevaag #ifndef MARSHAL_H
9*758e9fbaSOystein Eftevaag #define MARSHAL_H
10*758e9fbaSOystein Eftevaag 
11*758e9fbaSOystein Eftevaag #include <stdlib.h>
12*758e9fbaSOystein Eftevaag #include "tss2_common.h"
13*758e9fbaSOystein Eftevaag #include "tss2_tpm2_types.h"
14*758e9fbaSOystein Eftevaag 
15*758e9fbaSOystein Eftevaag #ifndef TSS2_API_VERSION_1_2_1_108
16*758e9fbaSOystein Eftevaag #error Version mismatch among TSS2 header files.
17*758e9fbaSOystein Eftevaag #endif  /* TSS2_API_VERSION_1_2_1_108 */
18*758e9fbaSOystein Eftevaag 
19*758e9fbaSOystein Eftevaag #ifdef __cplusplus
20*758e9fbaSOystein Eftevaag extern "C" {
21*758e9fbaSOystein Eftevaag #endif
22*758e9fbaSOystein Eftevaag 
23*758e9fbaSOystein Eftevaag TSS2_RC
24*758e9fbaSOystein Eftevaag Tss2_MU_BYTE_Marshal(
25*758e9fbaSOystein Eftevaag     BYTE           src,
26*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
27*758e9fbaSOystein Eftevaag     size_t          buffer_size,
28*758e9fbaSOystein Eftevaag     size_t         *offset);
29*758e9fbaSOystein Eftevaag 
30*758e9fbaSOystein Eftevaag TSS2_RC
31*758e9fbaSOystein Eftevaag Tss2_MU_BYTE_Unmarshal(
32*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
33*758e9fbaSOystein Eftevaag     size_t          buffer_size,
34*758e9fbaSOystein Eftevaag     size_t         *offset,
35*758e9fbaSOystein Eftevaag     BYTE           *dest);
36*758e9fbaSOystein Eftevaag 
37*758e9fbaSOystein Eftevaag TSS2_RC
38*758e9fbaSOystein Eftevaag Tss2_MU_INT8_Marshal(
39*758e9fbaSOystein Eftevaag     INT8            src,
40*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
41*758e9fbaSOystein Eftevaag     size_t          buffer_size,
42*758e9fbaSOystein Eftevaag     size_t         *offset);
43*758e9fbaSOystein Eftevaag 
44*758e9fbaSOystein Eftevaag TSS2_RC
45*758e9fbaSOystein Eftevaag Tss2_MU_INT8_Unmarshal(
46*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
47*758e9fbaSOystein Eftevaag     size_t          buffer_size,
48*758e9fbaSOystein Eftevaag     size_t         *offset,
49*758e9fbaSOystein Eftevaag     INT8           *dest);
50*758e9fbaSOystein Eftevaag 
51*758e9fbaSOystein Eftevaag TSS2_RC
52*758e9fbaSOystein Eftevaag Tss2_MU_INT16_Marshal(
53*758e9fbaSOystein Eftevaag     INT16           src,
54*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
55*758e9fbaSOystein Eftevaag     size_t          buffer_size,
56*758e9fbaSOystein Eftevaag     size_t         *offset);
57*758e9fbaSOystein Eftevaag 
58*758e9fbaSOystein Eftevaag TSS2_RC
59*758e9fbaSOystein Eftevaag Tss2_MU_INT16_Unmarshal(
60*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
61*758e9fbaSOystein Eftevaag     size_t          buffer_size,
62*758e9fbaSOystein Eftevaag     size_t         *offset,
63*758e9fbaSOystein Eftevaag     INT16          *dest);
64*758e9fbaSOystein Eftevaag 
65*758e9fbaSOystein Eftevaag TSS2_RC
66*758e9fbaSOystein Eftevaag Tss2_MU_INT32_Marshal(
67*758e9fbaSOystein Eftevaag     INT32           src,
68*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
69*758e9fbaSOystein Eftevaag     size_t          buffer_size,
70*758e9fbaSOystein Eftevaag     size_t         *offset);
71*758e9fbaSOystein Eftevaag 
72*758e9fbaSOystein Eftevaag TSS2_RC
73*758e9fbaSOystein Eftevaag Tss2_MU_INT32_Unmarshal(
74*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
75*758e9fbaSOystein Eftevaag     size_t          buffer_size,
76*758e9fbaSOystein Eftevaag     size_t         *offset,
77*758e9fbaSOystein Eftevaag     INT32          *dest);
78*758e9fbaSOystein Eftevaag 
79*758e9fbaSOystein Eftevaag TSS2_RC
80*758e9fbaSOystein Eftevaag Tss2_MU_INT64_Marshal(
81*758e9fbaSOystein Eftevaag     INT64           src,
82*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
83*758e9fbaSOystein Eftevaag     size_t          buffer_size,
84*758e9fbaSOystein Eftevaag     size_t         *offset);
85*758e9fbaSOystein Eftevaag 
86*758e9fbaSOystein Eftevaag TSS2_RC
87*758e9fbaSOystein Eftevaag Tss2_MU_INT64_Unmarshal(
88*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
89*758e9fbaSOystein Eftevaag     size_t          buffer_size,
90*758e9fbaSOystein Eftevaag     size_t         *offset,
91*758e9fbaSOystein Eftevaag     INT64          *dest);
92*758e9fbaSOystein Eftevaag 
93*758e9fbaSOystein Eftevaag TSS2_RC
94*758e9fbaSOystein Eftevaag Tss2_MU_UINT8_Marshal(
95*758e9fbaSOystein Eftevaag     UINT8           src,
96*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
97*758e9fbaSOystein Eftevaag     size_t          buffer_size,
98*758e9fbaSOystein Eftevaag     size_t         *offset);
99*758e9fbaSOystein Eftevaag 
100*758e9fbaSOystein Eftevaag TSS2_RC
101*758e9fbaSOystein Eftevaag Tss2_MU_UINT8_Unmarshal(
102*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
103*758e9fbaSOystein Eftevaag     size_t          buffer_size,
104*758e9fbaSOystein Eftevaag     size_t         *offset,
105*758e9fbaSOystein Eftevaag     UINT8          *dest);
106*758e9fbaSOystein Eftevaag 
107*758e9fbaSOystein Eftevaag TSS2_RC
108*758e9fbaSOystein Eftevaag Tss2_MU_UINT16_Marshal(
109*758e9fbaSOystein Eftevaag     UINT16          src,
110*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
111*758e9fbaSOystein Eftevaag     size_t          buffer_size,
112*758e9fbaSOystein Eftevaag     size_t         *offset);
113*758e9fbaSOystein Eftevaag 
114*758e9fbaSOystein Eftevaag TSS2_RC
115*758e9fbaSOystein Eftevaag Tss2_MU_UINT16_Unmarshal(
116*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
117*758e9fbaSOystein Eftevaag     size_t          buffer_size,
118*758e9fbaSOystein Eftevaag     size_t         *offset,
119*758e9fbaSOystein Eftevaag     UINT16         *dest);
120*758e9fbaSOystein Eftevaag 
121*758e9fbaSOystein Eftevaag TSS2_RC
122*758e9fbaSOystein Eftevaag Tss2_MU_UINT32_Marshal(
123*758e9fbaSOystein Eftevaag     UINT32          src,
124*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
125*758e9fbaSOystein Eftevaag     size_t          buffer_size,
126*758e9fbaSOystein Eftevaag     size_t         *offset);
127*758e9fbaSOystein Eftevaag 
128*758e9fbaSOystein Eftevaag TSS2_RC
129*758e9fbaSOystein Eftevaag Tss2_MU_UINT32_Unmarshal(
130*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
131*758e9fbaSOystein Eftevaag     size_t          buffer_size,
132*758e9fbaSOystein Eftevaag     size_t         *offset,
133*758e9fbaSOystein Eftevaag     UINT32         *dest);
134*758e9fbaSOystein Eftevaag 
135*758e9fbaSOystein Eftevaag TSS2_RC
136*758e9fbaSOystein Eftevaag Tss2_MU_UINT64_Marshal(
137*758e9fbaSOystein Eftevaag     UINT64          src,
138*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
139*758e9fbaSOystein Eftevaag     size_t          buffer_size,
140*758e9fbaSOystein Eftevaag     size_t         *offset);
141*758e9fbaSOystein Eftevaag 
142*758e9fbaSOystein Eftevaag TSS2_RC
143*758e9fbaSOystein Eftevaag Tss2_MU_UINT64_Unmarshal(
144*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
145*758e9fbaSOystein Eftevaag     size_t          buffer_size,
146*758e9fbaSOystein Eftevaag     size_t         *offset,
147*758e9fbaSOystein Eftevaag     UINT64         *dest);
148*758e9fbaSOystein Eftevaag 
149*758e9fbaSOystein Eftevaag TSS2_RC
150*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_CC_Marshal(
151*758e9fbaSOystein Eftevaag     TPM2_CC          src,
152*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
153*758e9fbaSOystein Eftevaag     size_t          buffer_size,
154*758e9fbaSOystein Eftevaag     size_t         *offset);
155*758e9fbaSOystein Eftevaag 
156*758e9fbaSOystein Eftevaag TSS2_RC
157*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_CC_Unmarshal(
158*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
159*758e9fbaSOystein Eftevaag     size_t          buffer_size,
160*758e9fbaSOystein Eftevaag     size_t         *offset,
161*758e9fbaSOystein Eftevaag     TPM2_CC         *dest);
162*758e9fbaSOystein Eftevaag 
163*758e9fbaSOystein Eftevaag TSS2_RC
164*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_ST_Marshal(
165*758e9fbaSOystein Eftevaag     TPM2_ST          src,
166*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
167*758e9fbaSOystein Eftevaag     size_t          buffer_size,
168*758e9fbaSOystein Eftevaag     size_t         *offset);
169*758e9fbaSOystein Eftevaag 
170*758e9fbaSOystein Eftevaag TSS2_RC
171*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_ST_Unmarshal(
172*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
173*758e9fbaSOystein Eftevaag     size_t          buffer_size,
174*758e9fbaSOystein Eftevaag     size_t         *offset,
175*758e9fbaSOystein Eftevaag     TPM2_ST         *dest);
176*758e9fbaSOystein Eftevaag 
177*758e9fbaSOystein Eftevaag TSS2_RC
178*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_ALGORITHM_Marshal(
179*758e9fbaSOystein Eftevaag     TPMA_ALGORITHM  src,
180*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
181*758e9fbaSOystein Eftevaag     size_t          buffer_size,
182*758e9fbaSOystein Eftevaag     size_t          *offset);
183*758e9fbaSOystein Eftevaag 
184*758e9fbaSOystein Eftevaag TSS2_RC
185*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_ALGORITHM_Unmarshal(
186*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
187*758e9fbaSOystein Eftevaag     size_t          buffer_size,
188*758e9fbaSOystein Eftevaag     size_t         *offset,
189*758e9fbaSOystein Eftevaag     TPMA_ALGORITHM *dest);
190*758e9fbaSOystein Eftevaag 
191*758e9fbaSOystein Eftevaag TSS2_RC
192*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_CC_Marshal(
193*758e9fbaSOystein Eftevaag     TPMA_CC         src,
194*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
195*758e9fbaSOystein Eftevaag     size_t          buffer_size,
196*758e9fbaSOystein Eftevaag     size_t         *offset);
197*758e9fbaSOystein Eftevaag 
198*758e9fbaSOystein Eftevaag TSS2_RC
199*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_CC_Unmarshal(
200*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
201*758e9fbaSOystein Eftevaag     size_t          buffer_size,
202*758e9fbaSOystein Eftevaag     size_t         *offset,
203*758e9fbaSOystein Eftevaag     TPMA_CC        *dest);
204*758e9fbaSOystein Eftevaag 
205*758e9fbaSOystein Eftevaag TSS2_RC
206*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_LOCALITY_Marshal(
207*758e9fbaSOystein Eftevaag     TPMA_LOCALITY   src,
208*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
209*758e9fbaSOystein Eftevaag     size_t          buffer_size,
210*758e9fbaSOystein Eftevaag     size_t         *offset);
211*758e9fbaSOystein Eftevaag 
212*758e9fbaSOystein Eftevaag TSS2_RC
213*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_LOCALITY_Unmarshal(
214*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
215*758e9fbaSOystein Eftevaag     size_t          buffer_size,
216*758e9fbaSOystein Eftevaag     size_t         *offset,
217*758e9fbaSOystein Eftevaag     TPMA_LOCALITY  *dest);
218*758e9fbaSOystein Eftevaag TSS2_RC
219*758e9fbaSOystein Eftevaag 
220*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_NV_Marshal(
221*758e9fbaSOystein Eftevaag     TPMA_NV         src,
222*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
223*758e9fbaSOystein Eftevaag     size_t          buffer_size,
224*758e9fbaSOystein Eftevaag     size_t         *offset);
225*758e9fbaSOystein Eftevaag 
226*758e9fbaSOystein Eftevaag TSS2_RC
227*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_NV_Unmarshal(
228*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
229*758e9fbaSOystein Eftevaag     size_t          buffer_size,
230*758e9fbaSOystein Eftevaag     size_t         *offset,
231*758e9fbaSOystein Eftevaag     TPMA_NV        *dest);
232*758e9fbaSOystein Eftevaag 
233*758e9fbaSOystein Eftevaag TSS2_RC
234*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_OBJECT_Marshal(
235*758e9fbaSOystein Eftevaag     TPMA_OBJECT     src,
236*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
237*758e9fbaSOystein Eftevaag     size_t          buffer_size,
238*758e9fbaSOystein Eftevaag     size_t         *offset);
239*758e9fbaSOystein Eftevaag 
240*758e9fbaSOystein Eftevaag TSS2_RC
241*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_OBJECT_Unmarshal(
242*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
243*758e9fbaSOystein Eftevaag     size_t          buffer_size,
244*758e9fbaSOystein Eftevaag     size_t         *offset,
245*758e9fbaSOystein Eftevaag     TPMA_OBJECT    *dest);
246*758e9fbaSOystein Eftevaag 
247*758e9fbaSOystein Eftevaag TSS2_RC
248*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_PERMANENT_Marshal(
249*758e9fbaSOystein Eftevaag     TPMA_PERMANENT  src,
250*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
251*758e9fbaSOystein Eftevaag     size_t          buffer_size,
252*758e9fbaSOystein Eftevaag     size_t         *offset);
253*758e9fbaSOystein Eftevaag 
254*758e9fbaSOystein Eftevaag TSS2_RC
255*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_PERMANENT_Unmarshal(
256*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
257*758e9fbaSOystein Eftevaag     size_t          buffer_size,
258*758e9fbaSOystein Eftevaag     size_t         *offset,
259*758e9fbaSOystein Eftevaag     TPMA_PERMANENT *dest);
260*758e9fbaSOystein Eftevaag 
261*758e9fbaSOystein Eftevaag TSS2_RC
262*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_SESSION_Marshal(
263*758e9fbaSOystein Eftevaag     TPMA_SESSION    src,
264*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
265*758e9fbaSOystein Eftevaag     size_t          buffer_size,
266*758e9fbaSOystein Eftevaag     size_t         *offset);
267*758e9fbaSOystein Eftevaag 
268*758e9fbaSOystein Eftevaag TSS2_RC
269*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_SESSION_Unmarshal(
270*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
271*758e9fbaSOystein Eftevaag     size_t          buffer_size,
272*758e9fbaSOystein Eftevaag     size_t         *offset,
273*758e9fbaSOystein Eftevaag     TPMA_SESSION   *dest);
274*758e9fbaSOystein Eftevaag 
275*758e9fbaSOystein Eftevaag TSS2_RC
276*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_STARTUP_CLEAR_Marshal(
277*758e9fbaSOystein Eftevaag     TPMA_STARTUP_CLEAR src,
278*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
279*758e9fbaSOystein Eftevaag     size_t          buffer_size,
280*758e9fbaSOystein Eftevaag     size_t         *offset);
281*758e9fbaSOystein Eftevaag 
282*758e9fbaSOystein Eftevaag TSS2_RC
283*758e9fbaSOystein Eftevaag Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal(
284*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
285*758e9fbaSOystein Eftevaag     size_t          buffer_size,
286*758e9fbaSOystein Eftevaag     size_t         *offset,
287*758e9fbaSOystein Eftevaag     TPMA_STARTUP_CLEAR *dest);
288*758e9fbaSOystein Eftevaag 
289*758e9fbaSOystein Eftevaag TSS2_RC
290*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_DIGEST_Marshal(
291*758e9fbaSOystein Eftevaag     TPM2B_DIGEST const *src,
292*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
293*758e9fbaSOystein Eftevaag     size_t          buffer_size,
294*758e9fbaSOystein Eftevaag     size_t         *offset);
295*758e9fbaSOystein Eftevaag 
296*758e9fbaSOystein Eftevaag TSS2_RC
297*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_DIGEST_Unmarshal(
298*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
299*758e9fbaSOystein Eftevaag     size_t          buffer_size,
300*758e9fbaSOystein Eftevaag     size_t         *offset,
301*758e9fbaSOystein Eftevaag     TPM2B_DIGEST   *dest);
302*758e9fbaSOystein Eftevaag 
303*758e9fbaSOystein Eftevaag TSS2_RC
304*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ATTEST_Marshal(
305*758e9fbaSOystein Eftevaag     TPM2B_ATTEST const *src,
306*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
307*758e9fbaSOystein Eftevaag     size_t          buffer_size,
308*758e9fbaSOystein Eftevaag     size_t         *offset);
309*758e9fbaSOystein Eftevaag 
310*758e9fbaSOystein Eftevaag TSS2_RC
311*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ATTEST_Unmarshal(
312*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
313*758e9fbaSOystein Eftevaag     size_t          buffer_size,
314*758e9fbaSOystein Eftevaag     size_t         *offset,
315*758e9fbaSOystein Eftevaag     TPM2B_ATTEST   *dest);
316*758e9fbaSOystein Eftevaag 
317*758e9fbaSOystein Eftevaag TSS2_RC
318*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NAME_Marshal(
319*758e9fbaSOystein Eftevaag     TPM2B_NAME const *src,
320*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
321*758e9fbaSOystein Eftevaag     size_t          buffer_size,
322*758e9fbaSOystein Eftevaag     size_t         *offset);
323*758e9fbaSOystein Eftevaag 
324*758e9fbaSOystein Eftevaag TSS2_RC
325*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NAME_Unmarshal(
326*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
327*758e9fbaSOystein Eftevaag     size_t          buffer_size,
328*758e9fbaSOystein Eftevaag     size_t         *offset,
329*758e9fbaSOystein Eftevaag     TPM2B_NAME     *dest);
330*758e9fbaSOystein Eftevaag 
331*758e9fbaSOystein Eftevaag TSS2_RC
332*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal(
333*758e9fbaSOystein Eftevaag     TPM2B_MAX_NV_BUFFER const *src,
334*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
335*758e9fbaSOystein Eftevaag     size_t          buffer_size,
336*758e9fbaSOystein Eftevaag     size_t         *offset);
337*758e9fbaSOystein Eftevaag 
338*758e9fbaSOystein Eftevaag TSS2_RC
339*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal(
340*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
341*758e9fbaSOystein Eftevaag     size_t          buffer_size,
342*758e9fbaSOystein Eftevaag     size_t         *offset,
343*758e9fbaSOystein Eftevaag     TPM2B_MAX_NV_BUFFER *dest);
344*758e9fbaSOystein Eftevaag 
345*758e9fbaSOystein Eftevaag TSS2_RC
346*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal(
347*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_DATA const *src,
348*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
349*758e9fbaSOystein Eftevaag     size_t          buffer_size,
350*758e9fbaSOystein Eftevaag     size_t         *offset);
351*758e9fbaSOystein Eftevaag 
352*758e9fbaSOystein Eftevaag TSS2_RC
353*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal(
354*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
355*758e9fbaSOystein Eftevaag     size_t          buffer_size,
356*758e9fbaSOystein Eftevaag     size_t         *offset,
357*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_DATA *dest);
358*758e9fbaSOystein Eftevaag 
359*758e9fbaSOystein Eftevaag TSS2_RC
360*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ECC_PARAMETER_Marshal(
361*758e9fbaSOystein Eftevaag     TPM2B_ECC_PARAMETER const *src,
362*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
363*758e9fbaSOystein Eftevaag     size_t          buffer_size,
364*758e9fbaSOystein Eftevaag     size_t         *offset);
365*758e9fbaSOystein Eftevaag 
366*758e9fbaSOystein Eftevaag TSS2_RC
367*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal(
368*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
369*758e9fbaSOystein Eftevaag     size_t          buffer_size,
370*758e9fbaSOystein Eftevaag     size_t         *offset,
371*758e9fbaSOystein Eftevaag     TPM2B_ECC_PARAMETER *dest);
372*758e9fbaSOystein Eftevaag 
373*758e9fbaSOystein Eftevaag TSS2_RC
374*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal(
375*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA const *src,
376*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
377*758e9fbaSOystein Eftevaag     size_t          buffer_size,
378*758e9fbaSOystein Eftevaag     size_t         *offset);
379*758e9fbaSOystein Eftevaag 
380*758e9fbaSOystein Eftevaag TSS2_RC
381*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal(
382*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
383*758e9fbaSOystein Eftevaag     size_t          buffer_size,
384*758e9fbaSOystein Eftevaag     size_t         *offset,
385*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC_KEY_RSA *dest);
386*758e9fbaSOystein Eftevaag 
387*758e9fbaSOystein Eftevaag TSS2_RC
388*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal(
389*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE_KEY_RSA const *src,
390*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
391*758e9fbaSOystein Eftevaag     size_t          buffer_size,
392*758e9fbaSOystein Eftevaag     size_t         *offset);
393*758e9fbaSOystein Eftevaag 
394*758e9fbaSOystein Eftevaag TSS2_RC
395*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal(
396*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
397*758e9fbaSOystein Eftevaag     size_t          buffer_size,
398*758e9fbaSOystein Eftevaag     size_t         *offset,
399*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE_KEY_RSA *dest);
400*758e9fbaSOystein Eftevaag 
401*758e9fbaSOystein Eftevaag TSS2_RC
402*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PRIVATE_Marshal(
403*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE const *src,
404*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
405*758e9fbaSOystein Eftevaag     size_t          buffer_size,
406*758e9fbaSOystein Eftevaag     size_t         *offset);
407*758e9fbaSOystein Eftevaag 
408*758e9fbaSOystein Eftevaag TSS2_RC
409*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PRIVATE_Unmarshal(
410*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
411*758e9fbaSOystein Eftevaag     size_t          buffer_size,
412*758e9fbaSOystein Eftevaag     size_t         *offset,
413*758e9fbaSOystein Eftevaag     TPM2B_PRIVATE  *dest);
414*758e9fbaSOystein Eftevaag 
415*758e9fbaSOystein Eftevaag TSS2_RC
416*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal(
417*758e9fbaSOystein Eftevaag     TPM2B_CONTEXT_SENSITIVE const *src,
418*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
419*758e9fbaSOystein Eftevaag     size_t          buffer_size,
420*758e9fbaSOystein Eftevaag     size_t         *offset);
421*758e9fbaSOystein Eftevaag 
422*758e9fbaSOystein Eftevaag TSS2_RC
423*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal(
424*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
425*758e9fbaSOystein Eftevaag     size_t          buffer_size,
426*758e9fbaSOystein Eftevaag     size_t         *offset,
427*758e9fbaSOystein Eftevaag     TPM2B_CONTEXT_SENSITIVE *dest);
428*758e9fbaSOystein Eftevaag 
429*758e9fbaSOystein Eftevaag TSS2_RC
430*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CONTEXT_DATA_Marshal(
431*758e9fbaSOystein Eftevaag     TPM2B_CONTEXT_DATA const *src,
432*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
433*758e9fbaSOystein Eftevaag     size_t          buffer_size,
434*758e9fbaSOystein Eftevaag     size_t         *offset);
435*758e9fbaSOystein Eftevaag 
436*758e9fbaSOystein Eftevaag TSS2_RC
437*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal(
438*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
439*758e9fbaSOystein Eftevaag     size_t          buffer_size,
440*758e9fbaSOystein Eftevaag     size_t         *offset,
441*758e9fbaSOystein Eftevaag     TPM2B_CONTEXT_DATA *dest);
442*758e9fbaSOystein Eftevaag 
443*758e9fbaSOystein Eftevaag TSS2_RC
444*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_DATA_Marshal(
445*758e9fbaSOystein Eftevaag     TPM2B_DATA      const *src,
446*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
447*758e9fbaSOystein Eftevaag     size_t          buffer_size,
448*758e9fbaSOystein Eftevaag     size_t         *offset);
449*758e9fbaSOystein Eftevaag 
450*758e9fbaSOystein Eftevaag TSS2_RC
451*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_DATA_Unmarshal(
452*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
453*758e9fbaSOystein Eftevaag     size_t          buffer_size,
454*758e9fbaSOystein Eftevaag     size_t         *offset,
455*758e9fbaSOystein Eftevaag     TPM2B_DATA     *dest);
456*758e9fbaSOystein Eftevaag 
457*758e9fbaSOystein Eftevaag TSS2_RC
458*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SYM_KEY_Marshal(
459*758e9fbaSOystein Eftevaag     TPM2B_SYM_KEY   const *src,
460*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
461*758e9fbaSOystein Eftevaag     size_t          buffer_size,
462*758e9fbaSOystein Eftevaag     size_t         *offset);
463*758e9fbaSOystein Eftevaag 
464*758e9fbaSOystein Eftevaag TSS2_RC
465*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SYM_KEY_Unmarshal(
466*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
467*758e9fbaSOystein Eftevaag     size_t          buffer_size,
468*758e9fbaSOystein Eftevaag     size_t         *offset,
469*758e9fbaSOystein Eftevaag     TPM2B_SYM_KEY  *dest);
470*758e9fbaSOystein Eftevaag 
471*758e9fbaSOystein Eftevaag TSS2_RC
472*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ECC_POINT_Marshal(
473*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT const *src,
474*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
475*758e9fbaSOystein Eftevaag     size_t          buffer_size,
476*758e9fbaSOystein Eftevaag     size_t         *offset);
477*758e9fbaSOystein Eftevaag 
478*758e9fbaSOystein Eftevaag TSS2_RC
479*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ECC_POINT_Unmarshal(
480*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
481*758e9fbaSOystein Eftevaag     size_t          buffer_size,
482*758e9fbaSOystein Eftevaag     size_t          *offset,
483*758e9fbaSOystein Eftevaag     TPM2B_ECC_POINT *dest);
484*758e9fbaSOystein Eftevaag 
485*758e9fbaSOystein Eftevaag TSS2_RC
486*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NV_PUBLIC_Marshal(
487*758e9fbaSOystein Eftevaag     TPM2B_NV_PUBLIC const *src,
488*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
489*758e9fbaSOystein Eftevaag     size_t          buffer_size,
490*758e9fbaSOystein Eftevaag     size_t         *offset);
491*758e9fbaSOystein Eftevaag 
492*758e9fbaSOystein Eftevaag TSS2_RC
493*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal(
494*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
495*758e9fbaSOystein Eftevaag     size_t          buffer_size,
496*758e9fbaSOystein Eftevaag     size_t          *offset,
497*758e9fbaSOystein Eftevaag     TPM2B_NV_PUBLIC *dest);
498*758e9fbaSOystein Eftevaag 
499*758e9fbaSOystein Eftevaag TSS2_RC
500*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_Marshal(
501*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE const *src,
502*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
503*758e9fbaSOystein Eftevaag     size_t          buffer_size,
504*758e9fbaSOystein Eftevaag     size_t         *offset);
505*758e9fbaSOystein Eftevaag 
506*758e9fbaSOystein Eftevaag TSS2_RC
507*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_Unmarshal(
508*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
509*758e9fbaSOystein Eftevaag     size_t          buffer_size,
510*758e9fbaSOystein Eftevaag     size_t          *offset,
511*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE *dest);
512*758e9fbaSOystein Eftevaag 
513*758e9fbaSOystein Eftevaag TSS2_RC
514*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal(
515*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_CREATE const *src,
516*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
517*758e9fbaSOystein Eftevaag     size_t          buffer_size,
518*758e9fbaSOystein Eftevaag     size_t         *offset);
519*758e9fbaSOystein Eftevaag 
520*758e9fbaSOystein Eftevaag TSS2_RC
521*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal(
522*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
523*758e9fbaSOystein Eftevaag     size_t          buffer_size,
524*758e9fbaSOystein Eftevaag     size_t          *offset,
525*758e9fbaSOystein Eftevaag     TPM2B_SENSITIVE_CREATE *dest);
526*758e9fbaSOystein Eftevaag 
527*758e9fbaSOystein Eftevaag TSS2_RC
528*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CREATION_DATA_Marshal(
529*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA const *src,
530*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
531*758e9fbaSOystein Eftevaag     size_t          buffer_size,
532*758e9fbaSOystein Eftevaag     size_t         *offset);
533*758e9fbaSOystein Eftevaag 
534*758e9fbaSOystein Eftevaag TSS2_RC
535*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_CREATION_DATA_Unmarshal(
536*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
537*758e9fbaSOystein Eftevaag     size_t          buffer_size,
538*758e9fbaSOystein Eftevaag     size_t          *offset,
539*758e9fbaSOystein Eftevaag     TPM2B_CREATION_DATA *dest);
540*758e9fbaSOystein Eftevaag 
541*758e9fbaSOystein Eftevaag TSS2_RC
542*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PUBLIC_Marshal(
543*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC    const *src,
544*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
545*758e9fbaSOystein Eftevaag     size_t          buffer_size,
546*758e9fbaSOystein Eftevaag     size_t         *offset);
547*758e9fbaSOystein Eftevaag 
548*758e9fbaSOystein Eftevaag TSS2_RC
549*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_PUBLIC_Unmarshal(
550*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
551*758e9fbaSOystein Eftevaag     size_t          buffer_size,
552*758e9fbaSOystein Eftevaag     size_t          *offset,
553*758e9fbaSOystein Eftevaag     TPM2B_PUBLIC    *dest);
554*758e9fbaSOystein Eftevaag 
555*758e9fbaSOystein Eftevaag TSS2_RC
556*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal(
557*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET  const *src,
558*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
559*758e9fbaSOystein Eftevaag     size_t          buffer_size,
560*758e9fbaSOystein Eftevaag     size_t         *offset);
561*758e9fbaSOystein Eftevaag 
562*758e9fbaSOystein Eftevaag TSS2_RC
563*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal(
564*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
565*758e9fbaSOystein Eftevaag     size_t          buffer_size,
566*758e9fbaSOystein Eftevaag     size_t          *offset,
567*758e9fbaSOystein Eftevaag     TPM2B_ENCRYPTED_SECRET *dest);
568*758e9fbaSOystein Eftevaag 
569*758e9fbaSOystein Eftevaag TSS2_RC
570*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ID_OBJECT_Marshal(
571*758e9fbaSOystein Eftevaag     TPM2B_ID_OBJECT const *src,
572*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
573*758e9fbaSOystein Eftevaag     size_t          buffer_size,
574*758e9fbaSOystein Eftevaag     size_t         *offset);
575*758e9fbaSOystein Eftevaag 
576*758e9fbaSOystein Eftevaag TSS2_RC
577*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_ID_OBJECT_Unmarshal(
578*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
579*758e9fbaSOystein Eftevaag     size_t          buffer_size,
580*758e9fbaSOystein Eftevaag     size_t          *offset,
581*758e9fbaSOystein Eftevaag     TPM2B_ID_OBJECT *dest);
582*758e9fbaSOystein Eftevaag 
583*758e9fbaSOystein Eftevaag TSS2_RC
584*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_IV_Marshal(
585*758e9fbaSOystein Eftevaag     TPM2B_IV const *src,
586*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
587*758e9fbaSOystein Eftevaag     size_t          buffer_size,
588*758e9fbaSOystein Eftevaag     size_t         *offset);
589*758e9fbaSOystein Eftevaag 
590*758e9fbaSOystein Eftevaag TSS2_RC
591*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_IV_Unmarshal(
592*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
593*758e9fbaSOystein Eftevaag     size_t          buffer_size,
594*758e9fbaSOystein Eftevaag     size_t          *offset,
595*758e9fbaSOystein Eftevaag     TPM2B_IV        *dest);
596*758e9fbaSOystein Eftevaag 
597*758e9fbaSOystein Eftevaag TSS2_RC
598*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_AUTH_Marshal(
599*758e9fbaSOystein Eftevaag     TPM2B_AUTH const *src,
600*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
601*758e9fbaSOystein Eftevaag     size_t          buffer_size,
602*758e9fbaSOystein Eftevaag     size_t         *offset);
603*758e9fbaSOystein Eftevaag 
604*758e9fbaSOystein Eftevaag TSS2_RC
605*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_AUTH_Unmarshal(
606*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
607*758e9fbaSOystein Eftevaag     size_t          buffer_size,
608*758e9fbaSOystein Eftevaag     size_t          *offset,
609*758e9fbaSOystein Eftevaag     TPM2B_AUTH      *dest);
610*758e9fbaSOystein Eftevaag 
611*758e9fbaSOystein Eftevaag TSS2_RC
612*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_EVENT_Marshal(
613*758e9fbaSOystein Eftevaag     TPM2B_EVENT const *src,
614*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
615*758e9fbaSOystein Eftevaag     size_t          buffer_size,
616*758e9fbaSOystein Eftevaag     size_t         *offset);
617*758e9fbaSOystein Eftevaag 
618*758e9fbaSOystein Eftevaag TSS2_RC
619*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_EVENT_Unmarshal(
620*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
621*758e9fbaSOystein Eftevaag     size_t          buffer_size,
622*758e9fbaSOystein Eftevaag     size_t          *offset,
623*758e9fbaSOystein Eftevaag     TPM2B_EVENT     *dest);
624*758e9fbaSOystein Eftevaag 
625*758e9fbaSOystein Eftevaag TSS2_RC
626*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_MAX_BUFFER_Marshal(
627*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER const *src,
628*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
629*758e9fbaSOystein Eftevaag     size_t          buffer_size,
630*758e9fbaSOystein Eftevaag     size_t         *offset);
631*758e9fbaSOystein Eftevaag 
632*758e9fbaSOystein Eftevaag TSS2_RC
633*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal(
634*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
635*758e9fbaSOystein Eftevaag     size_t          buffer_size,
636*758e9fbaSOystein Eftevaag     size_t          *offset,
637*758e9fbaSOystein Eftevaag     TPM2B_MAX_BUFFER *dest);
638*758e9fbaSOystein Eftevaag 
639*758e9fbaSOystein Eftevaag TSS2_RC
640*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NONCE_Marshal(
641*758e9fbaSOystein Eftevaag     TPM2B_NONCE const *src,
642*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
643*758e9fbaSOystein Eftevaag     size_t          buffer_size,
644*758e9fbaSOystein Eftevaag     size_t         *offset);
645*758e9fbaSOystein Eftevaag 
646*758e9fbaSOystein Eftevaag TSS2_RC
647*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_NONCE_Unmarshal(
648*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
649*758e9fbaSOystein Eftevaag     size_t          buffer_size,
650*758e9fbaSOystein Eftevaag     size_t          *offset,
651*758e9fbaSOystein Eftevaag     TPM2B_NONCE     *dest);
652*758e9fbaSOystein Eftevaag 
653*758e9fbaSOystein Eftevaag TSS2_RC
654*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_OPERAND_Marshal(
655*758e9fbaSOystein Eftevaag     TPM2B_OPERAND const *src,
656*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
657*758e9fbaSOystein Eftevaag     size_t          buffer_size,
658*758e9fbaSOystein Eftevaag     size_t         *offset);
659*758e9fbaSOystein Eftevaag 
660*758e9fbaSOystein Eftevaag TSS2_RC
661*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_OPERAND_Unmarshal(
662*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
663*758e9fbaSOystein Eftevaag     size_t          buffer_size,
664*758e9fbaSOystein Eftevaag     size_t          *offset,
665*758e9fbaSOystein Eftevaag     TPM2B_OPERAND   *dest);
666*758e9fbaSOystein Eftevaag 
667*758e9fbaSOystein Eftevaag TSS2_RC
668*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_TIMEOUT_Marshal(
669*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT const *src,
670*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
671*758e9fbaSOystein Eftevaag     size_t          buffer_size,
672*758e9fbaSOystein Eftevaag     size_t         *offset);
673*758e9fbaSOystein Eftevaag 
674*758e9fbaSOystein Eftevaag TSS2_RC
675*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_TIMEOUT_Unmarshal(
676*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
677*758e9fbaSOystein Eftevaag     size_t          buffer_size,
678*758e9fbaSOystein Eftevaag     size_t          *offset,
679*758e9fbaSOystein Eftevaag     TPM2B_TIMEOUT   *dest);
680*758e9fbaSOystein Eftevaag 
681*758e9fbaSOystein Eftevaag TSS2_RC
682*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_TEMPLATE_Marshal(
683*758e9fbaSOystein Eftevaag     TPM2B_TEMPLATE  const *src,
684*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
685*758e9fbaSOystein Eftevaag     size_t          buffer_size,
686*758e9fbaSOystein Eftevaag     size_t         *offset);
687*758e9fbaSOystein Eftevaag 
688*758e9fbaSOystein Eftevaag TSS2_RC
689*758e9fbaSOystein Eftevaag Tss2_MU_TPM2B_TEMPLATE_Unmarshal(
690*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
691*758e9fbaSOystein Eftevaag     size_t          buffer_size,
692*758e9fbaSOystein Eftevaag     size_t          *offset,
693*758e9fbaSOystein Eftevaag     TPM2B_TEMPLATE  *dest);
694*758e9fbaSOystein Eftevaag 
695*758e9fbaSOystein Eftevaag TSS2_RC
696*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CONTEXT_Marshal(
697*758e9fbaSOystein Eftevaag     TPMS_CONTEXT    const *src,
698*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
699*758e9fbaSOystein Eftevaag     size_t          buffer_size,
700*758e9fbaSOystein Eftevaag     size_t         *offset);
701*758e9fbaSOystein Eftevaag 
702*758e9fbaSOystein Eftevaag TSS2_RC
703*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CONTEXT_Unmarshal(
704*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
705*758e9fbaSOystein Eftevaag     size_t          buffer_size,
706*758e9fbaSOystein Eftevaag     size_t         *offset,
707*758e9fbaSOystein Eftevaag     TPMS_CONTEXT   *dest);
708*758e9fbaSOystein Eftevaag 
709*758e9fbaSOystein Eftevaag TSS2_RC
710*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TIME_INFO_Marshal(
711*758e9fbaSOystein Eftevaag     TPMS_TIME_INFO  const *src,
712*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
713*758e9fbaSOystein Eftevaag     size_t          buffer_size,
714*758e9fbaSOystein Eftevaag     size_t         *offset);
715*758e9fbaSOystein Eftevaag 
716*758e9fbaSOystein Eftevaag TSS2_RC
717*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TIME_INFO_Unmarshal(
718*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
719*758e9fbaSOystein Eftevaag     size_t          buffer_size,
720*758e9fbaSOystein Eftevaag     size_t         *offset,
721*758e9fbaSOystein Eftevaag     TPMS_TIME_INFO *dest);
722*758e9fbaSOystein Eftevaag 
723*758e9fbaSOystein Eftevaag TSS2_RC
724*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ECC_POINT_Marshal(
725*758e9fbaSOystein Eftevaag     TPMS_ECC_POINT  const *src,
726*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
727*758e9fbaSOystein Eftevaag     size_t          buffer_size,
728*758e9fbaSOystein Eftevaag     size_t         *offset);
729*758e9fbaSOystein Eftevaag 
730*758e9fbaSOystein Eftevaag TSS2_RC
731*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ECC_POINT_Unmarshal(
732*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
733*758e9fbaSOystein Eftevaag     size_t          buffer_size,
734*758e9fbaSOystein Eftevaag     size_t         *offset,
735*758e9fbaSOystein Eftevaag     TPMS_ECC_POINT *dest);
736*758e9fbaSOystein Eftevaag 
737*758e9fbaSOystein Eftevaag TSS2_RC
738*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_PUBLIC_Marshal(
739*758e9fbaSOystein Eftevaag     TPMS_NV_PUBLIC  const *src,
740*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
741*758e9fbaSOystein Eftevaag     size_t          buffer_size,
742*758e9fbaSOystein Eftevaag     size_t         *offset);
743*758e9fbaSOystein Eftevaag 
744*758e9fbaSOystein Eftevaag TSS2_RC
745*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_PUBLIC_Unmarshal(
746*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
747*758e9fbaSOystein Eftevaag     size_t          buffer_size,
748*758e9fbaSOystein Eftevaag     size_t         *offset,
749*758e9fbaSOystein Eftevaag     TPMS_NV_PUBLIC *dest);
750*758e9fbaSOystein Eftevaag 
751*758e9fbaSOystein Eftevaag TSS2_RC
752*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALG_PROPERTY_Marshal(
753*758e9fbaSOystein Eftevaag     TPMS_ALG_PROPERTY  const *src,
754*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
755*758e9fbaSOystein Eftevaag     size_t          buffer_size,
756*758e9fbaSOystein Eftevaag     size_t         *offset);
757*758e9fbaSOystein Eftevaag 
758*758e9fbaSOystein Eftevaag TSS2_RC
759*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal(
760*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
761*758e9fbaSOystein Eftevaag     size_t          buffer_size,
762*758e9fbaSOystein Eftevaag     size_t         *offset,
763*758e9fbaSOystein Eftevaag     TPMS_ALG_PROPERTY *dest);
764*758e9fbaSOystein Eftevaag 
765*758e9fbaSOystein Eftevaag TSS2_RC
766*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALGORITHM_DESCRIPTION_Marshal(
767*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DESCRIPTION  const *src,
768*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
769*758e9fbaSOystein Eftevaag     size_t          buffer_size,
770*758e9fbaSOystein Eftevaag     size_t         *offset);
771*758e9fbaSOystein Eftevaag 
772*758e9fbaSOystein Eftevaag TSS2_RC
773*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALGORITHM_DESCRIPTION_Unmarshal(
774*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
775*758e9fbaSOystein Eftevaag     size_t          buffer_size,
776*758e9fbaSOystein Eftevaag     size_t         *offset,
777*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DESCRIPTION *dest);
778*758e9fbaSOystein Eftevaag 
779*758e9fbaSOystein Eftevaag TSS2_RC
780*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal(
781*758e9fbaSOystein Eftevaag     TPMS_TAGGED_PROPERTY  const *src,
782*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
783*758e9fbaSOystein Eftevaag     size_t          buffer_size,
784*758e9fbaSOystein Eftevaag     size_t         *offset);
785*758e9fbaSOystein Eftevaag 
786*758e9fbaSOystein Eftevaag TSS2_RC
787*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal(
788*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
789*758e9fbaSOystein Eftevaag     size_t          buffer_size,
790*758e9fbaSOystein Eftevaag     size_t         *offset,
791*758e9fbaSOystein Eftevaag     TPMS_TAGGED_PROPERTY *dest);
792*758e9fbaSOystein Eftevaag 
793*758e9fbaSOystein Eftevaag TSS2_RC
794*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_POLICY_Marshal(
795*758e9fbaSOystein Eftevaag     TPMS_TAGGED_POLICY  const *src,
796*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
797*758e9fbaSOystein Eftevaag     size_t          buffer_size,
798*758e9fbaSOystein Eftevaag     size_t         *offset);
799*758e9fbaSOystein Eftevaag 
800*758e9fbaSOystein Eftevaag TSS2_RC
801*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal(
802*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
803*758e9fbaSOystein Eftevaag     size_t          buffer_size,
804*758e9fbaSOystein Eftevaag     size_t         *offset,
805*758e9fbaSOystein Eftevaag     TPMS_TAGGED_POLICY *dest);
806*758e9fbaSOystein Eftevaag 
807*758e9fbaSOystein Eftevaag TSS2_RC
808*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CLOCK_INFO_Marshal(
809*758e9fbaSOystein Eftevaag     TPMS_CLOCK_INFO  const *src,
810*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
811*758e9fbaSOystein Eftevaag     size_t          buffer_size,
812*758e9fbaSOystein Eftevaag     size_t         *offset);
813*758e9fbaSOystein Eftevaag 
814*758e9fbaSOystein Eftevaag TSS2_RC
815*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CLOCK_INFO_Unmarshal(
816*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
817*758e9fbaSOystein Eftevaag     size_t          buffer_size,
818*758e9fbaSOystein Eftevaag     size_t         *offset,
819*758e9fbaSOystein Eftevaag     TPMS_CLOCK_INFO *dest);
820*758e9fbaSOystein Eftevaag 
821*758e9fbaSOystein Eftevaag TSS2_RC
822*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal(
823*758e9fbaSOystein Eftevaag     TPMS_TIME_ATTEST_INFO  const *src,
824*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
825*758e9fbaSOystein Eftevaag     size_t          buffer_size,
826*758e9fbaSOystein Eftevaag     size_t         *offset);
827*758e9fbaSOystein Eftevaag 
828*758e9fbaSOystein Eftevaag TSS2_RC
829*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal(
830*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
831*758e9fbaSOystein Eftevaag     size_t          buffer_size,
832*758e9fbaSOystein Eftevaag     size_t         *offset,
833*758e9fbaSOystein Eftevaag     TPMS_TIME_ATTEST_INFO *dest);
834*758e9fbaSOystein Eftevaag 
835*758e9fbaSOystein Eftevaag TSS2_RC
836*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CERTIFY_INFO_Marshal(
837*758e9fbaSOystein Eftevaag     TPMS_CERTIFY_INFO  const *src,
838*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
839*758e9fbaSOystein Eftevaag     size_t          buffer_size,
840*758e9fbaSOystein Eftevaag     size_t         *offset);
841*758e9fbaSOystein Eftevaag 
842*758e9fbaSOystein Eftevaag TSS2_RC
843*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal(
844*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
845*758e9fbaSOystein Eftevaag     size_t          buffer_size,
846*758e9fbaSOystein Eftevaag     size_t         *offset,
847*758e9fbaSOystein Eftevaag     TPMS_CERTIFY_INFO *dest);
848*758e9fbaSOystein Eftevaag 
849*758e9fbaSOystein Eftevaag TSS2_RC
850*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal(
851*758e9fbaSOystein Eftevaag     TPMS_COMMAND_AUDIT_INFO  const *src,
852*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
853*758e9fbaSOystein Eftevaag     size_t          buffer_size,
854*758e9fbaSOystein Eftevaag     size_t         *offset);
855*758e9fbaSOystein Eftevaag 
856*758e9fbaSOystein Eftevaag TSS2_RC
857*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal(
858*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
859*758e9fbaSOystein Eftevaag     size_t          buffer_size,
860*758e9fbaSOystein Eftevaag     size_t         *offset,
861*758e9fbaSOystein Eftevaag     TPMS_COMMAND_AUDIT_INFO *dest);
862*758e9fbaSOystein Eftevaag 
863*758e9fbaSOystein Eftevaag TSS2_RC
864*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal(
865*758e9fbaSOystein Eftevaag     TPMS_SESSION_AUDIT_INFO  const *src,
866*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
867*758e9fbaSOystein Eftevaag     size_t          buffer_size,
868*758e9fbaSOystein Eftevaag     size_t         *offset);
869*758e9fbaSOystein Eftevaag 
870*758e9fbaSOystein Eftevaag TSS2_RC
871*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal(
872*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
873*758e9fbaSOystein Eftevaag     size_t          buffer_size,
874*758e9fbaSOystein Eftevaag     size_t         *offset,
875*758e9fbaSOystein Eftevaag     TPMS_SESSION_AUDIT_INFO *dest);
876*758e9fbaSOystein Eftevaag 
877*758e9fbaSOystein Eftevaag TSS2_RC
878*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CREATION_INFO_Marshal(
879*758e9fbaSOystein Eftevaag     TPMS_CREATION_INFO  const *src,
880*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
881*758e9fbaSOystein Eftevaag     size_t          buffer_size,
882*758e9fbaSOystein Eftevaag     size_t         *offset);
883*758e9fbaSOystein Eftevaag 
884*758e9fbaSOystein Eftevaag TSS2_RC
885*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CREATION_INFO_Unmarshal(
886*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
887*758e9fbaSOystein Eftevaag     size_t          buffer_size,
888*758e9fbaSOystein Eftevaag     size_t         *offset,
889*758e9fbaSOystein Eftevaag     TPMS_CREATION_INFO *dest);
890*758e9fbaSOystein Eftevaag 
891*758e9fbaSOystein Eftevaag TSS2_RC
892*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal(
893*758e9fbaSOystein Eftevaag     TPMS_NV_CERTIFY_INFO  const *src,
894*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
895*758e9fbaSOystein Eftevaag     size_t          buffer_size,
896*758e9fbaSOystein Eftevaag     size_t         *offset);
897*758e9fbaSOystein Eftevaag 
898*758e9fbaSOystein Eftevaag TSS2_RC
899*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal(
900*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
901*758e9fbaSOystein Eftevaag     size_t          buffer_size,
902*758e9fbaSOystein Eftevaag     size_t         *offset,
903*758e9fbaSOystein Eftevaag     TPMS_NV_CERTIFY_INFO *dest);
904*758e9fbaSOystein Eftevaag 
905*758e9fbaSOystein Eftevaag TSS2_RC
906*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AUTH_COMMAND_Marshal(
907*758e9fbaSOystein Eftevaag     TPMS_AUTH_COMMAND  const *src,
908*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
909*758e9fbaSOystein Eftevaag     size_t          buffer_size,
910*758e9fbaSOystein Eftevaag     size_t         *offset);
911*758e9fbaSOystein Eftevaag 
912*758e9fbaSOystein Eftevaag TSS2_RC
913*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal(
914*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
915*758e9fbaSOystein Eftevaag     size_t          buffer_size,
916*758e9fbaSOystein Eftevaag     size_t         *offset,
917*758e9fbaSOystein Eftevaag     TPMS_AUTH_COMMAND *dest);
918*758e9fbaSOystein Eftevaag 
919*758e9fbaSOystein Eftevaag TSS2_RC
920*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AUTH_RESPONSE_Marshal(
921*758e9fbaSOystein Eftevaag     TPMS_AUTH_RESPONSE  const *src,
922*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
923*758e9fbaSOystein Eftevaag     size_t          buffer_size,
924*758e9fbaSOystein Eftevaag     size_t         *offset);
925*758e9fbaSOystein Eftevaag 
926*758e9fbaSOystein Eftevaag TSS2_RC
927*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal(
928*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
929*758e9fbaSOystein Eftevaag     size_t          buffer_size,
930*758e9fbaSOystein Eftevaag     size_t         *offset,
931*758e9fbaSOystein Eftevaag     TPMS_AUTH_RESPONSE *dest);
932*758e9fbaSOystein Eftevaag 
933*758e9fbaSOystein Eftevaag TSS2_RC
934*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal(
935*758e9fbaSOystein Eftevaag     TPMS_SENSITIVE_CREATE  const *src,
936*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
937*758e9fbaSOystein Eftevaag     size_t          buffer_size,
938*758e9fbaSOystein Eftevaag     size_t         *offset);
939*758e9fbaSOystein Eftevaag 
940*758e9fbaSOystein Eftevaag TSS2_RC
941*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal(
942*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
943*758e9fbaSOystein Eftevaag     size_t          buffer_size,
944*758e9fbaSOystein Eftevaag     size_t         *offset,
945*758e9fbaSOystein Eftevaag     TPMS_SENSITIVE_CREATE *dest);
946*758e9fbaSOystein Eftevaag 
947*758e9fbaSOystein Eftevaag TSS2_RC
948*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_HASH_Marshal(
949*758e9fbaSOystein Eftevaag     TPMS_SCHEME_HASH  const *src,
950*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
951*758e9fbaSOystein Eftevaag     size_t          buffer_size,
952*758e9fbaSOystein Eftevaag     size_t         *offset);
953*758e9fbaSOystein Eftevaag 
954*758e9fbaSOystein Eftevaag TSS2_RC
955*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_HASH_Unmarshal(
956*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
957*758e9fbaSOystein Eftevaag     size_t          buffer_size,
958*758e9fbaSOystein Eftevaag     size_t         *offset,
959*758e9fbaSOystein Eftevaag     TPMS_SCHEME_HASH *dest);
960*758e9fbaSOystein Eftevaag 
961*758e9fbaSOystein Eftevaag TSS2_RC
962*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_ECDAA_Marshal(
963*758e9fbaSOystein Eftevaag     TPMS_SCHEME_ECDAA  const *src,
964*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
965*758e9fbaSOystein Eftevaag     size_t          buffer_size,
966*758e9fbaSOystein Eftevaag     size_t         *offset);
967*758e9fbaSOystein Eftevaag 
968*758e9fbaSOystein Eftevaag TSS2_RC
969*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal(
970*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
971*758e9fbaSOystein Eftevaag     size_t          buffer_size,
972*758e9fbaSOystein Eftevaag     size_t         *offset,
973*758e9fbaSOystein Eftevaag     TPMS_SCHEME_ECDAA *dest);
974*758e9fbaSOystein Eftevaag 
975*758e9fbaSOystein Eftevaag TSS2_RC
976*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_XOR_Marshal(
977*758e9fbaSOystein Eftevaag     TPMS_SCHEME_XOR  const *src,
978*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
979*758e9fbaSOystein Eftevaag     size_t          buffer_size,
980*758e9fbaSOystein Eftevaag     size_t         *offset);
981*758e9fbaSOystein Eftevaag 
982*758e9fbaSOystein Eftevaag TSS2_RC
983*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SCHEME_XOR_Unmarshal(
984*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
985*758e9fbaSOystein Eftevaag     size_t          buffer_size,
986*758e9fbaSOystein Eftevaag     size_t         *offset,
987*758e9fbaSOystein Eftevaag     TPMS_SCHEME_XOR *dest);
988*758e9fbaSOystein Eftevaag 
989*758e9fbaSOystein Eftevaag TSS2_RC
990*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SIGNATURE_RSA_Marshal(
991*758e9fbaSOystein Eftevaag     TPMS_SIGNATURE_RSA  const *src,
992*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
993*758e9fbaSOystein Eftevaag     size_t          buffer_size,
994*758e9fbaSOystein Eftevaag     size_t         *offset);
995*758e9fbaSOystein Eftevaag 
996*758e9fbaSOystein Eftevaag TSS2_RC
997*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal(
998*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
999*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1000*758e9fbaSOystein Eftevaag     size_t         *offset,
1001*758e9fbaSOystein Eftevaag     TPMS_SIGNATURE_RSA *dest);
1002*758e9fbaSOystein Eftevaag 
1003*758e9fbaSOystein Eftevaag TSS2_RC
1004*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SIGNATURE_ECC_Marshal(
1005*758e9fbaSOystein Eftevaag     TPMS_SIGNATURE_ECC  const *src,
1006*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1007*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1008*758e9fbaSOystein Eftevaag     size_t         *offset);
1009*758e9fbaSOystein Eftevaag 
1010*758e9fbaSOystein Eftevaag TSS2_RC
1011*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal(
1012*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1013*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1014*758e9fbaSOystein Eftevaag     size_t         *offset,
1015*758e9fbaSOystein Eftevaag     TPMS_SIGNATURE_ECC *dest);
1016*758e9fbaSOystein Eftevaag 
1017*758e9fbaSOystein Eftevaag TSS2_RC
1018*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal(
1019*758e9fbaSOystein Eftevaag     TPMS_NV_PIN_COUNTER_PARAMETERS  const *src,
1020*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1021*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1022*758e9fbaSOystein Eftevaag     size_t         *offset);
1023*758e9fbaSOystein Eftevaag 
1024*758e9fbaSOystein Eftevaag TSS2_RC
1025*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal(
1026*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1027*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1028*758e9fbaSOystein Eftevaag     size_t         *offset,
1029*758e9fbaSOystein Eftevaag     TPMS_NV_PIN_COUNTER_PARAMETERS *dest);
1030*758e9fbaSOystein Eftevaag 
1031*758e9fbaSOystein Eftevaag TSS2_RC
1032*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CONTEXT_DATA_Marshal(
1033*758e9fbaSOystein Eftevaag     TPMS_CONTEXT_DATA  const *src,
1034*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1035*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1036*758e9fbaSOystein Eftevaag     size_t         *offset);
1037*758e9fbaSOystein Eftevaag 
1038*758e9fbaSOystein Eftevaag TSS2_RC
1039*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal(
1040*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1041*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1042*758e9fbaSOystein Eftevaag     size_t         *offset,
1043*758e9fbaSOystein Eftevaag     TPMS_CONTEXT_DATA *dest);
1044*758e9fbaSOystein Eftevaag 
1045*758e9fbaSOystein Eftevaag TSS2_RC
1046*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_PCR_SELECT_Marshal(
1047*758e9fbaSOystein Eftevaag     TPMS_PCR_SELECT  const *src,
1048*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1049*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1050*758e9fbaSOystein Eftevaag     size_t         *offset);
1051*758e9fbaSOystein Eftevaag 
1052*758e9fbaSOystein Eftevaag TSS2_RC
1053*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_PCR_SELECT_Unmarshal(
1054*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1055*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1056*758e9fbaSOystein Eftevaag     size_t         *offset,
1057*758e9fbaSOystein Eftevaag     TPMS_PCR_SELECT *dest);
1058*758e9fbaSOystein Eftevaag 
1059*758e9fbaSOystein Eftevaag TSS2_RC
1060*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_PCR_SELECTION_Marshal(
1061*758e9fbaSOystein Eftevaag     TPMS_PCR_SELECTION  const *src,
1062*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1063*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1064*758e9fbaSOystein Eftevaag     size_t         *offset);
1065*758e9fbaSOystein Eftevaag 
1066*758e9fbaSOystein Eftevaag TSS2_RC
1067*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_PCR_SELECTION_Unmarshal(
1068*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1069*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1070*758e9fbaSOystein Eftevaag     size_t         *offset,
1071*758e9fbaSOystein Eftevaag     TPMS_PCR_SELECTION *dest);
1072*758e9fbaSOystein Eftevaag 
1073*758e9fbaSOystein Eftevaag TSS2_RC
1074*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal(
1075*758e9fbaSOystein Eftevaag     TPMS_TAGGED_PCR_SELECT  const *src,
1076*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1077*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1078*758e9fbaSOystein Eftevaag     size_t         *offset);
1079*758e9fbaSOystein Eftevaag 
1080*758e9fbaSOystein Eftevaag TSS2_RC
1081*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal(
1082*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1083*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1084*758e9fbaSOystein Eftevaag     size_t         *offset,
1085*758e9fbaSOystein Eftevaag     TPMS_TAGGED_PCR_SELECT *dest);
1086*758e9fbaSOystein Eftevaag 
1087*758e9fbaSOystein Eftevaag TSS2_RC
1088*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_QUOTE_INFO_Marshal(
1089*758e9fbaSOystein Eftevaag     TPMS_QUOTE_INFO  const *src,
1090*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1091*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1092*758e9fbaSOystein Eftevaag     size_t         *offset);
1093*758e9fbaSOystein Eftevaag 
1094*758e9fbaSOystein Eftevaag TSS2_RC
1095*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_QUOTE_INFO_Unmarshal(
1096*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1097*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1098*758e9fbaSOystein Eftevaag     size_t         *offset,
1099*758e9fbaSOystein Eftevaag     TPMS_QUOTE_INFO *dest);
1100*758e9fbaSOystein Eftevaag 
1101*758e9fbaSOystein Eftevaag TSS2_RC
1102*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CREATION_DATA_Marshal(
1103*758e9fbaSOystein Eftevaag     TPMS_CREATION_DATA  const *src,
1104*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1105*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1106*758e9fbaSOystein Eftevaag     size_t         *offset);
1107*758e9fbaSOystein Eftevaag 
1108*758e9fbaSOystein Eftevaag TSS2_RC
1109*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CREATION_DATA_Unmarshal(
1110*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1111*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1112*758e9fbaSOystein Eftevaag     size_t         *offset,
1113*758e9fbaSOystein Eftevaag     TPMS_CREATION_DATA *dest);
1114*758e9fbaSOystein Eftevaag 
1115*758e9fbaSOystein Eftevaag TSS2_RC
1116*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ECC_PARMS_Marshal(
1117*758e9fbaSOystein Eftevaag     TPMS_ECC_PARMS  const *src,
1118*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1119*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1120*758e9fbaSOystein Eftevaag     size_t         *offset);
1121*758e9fbaSOystein Eftevaag 
1122*758e9fbaSOystein Eftevaag TSS2_RC
1123*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ECC_PARMS_Unmarshal(
1124*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1125*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1126*758e9fbaSOystein Eftevaag     size_t         *offset,
1127*758e9fbaSOystein Eftevaag     TPMS_ECC_PARMS *dest);
1128*758e9fbaSOystein Eftevaag 
1129*758e9fbaSOystein Eftevaag TSS2_RC
1130*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ATTEST_Marshal(
1131*758e9fbaSOystein Eftevaag     TPMS_ATTEST     const *src,
1132*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1133*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1134*758e9fbaSOystein Eftevaag     size_t         *offset);
1135*758e9fbaSOystein Eftevaag 
1136*758e9fbaSOystein Eftevaag TSS2_RC
1137*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ATTEST_Unmarshal(
1138*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1139*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1140*758e9fbaSOystein Eftevaag     size_t         *offset,
1141*758e9fbaSOystein Eftevaag     TPMS_ATTEST *dest);
1142*758e9fbaSOystein Eftevaag 
1143*758e9fbaSOystein Eftevaag TSS2_RC
1144*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal(
1145*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DETAIL_ECC const *src,
1146*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1147*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1148*758e9fbaSOystein Eftevaag     size_t         *offset);
1149*758e9fbaSOystein Eftevaag 
1150*758e9fbaSOystein Eftevaag TSS2_RC
1151*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal(
1152*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1153*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1154*758e9fbaSOystein Eftevaag     size_t         *offset,
1155*758e9fbaSOystein Eftevaag     TPMS_ALGORITHM_DETAIL_ECC *dest);
1156*758e9fbaSOystein Eftevaag 
1157*758e9fbaSOystein Eftevaag TSS2_RC
1158*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CAPABILITY_DATA_Marshal(
1159*758e9fbaSOystein Eftevaag     TPMS_CAPABILITY_DATA const *src,
1160*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1161*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1162*758e9fbaSOystein Eftevaag     size_t         *offset);
1163*758e9fbaSOystein Eftevaag 
1164*758e9fbaSOystein Eftevaag TSS2_RC
1165*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal(
1166*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1167*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1168*758e9fbaSOystein Eftevaag     size_t         *offset,
1169*758e9fbaSOystein Eftevaag     TPMS_CAPABILITY_DATA *dest);
1170*758e9fbaSOystein Eftevaag 
1171*758e9fbaSOystein Eftevaag TSS2_RC
1172*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal(
1173*758e9fbaSOystein Eftevaag     TPMS_KEYEDHASH_PARMS const *src,
1174*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1175*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1176*758e9fbaSOystein Eftevaag     size_t         *offset);
1177*758e9fbaSOystein Eftevaag 
1178*758e9fbaSOystein Eftevaag TSS2_RC
1179*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal(
1180*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1181*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1182*758e9fbaSOystein Eftevaag     size_t         *offset,
1183*758e9fbaSOystein Eftevaag     TPMS_KEYEDHASH_PARMS *dest);
1184*758e9fbaSOystein Eftevaag 
1185*758e9fbaSOystein Eftevaag TSS2_RC
1186*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_RSA_PARMS_Marshal(
1187*758e9fbaSOystein Eftevaag     TPMS_RSA_PARMS  const *src,
1188*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1189*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1190*758e9fbaSOystein Eftevaag     size_t         *offset);
1191*758e9fbaSOystein Eftevaag 
1192*758e9fbaSOystein Eftevaag TSS2_RC
1193*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_RSA_PARMS_Unmarshal(
1194*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1195*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1196*758e9fbaSOystein Eftevaag     size_t         *offset,
1197*758e9fbaSOystein Eftevaag     TPMS_RSA_PARMS *dest);
1198*758e9fbaSOystein Eftevaag 
1199*758e9fbaSOystein Eftevaag TSS2_RC
1200*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal(
1201*758e9fbaSOystein Eftevaag     TPMS_SYMCIPHER_PARMS const *src,
1202*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1203*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1204*758e9fbaSOystein Eftevaag     size_t         *offset);
1205*758e9fbaSOystein Eftevaag 
1206*758e9fbaSOystein Eftevaag TSS2_RC
1207*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal(
1208*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1209*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1210*758e9fbaSOystein Eftevaag     size_t         *offset,
1211*758e9fbaSOystein Eftevaag     TPMS_SYMCIPHER_PARMS *dest);
1212*758e9fbaSOystein Eftevaag 
1213*758e9fbaSOystein Eftevaag TSS2_RC
1214*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AC_OUTPUT_Marshal(
1215*758e9fbaSOystein Eftevaag     TPMS_AC_OUTPUT  const *src,
1216*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1217*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1218*758e9fbaSOystein Eftevaag     size_t         *offset);
1219*758e9fbaSOystein Eftevaag 
1220*758e9fbaSOystein Eftevaag TSS2_RC
1221*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_AC_OUTPUT_Unmarshal(
1222*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1223*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1224*758e9fbaSOystein Eftevaag     size_t         *offset,
1225*758e9fbaSOystein Eftevaag     TPMS_AC_OUTPUT *dest);
1226*758e9fbaSOystein Eftevaag 
1227*758e9fbaSOystein Eftevaag TSS2_RC
1228*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ID_OBJECT_Marshal(
1229*758e9fbaSOystein Eftevaag     TPMS_ID_OBJECT  const *src,
1230*758e9fbaSOystein Eftevaag     uint8_t         buffer[],
1231*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1232*758e9fbaSOystein Eftevaag     size_t         *offset);
1233*758e9fbaSOystein Eftevaag 
1234*758e9fbaSOystein Eftevaag TSS2_RC
1235*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_ID_OBJECT_Unmarshal(
1236*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1237*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1238*758e9fbaSOystein Eftevaag     size_t         *offset,
1239*758e9fbaSOystein Eftevaag     TPMS_ID_OBJECT *dest);
1240*758e9fbaSOystein Eftevaag 
1241*758e9fbaSOystein Eftevaag TSS2_RC
1242*758e9fbaSOystein Eftevaag Tss2_MU_TPML_CC_Marshal(
1243*758e9fbaSOystein Eftevaag     TPML_CC const *src,
1244*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1245*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1246*758e9fbaSOystein Eftevaag     size_t      *offset);
1247*758e9fbaSOystein Eftevaag 
1248*758e9fbaSOystein Eftevaag TSS2_RC
1249*758e9fbaSOystein Eftevaag Tss2_MU_TPML_CC_Unmarshal(
1250*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1251*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1252*758e9fbaSOystein Eftevaag     size_t         *offset,
1253*758e9fbaSOystein Eftevaag     TPML_CC        *dest);
1254*758e9fbaSOystein Eftevaag 
1255*758e9fbaSOystein Eftevaag TSS2_RC
1256*758e9fbaSOystein Eftevaag Tss2_MU_TPML_CCA_Marshal(
1257*758e9fbaSOystein Eftevaag     TPML_CCA const *src,
1258*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1259*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1260*758e9fbaSOystein Eftevaag     size_t      *offset);
1261*758e9fbaSOystein Eftevaag 
1262*758e9fbaSOystein Eftevaag TSS2_RC
1263*758e9fbaSOystein Eftevaag Tss2_MU_TPML_CCA_Unmarshal(
1264*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1265*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1266*758e9fbaSOystein Eftevaag     size_t         *offset,
1267*758e9fbaSOystein Eftevaag     TPML_CCA       *dest);
1268*758e9fbaSOystein Eftevaag 
1269*758e9fbaSOystein Eftevaag TSS2_RC
1270*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ALG_Marshal(
1271*758e9fbaSOystein Eftevaag     TPML_ALG const *src,
1272*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1273*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1274*758e9fbaSOystein Eftevaag     size_t      *offset);
1275*758e9fbaSOystein Eftevaag 
1276*758e9fbaSOystein Eftevaag TSS2_RC
1277*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ALG_Unmarshal(
1278*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1279*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1280*758e9fbaSOystein Eftevaag     size_t         *offset,
1281*758e9fbaSOystein Eftevaag     TPML_ALG       *dest);
1282*758e9fbaSOystein Eftevaag 
1283*758e9fbaSOystein Eftevaag TSS2_RC
1284*758e9fbaSOystein Eftevaag Tss2_MU_TPML_HANDLE_Marshal(
1285*758e9fbaSOystein Eftevaag     TPML_HANDLE const *src,
1286*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1287*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1288*758e9fbaSOystein Eftevaag     size_t      *offset);
1289*758e9fbaSOystein Eftevaag 
1290*758e9fbaSOystein Eftevaag TSS2_RC
1291*758e9fbaSOystein Eftevaag Tss2_MU_TPML_HANDLE_Unmarshal(
1292*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1293*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1294*758e9fbaSOystein Eftevaag     size_t         *offset,
1295*758e9fbaSOystein Eftevaag     TPML_HANDLE    *dest);
1296*758e9fbaSOystein Eftevaag 
1297*758e9fbaSOystein Eftevaag TSS2_RC
1298*758e9fbaSOystein Eftevaag Tss2_MU_TPML_DIGEST_Marshal(
1299*758e9fbaSOystein Eftevaag     TPML_DIGEST const *src,
1300*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1301*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1302*758e9fbaSOystein Eftevaag     size_t      *offset);
1303*758e9fbaSOystein Eftevaag 
1304*758e9fbaSOystein Eftevaag TSS2_RC
1305*758e9fbaSOystein Eftevaag Tss2_MU_TPML_DIGEST_Unmarshal(
1306*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1307*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1308*758e9fbaSOystein Eftevaag     size_t         *offset,
1309*758e9fbaSOystein Eftevaag     TPML_DIGEST    *dest);
1310*758e9fbaSOystein Eftevaag 
1311*758e9fbaSOystein Eftevaag TSS2_RC
1312*758e9fbaSOystein Eftevaag Tss2_MU_TPML_DIGEST_VALUES_Marshal(
1313*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES const *src,
1314*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1315*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1316*758e9fbaSOystein Eftevaag     size_t      *offset);
1317*758e9fbaSOystein Eftevaag 
1318*758e9fbaSOystein Eftevaag TSS2_RC
1319*758e9fbaSOystein Eftevaag Tss2_MU_TPML_DIGEST_VALUES_Unmarshal(
1320*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1321*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1322*758e9fbaSOystein Eftevaag     size_t         *offset,
1323*758e9fbaSOystein Eftevaag     TPML_DIGEST_VALUES *dest);
1324*758e9fbaSOystein Eftevaag 
1325*758e9fbaSOystein Eftevaag TSS2_RC
1326*758e9fbaSOystein Eftevaag Tss2_MU_TPML_PCR_SELECTION_Marshal(
1327*758e9fbaSOystein Eftevaag     TPML_PCR_SELECTION const *src,
1328*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1329*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1330*758e9fbaSOystein Eftevaag     size_t      *offset);
1331*758e9fbaSOystein Eftevaag 
1332*758e9fbaSOystein Eftevaag TSS2_RC
1333*758e9fbaSOystein Eftevaag Tss2_MU_TPML_PCR_SELECTION_Unmarshal(
1334*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1335*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1336*758e9fbaSOystein Eftevaag     size_t         *offset,
1337*758e9fbaSOystein Eftevaag     TPML_PCR_SELECTION *dest);
1338*758e9fbaSOystein Eftevaag 
1339*758e9fbaSOystein Eftevaag TSS2_RC
1340*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ALG_PROPERTY_Marshal(
1341*758e9fbaSOystein Eftevaag     TPML_ALG_PROPERTY const *src,
1342*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1343*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1344*758e9fbaSOystein Eftevaag     size_t      *offset);
1345*758e9fbaSOystein Eftevaag 
1346*758e9fbaSOystein Eftevaag TSS2_RC
1347*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ALG_PROPERTY_Unmarshal(
1348*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1349*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1350*758e9fbaSOystein Eftevaag     size_t         *offset,
1351*758e9fbaSOystein Eftevaag     TPML_ALG_PROPERTY *dest);
1352*758e9fbaSOystein Eftevaag 
1353*758e9fbaSOystein Eftevaag TSS2_RC
1354*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ECC_CURVE_Marshal(
1355*758e9fbaSOystein Eftevaag     TPML_ECC_CURVE const *src,
1356*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1357*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1358*758e9fbaSOystein Eftevaag     size_t      *offset);
1359*758e9fbaSOystein Eftevaag 
1360*758e9fbaSOystein Eftevaag TSS2_RC
1361*758e9fbaSOystein Eftevaag Tss2_MU_TPML_ECC_CURVE_Unmarshal(
1362*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1363*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1364*758e9fbaSOystein Eftevaag     size_t         *offset,
1365*758e9fbaSOystein Eftevaag     TPML_ECC_CURVE *dest);
1366*758e9fbaSOystein Eftevaag 
1367*758e9fbaSOystein Eftevaag TSS2_RC
1368*758e9fbaSOystein Eftevaag Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal(
1369*758e9fbaSOystein Eftevaag     TPML_TAGGED_PCR_PROPERTY const *src,
1370*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1371*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1372*758e9fbaSOystein Eftevaag     size_t      *offset);
1373*758e9fbaSOystein Eftevaag 
1374*758e9fbaSOystein Eftevaag TSS2_RC
1375*758e9fbaSOystein Eftevaag Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal(
1376*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1377*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1378*758e9fbaSOystein Eftevaag     size_t         *offset,
1379*758e9fbaSOystein Eftevaag     TPML_TAGGED_PCR_PROPERTY *dest);
1380*758e9fbaSOystein Eftevaag 
1381*758e9fbaSOystein Eftevaag TSS2_RC
1382*758e9fbaSOystein Eftevaag Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal(
1383*758e9fbaSOystein Eftevaag     TPML_TAGGED_TPM_PROPERTY const *src,
1384*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1385*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1386*758e9fbaSOystein Eftevaag     size_t      *offset);
1387*758e9fbaSOystein Eftevaag 
1388*758e9fbaSOystein Eftevaag TSS2_RC
1389*758e9fbaSOystein Eftevaag Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal(
1390*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1391*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1392*758e9fbaSOystein Eftevaag     size_t         *offset,
1393*758e9fbaSOystein Eftevaag     TPML_TAGGED_TPM_PROPERTY *dest);
1394*758e9fbaSOystein Eftevaag 
1395*758e9fbaSOystein Eftevaag TSS2_RC
1396*758e9fbaSOystein Eftevaag Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal(
1397*758e9fbaSOystein Eftevaag     TPML_INTEL_PTT_PROPERTY const *src,
1398*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1399*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1400*758e9fbaSOystein Eftevaag     size_t      *offset);
1401*758e9fbaSOystein Eftevaag 
1402*758e9fbaSOystein Eftevaag TSS2_RC
1403*758e9fbaSOystein Eftevaag Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal(
1404*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1405*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1406*758e9fbaSOystein Eftevaag     size_t         *offset,
1407*758e9fbaSOystein Eftevaag     TPML_INTEL_PTT_PROPERTY *dest);
1408*758e9fbaSOystein Eftevaag 
1409*758e9fbaSOystein Eftevaag TSS2_RC
1410*758e9fbaSOystein Eftevaag Tss2_MU_TPML_AC_CAPABILITIES_Marshal(
1411*758e9fbaSOystein Eftevaag     TPML_AC_CAPABILITIES const *src,
1412*758e9fbaSOystein Eftevaag     uint8_t      buffer[],
1413*758e9fbaSOystein Eftevaag     size_t       buffer_size,
1414*758e9fbaSOystein Eftevaag     size_t      *offset);
1415*758e9fbaSOystein Eftevaag 
1416*758e9fbaSOystein Eftevaag TSS2_RC
1417*758e9fbaSOystein Eftevaag Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal(
1418*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1419*758e9fbaSOystein Eftevaag     size_t          buffer_size,
1420*758e9fbaSOystein Eftevaag     size_t         *offset,
1421*758e9fbaSOystein Eftevaag     TPML_AC_CAPABILITIES *dest);
1422*758e9fbaSOystein Eftevaag 
1423*758e9fbaSOystein Eftevaag TSS2_RC
1424*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_HA_Marshal(
1425*758e9fbaSOystein Eftevaag     TPMU_HA const *src,
1426*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1427*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1428*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1429*758e9fbaSOystein Eftevaag     size_t         *offset);
1430*758e9fbaSOystein Eftevaag 
1431*758e9fbaSOystein Eftevaag TSS2_RC
1432*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_HA_Unmarshal(
1433*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1434*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1435*758e9fbaSOystein Eftevaag     size_t        *offset,
1436*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1437*758e9fbaSOystein Eftevaag     TPMU_HA       *dest);
1438*758e9fbaSOystein Eftevaag 
1439*758e9fbaSOystein Eftevaag TSS2_RC
1440*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_CAPABILITIES_Marshal(
1441*758e9fbaSOystein Eftevaag     TPMU_CAPABILITIES const *src,
1442*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1443*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1444*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1445*758e9fbaSOystein Eftevaag     size_t         *offset);
1446*758e9fbaSOystein Eftevaag 
1447*758e9fbaSOystein Eftevaag TSS2_RC
1448*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_CAPABILITIES_Unmarshal(
1449*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1450*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1451*758e9fbaSOystein Eftevaag     size_t        *offset,
1452*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1453*758e9fbaSOystein Eftevaag     TPMU_CAPABILITIES *dest);
1454*758e9fbaSOystein Eftevaag 
1455*758e9fbaSOystein Eftevaag TSS2_RC
1456*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ATTEST_Marshal(
1457*758e9fbaSOystein Eftevaag     TPMU_ATTEST const *src,
1458*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1459*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1460*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1461*758e9fbaSOystein Eftevaag     size_t         *offset);
1462*758e9fbaSOystein Eftevaag 
1463*758e9fbaSOystein Eftevaag TSS2_RC
1464*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ATTEST_Unmarshal(
1465*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1466*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1467*758e9fbaSOystein Eftevaag     size_t        *offset,
1468*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1469*758e9fbaSOystein Eftevaag     TPMU_ATTEST *dest);
1470*758e9fbaSOystein Eftevaag 
1471*758e9fbaSOystein Eftevaag TSS2_RC
1472*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SYM_KEY_BITS_Marshal(
1473*758e9fbaSOystein Eftevaag     TPMU_SYM_KEY_BITS const *src,
1474*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1475*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1476*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1477*758e9fbaSOystein Eftevaag     size_t         *offset);
1478*758e9fbaSOystein Eftevaag 
1479*758e9fbaSOystein Eftevaag TSS2_RC
1480*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal(
1481*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1482*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1483*758e9fbaSOystein Eftevaag     size_t        *offset,
1484*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1485*758e9fbaSOystein Eftevaag     TPMU_SYM_KEY_BITS *dest);
1486*758e9fbaSOystein Eftevaag 
1487*758e9fbaSOystein Eftevaag TSS2_RC
1488*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SYM_MODE_Marshal(
1489*758e9fbaSOystein Eftevaag     TPMU_SYM_MODE const *src,
1490*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1491*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1492*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1493*758e9fbaSOystein Eftevaag     size_t         *offset);
1494*758e9fbaSOystein Eftevaag 
1495*758e9fbaSOystein Eftevaag TSS2_RC
1496*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SYM_MODE_Unmarshal(
1497*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1498*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1499*758e9fbaSOystein Eftevaag     size_t        *offset,
1500*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1501*758e9fbaSOystein Eftevaag     TPMU_SYM_MODE *dest);
1502*758e9fbaSOystein Eftevaag 
1503*758e9fbaSOystein Eftevaag TSS2_RC
1504*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SIG_SCHEME_Marshal(
1505*758e9fbaSOystein Eftevaag     TPMU_SIG_SCHEME const *src,
1506*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1507*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1508*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1509*758e9fbaSOystein Eftevaag     size_t         *offset);
1510*758e9fbaSOystein Eftevaag 
1511*758e9fbaSOystein Eftevaag TSS2_RC
1512*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SIG_SCHEME_Unmarshal(
1513*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1514*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1515*758e9fbaSOystein Eftevaag     size_t        *offset,
1516*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1517*758e9fbaSOystein Eftevaag     TPMU_SIG_SCHEME *dest);
1518*758e9fbaSOystein Eftevaag 
1519*758e9fbaSOystein Eftevaag TSS2_RC
1520*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_KDF_SCHEME_Marshal(
1521*758e9fbaSOystein Eftevaag     TPMU_KDF_SCHEME const *src,
1522*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1523*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1524*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1525*758e9fbaSOystein Eftevaag     size_t         *offset);
1526*758e9fbaSOystein Eftevaag 
1527*758e9fbaSOystein Eftevaag TSS2_RC
1528*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_KDF_SCHEME_Unmarshal(
1529*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1530*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1531*758e9fbaSOystein Eftevaag     size_t        *offset,
1532*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1533*758e9fbaSOystein Eftevaag     TPMU_KDF_SCHEME *dest);
1534*758e9fbaSOystein Eftevaag 
1535*758e9fbaSOystein Eftevaag TSS2_RC
1536*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ASYM_SCHEME_Marshal(
1537*758e9fbaSOystein Eftevaag     TPMU_ASYM_SCHEME const *src,
1538*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1539*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1540*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1541*758e9fbaSOystein Eftevaag     size_t         *offset);
1542*758e9fbaSOystein Eftevaag 
1543*758e9fbaSOystein Eftevaag TSS2_RC
1544*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal(
1545*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1546*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1547*758e9fbaSOystein Eftevaag     size_t        *offset,
1548*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1549*758e9fbaSOystein Eftevaag     TPMU_ASYM_SCHEME *dest);
1550*758e9fbaSOystein Eftevaag 
1551*758e9fbaSOystein Eftevaag TSS2_RC
1552*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal(
1553*758e9fbaSOystein Eftevaag     TPMU_SCHEME_KEYEDHASH const *src,
1554*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1555*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1556*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1557*758e9fbaSOystein Eftevaag     size_t         *offset);
1558*758e9fbaSOystein Eftevaag 
1559*758e9fbaSOystein Eftevaag TSS2_RC
1560*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal(
1561*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1562*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1563*758e9fbaSOystein Eftevaag     size_t        *offset,
1564*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1565*758e9fbaSOystein Eftevaag     TPMU_SCHEME_KEYEDHASH *dest);
1566*758e9fbaSOystein Eftevaag 
1567*758e9fbaSOystein Eftevaag TSS2_RC
1568*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SIGNATURE_Marshal(
1569*758e9fbaSOystein Eftevaag     TPMU_SIGNATURE const *src,
1570*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1571*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1572*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1573*758e9fbaSOystein Eftevaag     size_t         *offset);
1574*758e9fbaSOystein Eftevaag 
1575*758e9fbaSOystein Eftevaag TSS2_RC
1576*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SIGNATURE_Unmarshal(
1577*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1578*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1579*758e9fbaSOystein Eftevaag     size_t        *offset,
1580*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1581*758e9fbaSOystein Eftevaag     TPMU_SIGNATURE *dest);
1582*758e9fbaSOystein Eftevaag 
1583*758e9fbaSOystein Eftevaag TSS2_RC
1584*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal(
1585*758e9fbaSOystein Eftevaag     TPMU_SENSITIVE_COMPOSITE const *src,
1586*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1587*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1588*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1589*758e9fbaSOystein Eftevaag     size_t         *offset);
1590*758e9fbaSOystein Eftevaag 
1591*758e9fbaSOystein Eftevaag TSS2_RC
1592*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal(
1593*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1594*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1595*758e9fbaSOystein Eftevaag     size_t        *offset,
1596*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1597*758e9fbaSOystein Eftevaag     TPMU_SENSITIVE_COMPOSITE *dest);
1598*758e9fbaSOystein Eftevaag 
1599*758e9fbaSOystein Eftevaag TSS2_RC
1600*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal(
1601*758e9fbaSOystein Eftevaag     TPMU_ENCRYPTED_SECRET const *src,
1602*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1603*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1604*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1605*758e9fbaSOystein Eftevaag     size_t         *offset);
1606*758e9fbaSOystein Eftevaag 
1607*758e9fbaSOystein Eftevaag TSS2_RC
1608*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal(
1609*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1610*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1611*758e9fbaSOystein Eftevaag     size_t        *offset,
1612*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1613*758e9fbaSOystein Eftevaag     TPMU_ENCRYPTED_SECRET *dest);
1614*758e9fbaSOystein Eftevaag 
1615*758e9fbaSOystein Eftevaag TSS2_RC
1616*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_PUBLIC_PARMS_Marshal(
1617*758e9fbaSOystein Eftevaag     TPMU_PUBLIC_PARMS const *src,
1618*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1619*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1620*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1621*758e9fbaSOystein Eftevaag     size_t         *offset);
1622*758e9fbaSOystein Eftevaag 
1623*758e9fbaSOystein Eftevaag TSS2_RC
1624*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal(
1625*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1626*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1627*758e9fbaSOystein Eftevaag     size_t        *offset,
1628*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1629*758e9fbaSOystein Eftevaag     TPMU_PUBLIC_PARMS *dest);
1630*758e9fbaSOystein Eftevaag 
1631*758e9fbaSOystein Eftevaag TSS2_RC
1632*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_PUBLIC_ID_Marshal(
1633*758e9fbaSOystein Eftevaag     TPMU_PUBLIC_ID const *src,
1634*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1635*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1636*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1637*758e9fbaSOystein Eftevaag     size_t         *offset);
1638*758e9fbaSOystein Eftevaag 
1639*758e9fbaSOystein Eftevaag TSS2_RC
1640*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_PUBLIC_ID_Unmarshal(
1641*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1642*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1643*758e9fbaSOystein Eftevaag     size_t        *offset,
1644*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1645*758e9fbaSOystein Eftevaag     TPMU_PUBLIC_ID *dest);
1646*758e9fbaSOystein Eftevaag 
1647*758e9fbaSOystein Eftevaag TSS2_RC
1648*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_NAME_Marshal(
1649*758e9fbaSOystein Eftevaag     TPMU_NAME      const *src,
1650*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1651*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1652*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1653*758e9fbaSOystein Eftevaag     size_t         *offset);
1654*758e9fbaSOystein Eftevaag 
1655*758e9fbaSOystein Eftevaag TSS2_RC
1656*758e9fbaSOystein Eftevaag Tss2_MU_TPMU_NAME_Unmarshal(
1657*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1658*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1659*758e9fbaSOystein Eftevaag     size_t        *offset,
1660*758e9fbaSOystein Eftevaag     uint32_t       selector_value,
1661*758e9fbaSOystein Eftevaag     TPMU_NAME     *dest);
1662*758e9fbaSOystein Eftevaag 
1663*758e9fbaSOystein Eftevaag TSS2_RC
1664*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_HA_Marshal(
1665*758e9fbaSOystein Eftevaag     TPMT_HA const *src,
1666*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1667*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1668*758e9fbaSOystein Eftevaag     size_t         *offset);
1669*758e9fbaSOystein Eftevaag 
1670*758e9fbaSOystein Eftevaag TSS2_RC
1671*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_HA_Unmarshal(
1672*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1673*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1674*758e9fbaSOystein Eftevaag     size_t        *offset,
1675*758e9fbaSOystein Eftevaag     TPMT_HA *dest);
1676*758e9fbaSOystein Eftevaag 
1677*758e9fbaSOystein Eftevaag TSS2_RC
1678*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SYM_DEF_Marshal(
1679*758e9fbaSOystein Eftevaag     TPMT_SYM_DEF const *src,
1680*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1681*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1682*758e9fbaSOystein Eftevaag     size_t         *offset);
1683*758e9fbaSOystein Eftevaag 
1684*758e9fbaSOystein Eftevaag TSS2_RC
1685*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SYM_DEF_Unmarshal(
1686*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1687*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1688*758e9fbaSOystein Eftevaag     size_t        *offset,
1689*758e9fbaSOystein Eftevaag     TPMT_SYM_DEF  *dest);
1690*758e9fbaSOystein Eftevaag 
1691*758e9fbaSOystein Eftevaag TSS2_RC
1692*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal(
1693*758e9fbaSOystein Eftevaag     TPMT_SYM_DEF_OBJECT const *src,
1694*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1695*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1696*758e9fbaSOystein Eftevaag     size_t         *offset);
1697*758e9fbaSOystein Eftevaag 
1698*758e9fbaSOystein Eftevaag TSS2_RC
1699*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal(
1700*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1701*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1702*758e9fbaSOystein Eftevaag     size_t        *offset,
1703*758e9fbaSOystein Eftevaag     TPMT_SYM_DEF_OBJECT *dest);
1704*758e9fbaSOystein Eftevaag 
1705*758e9fbaSOystein Eftevaag TSS2_RC
1706*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal(
1707*758e9fbaSOystein Eftevaag     TPMT_KEYEDHASH_SCHEME const *src,
1708*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1709*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1710*758e9fbaSOystein Eftevaag     size_t         *offset);
1711*758e9fbaSOystein Eftevaag 
1712*758e9fbaSOystein Eftevaag TSS2_RC
1713*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal(
1714*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1715*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1716*758e9fbaSOystein Eftevaag     size_t        *offset,
1717*758e9fbaSOystein Eftevaag     TPMT_KEYEDHASH_SCHEME *dest);
1718*758e9fbaSOystein Eftevaag 
1719*758e9fbaSOystein Eftevaag TSS2_RC
1720*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SIG_SCHEME_Marshal(
1721*758e9fbaSOystein Eftevaag     TPMT_SIG_SCHEME const *src,
1722*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1723*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1724*758e9fbaSOystein Eftevaag     size_t         *offset);
1725*758e9fbaSOystein Eftevaag 
1726*758e9fbaSOystein Eftevaag TSS2_RC
1727*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SIG_SCHEME_Unmarshal(
1728*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1729*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1730*758e9fbaSOystein Eftevaag     size_t        *offset,
1731*758e9fbaSOystein Eftevaag     TPMT_SIG_SCHEME *dest);
1732*758e9fbaSOystein Eftevaag 
1733*758e9fbaSOystein Eftevaag TSS2_RC
1734*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_KDF_SCHEME_Marshal(
1735*758e9fbaSOystein Eftevaag     TPMT_KDF_SCHEME const *src,
1736*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1737*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1738*758e9fbaSOystein Eftevaag     size_t         *offset);
1739*758e9fbaSOystein Eftevaag 
1740*758e9fbaSOystein Eftevaag TSS2_RC
1741*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_KDF_SCHEME_Unmarshal(
1742*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1743*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1744*758e9fbaSOystein Eftevaag     size_t        *offset,
1745*758e9fbaSOystein Eftevaag     TPMT_KDF_SCHEME *dest);
1746*758e9fbaSOystein Eftevaag 
1747*758e9fbaSOystein Eftevaag TSS2_RC
1748*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_ASYM_SCHEME_Marshal(
1749*758e9fbaSOystein Eftevaag     TPMT_ASYM_SCHEME const *src,
1750*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1751*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1752*758e9fbaSOystein Eftevaag     size_t         *offset);
1753*758e9fbaSOystein Eftevaag 
1754*758e9fbaSOystein Eftevaag TSS2_RC
1755*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal(
1756*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1757*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1758*758e9fbaSOystein Eftevaag     size_t        *offset,
1759*758e9fbaSOystein Eftevaag     TPMT_ASYM_SCHEME *dest);
1760*758e9fbaSOystein Eftevaag 
1761*758e9fbaSOystein Eftevaag TSS2_RC
1762*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_RSA_SCHEME_Marshal(
1763*758e9fbaSOystein Eftevaag     TPMT_RSA_SCHEME const *src,
1764*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1765*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1766*758e9fbaSOystein Eftevaag     size_t         *offset);
1767*758e9fbaSOystein Eftevaag 
1768*758e9fbaSOystein Eftevaag TSS2_RC
1769*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_RSA_SCHEME_Unmarshal(
1770*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1771*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1772*758e9fbaSOystein Eftevaag     size_t        *offset,
1773*758e9fbaSOystein Eftevaag     TPMT_RSA_SCHEME *dest);
1774*758e9fbaSOystein Eftevaag 
1775*758e9fbaSOystein Eftevaag TSS2_RC
1776*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_RSA_DECRYPT_Marshal(
1777*758e9fbaSOystein Eftevaag     TPMT_RSA_DECRYPT const *src,
1778*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1779*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1780*758e9fbaSOystein Eftevaag     size_t         *offset);
1781*758e9fbaSOystein Eftevaag 
1782*758e9fbaSOystein Eftevaag TSS2_RC
1783*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal(
1784*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1785*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1786*758e9fbaSOystein Eftevaag     size_t        *offset,
1787*758e9fbaSOystein Eftevaag     TPMT_RSA_DECRYPT *dest);
1788*758e9fbaSOystein Eftevaag 
1789*758e9fbaSOystein Eftevaag TSS2_RC
1790*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_ECC_SCHEME_Marshal(
1791*758e9fbaSOystein Eftevaag     TPMT_ECC_SCHEME const *src,
1792*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1793*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1794*758e9fbaSOystein Eftevaag     size_t         *offset);
1795*758e9fbaSOystein Eftevaag 
1796*758e9fbaSOystein Eftevaag TSS2_RC
1797*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_ECC_SCHEME_Unmarshal(
1798*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1799*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1800*758e9fbaSOystein Eftevaag     size_t        *offset,
1801*758e9fbaSOystein Eftevaag     TPMT_ECC_SCHEME *dest);
1802*758e9fbaSOystein Eftevaag 
1803*758e9fbaSOystein Eftevaag TSS2_RC
1804*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SIGNATURE_Marshal(
1805*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE const *src,
1806*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1807*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1808*758e9fbaSOystein Eftevaag     size_t         *offset);
1809*758e9fbaSOystein Eftevaag 
1810*758e9fbaSOystein Eftevaag TSS2_RC
1811*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SIGNATURE_Unmarshal(
1812*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1813*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1814*758e9fbaSOystein Eftevaag     size_t        *offset,
1815*758e9fbaSOystein Eftevaag     TPMT_SIGNATURE *dest);
1816*758e9fbaSOystein Eftevaag 
1817*758e9fbaSOystein Eftevaag TSS2_RC
1818*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SENSITIVE_Marshal(
1819*758e9fbaSOystein Eftevaag     TPMT_SENSITIVE const *src,
1820*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1821*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1822*758e9fbaSOystein Eftevaag     size_t         *offset);
1823*758e9fbaSOystein Eftevaag 
1824*758e9fbaSOystein Eftevaag TSS2_RC
1825*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_SENSITIVE_Unmarshal(
1826*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1827*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1828*758e9fbaSOystein Eftevaag     size_t        *offset,
1829*758e9fbaSOystein Eftevaag     TPMT_SENSITIVE *dest);
1830*758e9fbaSOystein Eftevaag 
1831*758e9fbaSOystein Eftevaag TSS2_RC
1832*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_PUBLIC_Marshal(
1833*758e9fbaSOystein Eftevaag     TPMT_PUBLIC    const *src,
1834*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1835*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1836*758e9fbaSOystein Eftevaag     size_t         *offset);
1837*758e9fbaSOystein Eftevaag 
1838*758e9fbaSOystein Eftevaag TSS2_RC
1839*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_PUBLIC_Unmarshal(
1840*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1841*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1842*758e9fbaSOystein Eftevaag     size_t        *offset,
1843*758e9fbaSOystein Eftevaag     TPMT_PUBLIC   *dest);
1844*758e9fbaSOystein Eftevaag 
1845*758e9fbaSOystein Eftevaag TSS2_RC
1846*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_PUBLIC_PARMS_Marshal(
1847*758e9fbaSOystein Eftevaag     TPMT_PUBLIC_PARMS const *src,
1848*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1849*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1850*758e9fbaSOystein Eftevaag     size_t         *offset);
1851*758e9fbaSOystein Eftevaag 
1852*758e9fbaSOystein Eftevaag TSS2_RC
1853*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal(
1854*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1855*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1856*758e9fbaSOystein Eftevaag     size_t        *offset,
1857*758e9fbaSOystein Eftevaag     TPMT_PUBLIC_PARMS *dest);
1858*758e9fbaSOystein Eftevaag 
1859*758e9fbaSOystein Eftevaag TSS2_RC
1860*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_CREATION_Marshal(
1861*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION const *src,
1862*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1863*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1864*758e9fbaSOystein Eftevaag     size_t         *offset);
1865*758e9fbaSOystein Eftevaag 
1866*758e9fbaSOystein Eftevaag TSS2_RC
1867*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_CREATION_Unmarshal(
1868*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1869*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1870*758e9fbaSOystein Eftevaag     size_t        *offset,
1871*758e9fbaSOystein Eftevaag     TPMT_TK_CREATION *dest);
1872*758e9fbaSOystein Eftevaag 
1873*758e9fbaSOystein Eftevaag TSS2_RC
1874*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_VERIFIED_Marshal(
1875*758e9fbaSOystein Eftevaag     TPMT_TK_VERIFIED const *src,
1876*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1877*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1878*758e9fbaSOystein Eftevaag     size_t         *offset);
1879*758e9fbaSOystein Eftevaag 
1880*758e9fbaSOystein Eftevaag TSS2_RC
1881*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_VERIFIED_Unmarshal(
1882*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1883*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1884*758e9fbaSOystein Eftevaag     size_t        *offset,
1885*758e9fbaSOystein Eftevaag     TPMT_TK_VERIFIED *dest);
1886*758e9fbaSOystein Eftevaag 
1887*758e9fbaSOystein Eftevaag TSS2_RC
1888*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_AUTH_Marshal(
1889*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH   const *src,
1890*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1891*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1892*758e9fbaSOystein Eftevaag     size_t         *offset);
1893*758e9fbaSOystein Eftevaag 
1894*758e9fbaSOystein Eftevaag TSS2_RC
1895*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_AUTH_Unmarshal(
1896*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1897*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1898*758e9fbaSOystein Eftevaag     size_t        *offset,
1899*758e9fbaSOystein Eftevaag     TPMT_TK_AUTH  *dest);
1900*758e9fbaSOystein Eftevaag 
1901*758e9fbaSOystein Eftevaag TSS2_RC
1902*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_HASHCHECK_Marshal(
1903*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK const *src,
1904*758e9fbaSOystein Eftevaag     uint8_t        buffer[],
1905*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1906*758e9fbaSOystein Eftevaag     size_t         *offset);
1907*758e9fbaSOystein Eftevaag 
1908*758e9fbaSOystein Eftevaag TSS2_RC
1909*758e9fbaSOystein Eftevaag Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal(
1910*758e9fbaSOystein Eftevaag     uint8_t const  buffer[],
1911*758e9fbaSOystein Eftevaag     size_t         buffer_size,
1912*758e9fbaSOystein Eftevaag     size_t        *offset,
1913*758e9fbaSOystein Eftevaag     TPMT_TK_HASHCHECK *dest);
1914*758e9fbaSOystein Eftevaag 
1915*758e9fbaSOystein Eftevaag TSS2_RC Tss2_MU_TPM2_HANDLE_Marshal(
1916*758e9fbaSOystein Eftevaag     TPM2_HANDLE     in,
1917*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1918*758e9fbaSOystein Eftevaag     size_t          size,
1919*758e9fbaSOystein Eftevaag     size_t          *offset);
1920*758e9fbaSOystein Eftevaag 
1921*758e9fbaSOystein Eftevaag TSS2_RC
1922*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_HANDLE_Unmarshal(
1923*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1924*758e9fbaSOystein Eftevaag     size_t          size,
1925*758e9fbaSOystein Eftevaag     size_t          *offset,
1926*758e9fbaSOystein Eftevaag     TPM2_HANDLE     *out);
1927*758e9fbaSOystein Eftevaag 
1928*758e9fbaSOystein Eftevaag TSS2_RC
1929*758e9fbaSOystein Eftevaag Tss2_MU_TPMI_ALG_HASH_Marshal(
1930*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH   in,
1931*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1932*758e9fbaSOystein Eftevaag     size_t          size,
1933*758e9fbaSOystein Eftevaag     size_t          *offset);
1934*758e9fbaSOystein Eftevaag 
1935*758e9fbaSOystein Eftevaag TSS2_RC
1936*758e9fbaSOystein Eftevaag Tss2_MU_TPMI_ALG_HASH_Unmarshal(
1937*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1938*758e9fbaSOystein Eftevaag     size_t          size,
1939*758e9fbaSOystein Eftevaag     size_t          *offset,
1940*758e9fbaSOystein Eftevaag     TPMI_ALG_HASH   *out);
1941*758e9fbaSOystein Eftevaag 
1942*758e9fbaSOystein Eftevaag TSS2_RC
1943*758e9fbaSOystein Eftevaag Tss2_MU_BYTE_Marshal(
1944*758e9fbaSOystein Eftevaag     BYTE            in,
1945*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1946*758e9fbaSOystein Eftevaag     size_t          size,
1947*758e9fbaSOystein Eftevaag     size_t          *offset);
1948*758e9fbaSOystein Eftevaag 
1949*758e9fbaSOystein Eftevaag TSS2_RC
1950*758e9fbaSOystein Eftevaag Tss2_MU_BYTE_Unmarshal(
1951*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1952*758e9fbaSOystein Eftevaag     size_t          size,
1953*758e9fbaSOystein Eftevaag     size_t          *offset,
1954*758e9fbaSOystein Eftevaag     BYTE            *out);
1955*758e9fbaSOystein Eftevaag 
1956*758e9fbaSOystein Eftevaag TSS2_RC
1957*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_SE_Marshal(
1958*758e9fbaSOystein Eftevaag     TPM2_SE         in,
1959*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1960*758e9fbaSOystein Eftevaag     size_t          size,
1961*758e9fbaSOystein Eftevaag     size_t          *offset);
1962*758e9fbaSOystein Eftevaag 
1963*758e9fbaSOystein Eftevaag TSS2_RC
1964*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_SE_Unmarshal(
1965*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1966*758e9fbaSOystein Eftevaag     size_t          size,
1967*758e9fbaSOystein Eftevaag     size_t          *offset,
1968*758e9fbaSOystein Eftevaag     TPM2_SE         *out);
1969*758e9fbaSOystein Eftevaag 
1970*758e9fbaSOystein Eftevaag TSS2_RC
1971*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_NT_Marshal(
1972*758e9fbaSOystein Eftevaag     TPM2_NT         in,
1973*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1974*758e9fbaSOystein Eftevaag     size_t          size,
1975*758e9fbaSOystein Eftevaag     size_t          *offset);
1976*758e9fbaSOystein Eftevaag 
1977*758e9fbaSOystein Eftevaag TSS2_RC
1978*758e9fbaSOystein Eftevaag Tss2_MU_TPM2_NT_Unmarshal(
1979*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1980*758e9fbaSOystein Eftevaag     size_t          size,
1981*758e9fbaSOystein Eftevaag     size_t          *offset,
1982*758e9fbaSOystein Eftevaag     TPM2_NT         *out);
1983*758e9fbaSOystein Eftevaag 
1984*758e9fbaSOystein Eftevaag TSS2_RC
1985*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_EMPTY_Marshal(
1986*758e9fbaSOystein Eftevaag     TPMS_EMPTY const *in,
1987*758e9fbaSOystein Eftevaag     uint8_t         *buffer,
1988*758e9fbaSOystein Eftevaag     size_t          size,
1989*758e9fbaSOystein Eftevaag     size_t          *offset);
1990*758e9fbaSOystein Eftevaag 
1991*758e9fbaSOystein Eftevaag TSS2_RC
1992*758e9fbaSOystein Eftevaag Tss2_MU_TPMS_EMPTY_Unmarshal(
1993*758e9fbaSOystein Eftevaag     uint8_t const   buffer[],
1994*758e9fbaSOystein Eftevaag     size_t          size,
1995*758e9fbaSOystein Eftevaag     size_t          *offset,
1996*758e9fbaSOystein Eftevaag     TPMS_EMPTY      *out);
1997*758e9fbaSOystein Eftevaag 
1998*758e9fbaSOystein Eftevaag #ifdef __cplusplus
1999*758e9fbaSOystein Eftevaag }
2000*758e9fbaSOystein Eftevaag #endif
2001*758e9fbaSOystein Eftevaag 
2002*758e9fbaSOystein Eftevaag #endif /* MARSHAL_H */
2003