| /* 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. |
| * |
| */ |
| |
| #ifndef VBOOT_REFERENCE_VB2_CONVERT_STRUCTS_H_ |
| #define VBOOT_REFERENCE_VB2_CONVERT_STRUCTS_H_ |
| |
| #include "2struct.h" |
| |
| /** |
| * Round up a size to a multiple of 32 bits (4 bytes). |
| */ |
| static __inline const uint32_t roundup32(uint32_t v) |
| { |
| return (v + 3) & ~3; |
| } |
| |
| /** |
| * Convert a packed key from vboot data format to vboot2 data format. |
| * |
| * Intended for use by unit tests. Does NOT validate the original struct |
| * contents, just copies them. |
| * |
| * @param key Packed key in vboot1 format |
| * @param desc Description of packed key |
| * @param out_size Size of the newly allocated buffer |
| * @return a newly allocated buffer with the converted key. Caller is |
| * responsible for freeing this buffer. |
| */ |
| struct vb2_packed_key2 *vb2_convert_packed_key2( |
| const struct vb2_packed_key *key, |
| const char *desc, uint32_t *out_size); |
| |
| #endif /* VBOOT_REFERENCE_VB2_CONVERT_STRUCTS_H_ */ |