X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=include%2Fwimlib%2Fsha1.h;h=e8167faf02eb654b674dccb62611556e2f1e998b;hb=35f2cdbb8e24a4a6569bdb1e187e1011814ce613;hp=9c34c898381f0b6c2d0a20763b2f1ac9337e6c8c;hpb=048e046524eef96a68f9c7b9cfee27919ec06a6c;p=wimlib diff --git a/include/wimlib/sha1.h b/include/wimlib/sha1.h index 9c34c898..e8167faf 100644 --- a/include/wimlib/sha1.h +++ b/include/wimlib/sha1.h @@ -1,18 +1,38 @@ /* * sha1.h * - * The author dedicates this file to the public domain. - * You can do whatever you want with this file. + * Copyright 2022 Eric Biggers + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. */ #ifndef _WIMLIB_SHA1_H #define _WIMLIB_SHA1_H +#include + #include "wimlib/types.h" #include "wimlib/util.h" -#include - #define SHA1_HASH_SIZE 20 extern const u8 zero_hash[SHA1_HASH_SIZE]; @@ -26,12 +46,6 @@ copy_hash(u8 dest[SHA1_HASH_SIZE], const u8 src[SHA1_HASH_SIZE]) memcpy(dest, src, SHA1_HASH_SIZE); } -static inline void -random_hash(u8 hash[SHA1_HASH_SIZE]) -{ - randomize_byte_array(hash, SHA1_HASH_SIZE); -} - static inline int hashes_cmp(const u8 h1[SHA1_HASH_SIZE], const u8 h2[SHA1_HASH_SIZE]) { @@ -50,12 +64,6 @@ is_zero_hash(const u8 *hash) return (hash == zero_hash || hashes_equal(hash, zero_hash)); } -static inline void -zero_out_hash(u8 hash[SHA1_HASH_SIZE]) -{ - copy_hash(hash, zero_hash); -} - #ifdef WITH_LIBCRYPTO #include @@ -65,9 +73,9 @@ zero_out_hash(u8 hash[SHA1_HASH_SIZE]) #define sha1_final SHA1_Final static inline void -sha1_buffer(const void *buffer, size_t len, u8 hash[SHA1_HASH_SIZE]) +sha1(const void *data, size_t len, u8 hash[SHA1_HASH_SIZE]) { - SHA1(buffer, len, hash); + SHA1(data, len, hash); } #else /* WITH_LIBCRYPTO */ @@ -88,7 +96,7 @@ extern void sha1_final(u8 hash[SHA1_HASH_SIZE], SHA_CTX *ctx); extern void -sha1_buffer(const void *buffer, size_t len, u8 hash[SHA1_HASH_SIZE]); +sha1(const void *data, size_t len, u8 hash[SHA1_HASH_SIZE]); #endif /* !WITH_LIBCRYPTO */