brintos

brintos / linux-shallow public Read only

0
0
Text · 1.6 KiB · f36ea92 Raw
61 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/*3 * Copyright (C) 2019 Microsoft Corporation.4 *5 * Author:  Jaskaran Singh Khurana <jaskarankhurana@linux.microsoft.com>6 *7 */8#ifndef DM_VERITY_SIG_VERIFICATION_H9#define DM_VERITY_SIG_VERIFICATION_H10 11#define DM_VERITY_ROOT_HASH_VERIFICATION "DM Verity Sig Verification"12#define DM_VERITY_ROOT_HASH_VERIFICATION_OPT_SIG_KEY "root_hash_sig_key_desc"13 14struct dm_verity_sig_opts {15	unsigned int sig_size;16	u8 *sig;17};18 19#ifdef CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG20 21#define DM_VERITY_ROOT_HASH_VERIFICATION_OPTS 222 23int verity_verify_root_hash(const void *data, size_t data_len,24			    const void *sig_data, size_t sig_len);25bool verity_verify_is_sig_opt_arg(const char *arg_name);26 27int verity_verify_sig_parse_opt_args(struct dm_arg_set *as, struct dm_verity *v,28				    struct dm_verity_sig_opts *sig_opts,29				    unsigned int *argc, const char *arg_name);30 31void verity_verify_sig_opts_cleanup(struct dm_verity_sig_opts *sig_opts);32 33#else34 35#define DM_VERITY_ROOT_HASH_VERIFICATION_OPTS 036 37static inline int verity_verify_root_hash(const void *data, size_t data_len,38					  const void *sig_data, size_t sig_len)39{40	return 0;41}42 43static inline bool verity_verify_is_sig_opt_arg(const char *arg_name)44{45	return false;46}47 48static inline int verity_verify_sig_parse_opt_args(struct dm_arg_set *as,49			struct dm_verity *v, struct dm_verity_sig_opts *sig_opts,50			unsigned int *argc, const char *arg_name)51{52	return -EINVAL;53}54 55static inline void verity_verify_sig_opts_cleanup(struct dm_verity_sig_opts *sig_opts)56{57}58 59#endif /* CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG */60#endif /* DM_VERITY_SIG_VERIFICATION_H */61