1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 27d6f75ebSMax Vozeler #ifndef _CRYPTO_MD5_H 37d6f75ebSMax Vozeler #define _CRYPTO_MD5_H 47d6f75ebSMax Vozeler 57d6f75ebSMax Vozeler #include <linux/types.h> 67d6f75ebSMax Vozeler 77d6f75ebSMax Vozeler #define MD5_DIGEST_SIZE 16 87d6f75ebSMax Vozeler #define MD5_HMAC_BLOCK_SIZE 64 97d6f75ebSMax Vozeler #define MD5_BLOCK_WORDS 16 107d6f75ebSMax Vozeler #define MD5_HASH_WORDS 4 117d6f75ebSMax Vozeler 12f79f1f72SLABBE Corentin #define MD5_H0 0x67452301UL 13f79f1f72SLABBE Corentin #define MD5_H1 0xefcdab89UL 14f79f1f72SLABBE Corentin #define MD5_H2 0x98badcfeUL 15f79f1f72SLABBE Corentin #define MD5_H3 0x10325476UL 16f79f1f72SLABBE Corentin 170c4c78deSLABBE Corentin extern const u8 md5_zero_message_hash[MD5_DIGEST_SIZE]; 180c4c78deSLABBE Corentin 197d6f75ebSMax Vozeler struct md5_state { 207d6f75ebSMax Vozeler u32 hash[MD5_HASH_WORDS]; 217d6f75ebSMax Vozeler u32 block[MD5_BLOCK_WORDS]; 227d6f75ebSMax Vozeler u64 byte_count; 237d6f75ebSMax Vozeler }; 247d6f75ebSMax Vozeler 257d6f75ebSMax Vozeler #endif 26