Home | History | Annotate | Download | only in crypto
      1 /*
      2  * MD5 hash implementation and interface functions
      3  * Copyright (c) 2003-2009, Jouni Malinen <j (at) 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