• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2  * Use of this source code is governed by a BSD-style license that can be
3  * found in the LICENSE file.
4  *
5  * Utility functions for file and key handling.
6  */
7 
8 #ifndef VBOOT_REFERENCE_FILE_KEYS_H_
9 #define VBOOT_REFERENCE_FILE_KEYS_H_
10 
11 #include "cryptolib.h"
12 
13 /* Read file named [input_file] into a buffer and stores the length into
14  * [len].
15  *
16  * Returns a pointer to the buffer. Caller owns the returned pointer and
17  * must free it.
18  */
19 uint8_t* BufferFromFile(const char* input_file, uint64_t* len);
20 
21 /* Read a pre-processed RSA Public Key from file [input_file].
22  *
23  * Returns a pointer to the read key. Caller owns the returned pointer and
24  * must free it.
25  */
26 RSAPublicKey* RSAPublicKeyFromFile(const char* input_file);
27 
28 /* Returns the appropriate digest for the data in [input_file]
29  * based on the signature [algorithm].
30  * Caller owns the returned digest and must free it.
31  */
32 uint8_t* DigestFile(char* input_file, int sig_algorithm);
33 
34 #endif  /* VBOOT_REFERENCE_FILE_KEYS_H_ */
35