X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=include%2Fwimlib%2Fsha1.h;h=d14a9c1e577b7239aaa53ce6c8bae5d557e54075;hp=2a6d6a32cca8f437661e154ca91d11cfd045af7f;hb=90f1e04a2a143876a4413577b25db60b5ba0fe97;hpb=f7bfb336d6accbaf4e3cc2ac55617c67dd1a6098 diff --git a/include/wimlib/sha1.h b/include/wimlib/sha1.h index 2a6d6a32..d14a9c1e 100644 --- a/include/wimlib/sha1.h +++ b/include/wimlib/sha1.h @@ -1,34 +1,44 @@ /* * sha1.h * - * The author dedicates this file to the public domain. - * You can do whatever you want with this file. + * The following copying information applies to this specific source code file: + * + * Written in 2013-2015 by Eric Biggers + * + * To the extent possible under law, the author(s) have dedicated all copyright + * and related and neighboring rights to this software to the public domain + * worldwide via the Creative Commons Zero 1.0 Universal Public Domain + * Dedication (the "CC0"). + * + * This software is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the CC0 for more details. + * + * You should have received a copy of the CC0 along with this software; if not + * see . */ #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]; +extern void +sprint_hash(const u8 hash[SHA1_HASH_SIZE], tchar strbuf[SHA1_HASH_SIZE * 2 + 1]); + static inline void 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]) { @@ -41,24 +51,12 @@ hashes_equal(const u8 h1[SHA1_HASH_SIZE], const u8 h2[SHA1_HASH_SIZE]) return !hashes_cmp(h1, h2); } -static inline void -print_hash(const u8 hash[SHA1_HASH_SIZE], FILE *out) -{ - print_byte_field(hash, SHA1_HASH_SIZE, out); -} - static inline bool 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