1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 #include <stdint.h>
5 #include <stdlib.h>
6 
7 #include "sha256.h"
8 
9 /* Unoptimized implementation based on FIPS 198. 'res' has to be allocated by
10  * the caller. Prefer external OpenSSL functions, and use this only when
11  * linking to OpenSSL is not desirable (eg: libsystemd.so). */
12 void hmac_sha256(const void *key, size_t key_size, const void *input, size_t input_size, uint8_t res[static SHA256_DIGEST_SIZE]);
13