123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- /* Copyright (c) 2013 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.
- *
- * Access to portions of the GBB using the region API.
- */
- #ifndef VBOOT_REFERENCE_GBB_ACCESS_H_
- #define VBOOT_REFERENCE_GBB_ACCESS_H_
- #include "vboot_api.h"
- struct BmpBlockHeader;
- struct ImageInfo;
- struct GoogleBinaryBlockHeader;
- struct ScreenLayout;
- struct VbPublicKey;
- /**
- * Read the GBB header
- *
- * This accesses the GBB and reads its header.
- *
- * @param cparams Vboot common parameters
- * @param gbb Place to put GBB header
- */
- VbError_t VbGbbReadHeader_static(VbCommonParams *cparams,
- struct GoogleBinaryBlockHeader *gbb);
- /**
- * Read the root key from the GBB
- *
- * @param cparams Vboot common parameters
- * @param keyp Returns a pointer to the key. The caller must call
- * free() on the key when finished with it.
- * @return VBERROR_... error, VBERROR_SUCCESS on success,
- */
- VbError_t VbGbbReadRootKey(VbCommonParams *cparams,
- struct VbPublicKey **keyp);
- /**
- * Read the recovery key from the GBB
- *
- * @param cparams Vboot common parameters
- * @param keyp Returns a pointer to the key. The caller must call
- * free() on the key when finished with it.
- * @return VBERROR_... error, VBERROR_SUCCESS on success,
- */
- VbError_t VbGbbReadRecoveryKey(VbCommonParams *cparams,
- struct VbPublicKey **keyp);
- /**
- * Read the bitmap block header from the GBB
- *
- * @param cparams Vboot common parameters
- * @param hdr The header is placed in this block
- * @return VBERROR_... error, VBERROR_SUCCESS on success,
- */
- VbError_t VbGbbReadBmpHeader(VbCommonParams *cparams,
- struct BmpBlockHeader *hdr);
- /**
- * Read a image from the GBB
- *
- * The caller must call free() on *image_datap when finished with it.
- *
- * @param cparams Vboot common parameters
- * @param localization Localization/language number
- * @param screen_index Index of screen to display (VB_SCREEN_...)
- * @param image_num Image number within the screen
- * @param layout Returns layout information (x, y position)
- * @param image_info Returns information about the image (format)
- * @param image_datap Returns a pointer to the image data
- * @param iamge_data_sizep Return size of image data
- * @return VBERROR_... error, VBERROR_SUCCESS on success,
- */
- VbError_t VbGbbReadImage(VbCommonParams *cparams,
- uint32_t localization, uint32_t screen_index,
- uint32_t image_num, struct ScreenLayout *layout,
- struct ImageInfo *image_info, char **image_datap,
- uint32_t *image_data_sizep);
- #endif
|