| /* Copyright (c) 2014 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. | |
| * | |
| * Host-side functions for verified boot key structures | |
| */ | |
| #ifndef VBOOT_REFERENCE_HOST_KEYBLOCK2_H_ | |
| #define VBOOT_REFERENCE_HOST_KEYBLOCK2_H_ | |
| struct vb2_private_key; | |
| struct vb2_public_key; | |
| struct vb21_keyblock; | |
| /** | |
| * Create and sign a keyblock. | |
| * | |
| * @param kb_ptr On success, points to a newly allocated keyblock buffer. | |
| * Caller is responsible for calling free() on this. | |
| * @param data_key Data key to contain inside keyblock. | |
| * @param signing_keys List of keys to sign the keyblock with. | |
| * @param signing_key_count Number of keys in signing_keys. | |
| * @param flags Flags for keyblock. | |
| * @param desc Description for keyblock. If NULL, description will be | |
| * taken from the data key. | |
| * @return VB2_SUCCESS, or non-zero error code if failure. | |
| */ | |
| int vb21_keyblock_create(struct vb21_keyblock **kb_ptr, | |
| const struct vb2_public_key *data_key, | |
| const struct vb2_private_key **signing_keys, | |
| uint32_t signing_key_count, | |
| uint32_t flags, | |
| const char *desc); | |
| #endif /* VBOOT_REFERENCE_HOST_KEYBLOCK2_H_ */ |