• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * MD5 hash implementation and interface functions
3  * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi>
4  *
5  * This software may be distributed under the terms of the BSD license.
6  * See README for more details.
7  */
8 
9 #ifndef MD5_H
10 #define MD5_H
11 
12 #define MD5_MAC_LEN 16
13 
14 int hmac_md5_vector(const u8 *key, size_t key_len, size_t num_elem,
15 		    const u8 *addr[], const size_t *len, u8 *mac);
16 int hmac_md5(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
17 	     u8 *mac);
18 #ifdef CONFIG_FIPS
19 int hmac_md5_vector_non_fips_allow(const u8 *key, size_t key_len,
20 				   size_t num_elem, const u8 *addr[],
21 				   const size_t *len, u8 *mac);
22 int hmac_md5_non_fips_allow(const u8 *key, size_t key_len, const u8 *data,
23 			    size_t data_len, u8 *mac);
24 #else /* CONFIG_FIPS */
25 #define hmac_md5_vector_non_fips_allow hmac_md5_vector
26 #define hmac_md5_non_fips_allow hmac_md5
27 #endif /* CONFIG_FIPS */
28 
29 #endif /* MD5_H */
30