X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Fsha1.c;h=05c4ab890bd31baca310a4171abf95f6db19938e;hb=5cdd60306facd14cc9dcc24471386451294ca73c;hp=dd4e26293040f0860b2dfcdb6ccfbaa9d341c88a;hpb=db046c7191d39535dfb49e9b9bdfc0751a8c17b4;p=wimlib diff --git a/src/sha1.c b/src/sha1.c index dd4e2629..05c4ab89 100644 --- a/src/sha1.c +++ b/src/sha1.c @@ -4,22 +4,22 @@ * Parts of this file are based on public domain code written by Steve Reid. */ -/* +/* * Copyright (C) 2012 Eric Biggers * * This file is part of wimlib, a library for working with WIM files. * * wimlib is free software; you can redistribute it and/or modify it under the - * terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 2.1 of the License, or (at your option) + * terms of the GNU General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) * any later version. * * wimlib 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 GNU Lesser General Public License for more + * A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * - * You should have received a copy of the GNU Lesser General Public License + * You should have received a copy of the GNU General Public License * along with wimlib; if not, see http://www.gnu.org/licenses/. */ @@ -34,9 +34,16 @@ * Steve Reid's public domain code, or based on Intel's SSSE3 SHA1 code. */ -#ifndef WITH_LIBCRYPTO +const u8 zero_hash[SHA1_HASH_SIZE] = { + 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, +}; +#ifndef WITH_LIBCRYPTO + /* Initialize new context */ void sha1_init(SHA_CTX* context) { @@ -62,7 +69,7 @@ void sha1_update(SHA_CTX *context, const u8 data[], size_t len) #include void ssse3_not_found() { - fprintf(stderr, + fprintf(stderr, "Cannot calculate SHA1 message digest: CPU does not support SSSE3\n" "instructions! Recompile wimlib without the --enable-ssse3-sha1 flag\n" "to use wimlib on this CPU.\n"); @@ -179,7 +186,7 @@ void sha1_final(u8 md[SHA1_HASH_SIZE], SHA_CTX* context) while ((context->count[0] & 504) != 448) { sha1_update(context, (u8 *)"\0", 1); } - sha1_update(context, finalcount, 8); /* Should cause a SHA1_Transform() */ + sha1_update(context, finalcount, 8); /* Should cause a sha1_transform() */ for (i = 0; i < SHA1_HASH_SIZE; i++) { md[i] = (u8)((context->state[i>>2] >> ((3-(i & 3)) * 8) ) & 255); }