diff options
author | louiz’ <louiz@louiz.org> | 2017-03-06 00:51:43 +0100 |
---|---|---|
committer | louiz’ <louiz@louiz.org> | 2017-03-06 00:57:33 +0100 |
commit | 99a4ddedaf903d27b781341108433ae2d9533ad1 (patch) | |
tree | 2662dddda921d84f6fd348e46f154261ad46c17a /louloulibs/utils/sha1.hpp | |
parent | d81c3ad5ac2c12130d90044b7597bf962a7cfe9e (diff) | |
download | biboumi-99a4ddedaf903d27b781341108433ae2d9533ad1.tar.gz biboumi-99a4ddedaf903d27b781341108433ae2d9533ad1.tar.bz2 biboumi-99a4ddedaf903d27b781341108433ae2d9533ad1.tar.xz biboumi-99a4ddedaf903d27b781341108433ae2d9533ad1.zip |
Remove the embedded sha1 code, and use one of botan or gcrypt
This adds a hard dependency on one of Botan or gcrypt. Botan is already a
recommended dependency, and gcrypt is probably packaged almost everywhere,
so this should not be a big deal.
ref #3241
Diffstat (limited to 'louloulibs/utils/sha1.hpp')
-rw-r--r-- | louloulibs/utils/sha1.hpp | 34 |
1 files changed, 3 insertions, 31 deletions
diff --git a/louloulibs/utils/sha1.hpp b/louloulibs/utils/sha1.hpp index d436782..6c551ac 100644 --- a/louloulibs/utils/sha1.hpp +++ b/louloulibs/utils/sha1.hpp @@ -1,33 +1,5 @@ -/* This code is public-domain - it is based on libcrypt - * placed in the public domain by Wei Dai and other contributors. - */ +#pragma once -#include <stdint.h> -#include <string.h> +#include <string> -#define HASH_LENGTH 20 -#define BLOCK_LENGTH 64 - -union _buffer { - uint8_t b[BLOCK_LENGTH]; - uint32_t w[BLOCK_LENGTH/4]; -}; - -union _state { - uint8_t b[HASH_LENGTH]; - uint32_t w[HASH_LENGTH/4]; -}; - -typedef struct sha1nfo { - union _buffer buffer; - uint8_t bufferOffset; - union _state state; - uint32_t byteCount; - uint8_t keyBuffer[BLOCK_LENGTH]; - uint8_t innerHash[HASH_LENGTH]; -} sha1nfo; - -void sha1_init(sha1nfo *s); -void sha1_writebyte(sha1nfo *s, uint8_t data); -void sha1_write(sha1nfo *s, const char *data, size_t len); -uint8_t* sha1_result(sha1nfo *s); +std::string sha1(const std::string& input); |