/*
 * Copyright 2015 The Chromium OS Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

#ifndef __TPM2_TICKET_FP_H
#define __TPM2_TICKET_FP_H

void TicketComputeCreation(
        TPMI_RH_HIERARCHY       hierarchy,        //   IN: hierarchy for ticket
        TPM2B_NAME             *name,             //   IN: object name
        TPM2B_DIGEST           *creation,         //   IN: creation hash
        TPMT_TK_CREATION       *ticket            //   OUT: created ticket
);
void TicketComputeHashCheck(
        TPMI_RH_HIERARCHY        hierarchy,      //   IN: hierarchy constant for ticket
        TPM_ALG_ID               hashAlg,        //   IN: the hash algorithm used to create
                                            //       'digest'
        TPM2B_DIGEST            *digest,         //   IN: input digest
        TPMT_TK_HASHCHECK       *ticket          //   OUT: Created ticket
                            );
BOOL TicketIsSafe(
        TPM2B                *buffer
                  );

#endif // __TPM2_TICKET_FP_H
