diff options
author | Denis Vlasenko | 2008-11-10 13:32:50 +0000 |
---|---|---|
committer | Denis Vlasenko | 2008-11-10 13:32:50 +0000 |
commit | 56dceb9b7722193ef53fb1afb981f1289eecb0b0 (patch) | |
tree | 105363bf752df3c53e3d1165c8668af1983d5742 /include/libbb.h | |
parent | c028ec280a71c45ba71bb4712db1968391a440cc (diff) | |
download | busybox-56dceb9b7722193ef53fb1afb981f1289eecb0b0.zip busybox-56dceb9b7722193ef53fb1afb981f1289eecb0b0.tar.gz |
sha256,sha512: new applets. +4.9kb
we will require sha256/512 code for new $5$ and $6$ style
password hashes anyway, they are showing up already
in people's /etc/passwd...
Diffstat (limited to 'include/libbb.h')
-rw-r--r-- | include/libbb.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/include/libbb.h b/include/libbb.h index b0f6eae..839a0de 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -1310,7 +1310,24 @@ typedef struct sha1_ctx_t { void sha1_begin(sha1_ctx_t *ctx) FAST_FUNC; void sha1_hash(const void *data, size_t length, sha1_ctx_t *ctx) FAST_FUNC; void *sha1_end(void *resbuf, sha1_ctx_t *ctx) FAST_FUNC; - +typedef struct sha256_ctx_t { + uint32_t H[8]; + uint32_t total[2]; /* rename to "count"? */ + uint32_t buflen; + char buffer[128]; /* NB: always correctly aligned for uint32_t */ +} sha256_ctx_t; +void sha256_begin(sha256_ctx_t *ctx) FAST_FUNC; +void sha256_hash(const void *buffer, size_t len, sha256_ctx_t *ctx) FAST_FUNC; +void* sha256_end(void *resbuf, sha256_ctx_t *ctx) FAST_FUNC; +typedef struct sha512_ctx_t { + uint64_t H[8]; + uint64_t total[2]; + uint64_t buflen; + char buffer[256]; /* NB: always correctly aligned for uint64_t */ +} sha512_ctx_t; +void sha512_begin(sha512_ctx_t *ctx) FAST_FUNC; +void sha512_hash(const void *buffer, size_t len, sha512_ctx_t *ctx) FAST_FUNC; +void* sha512_end(void *resbuf, sha512_ctx_t *ctx) FAST_FUNC; typedef struct md5_ctx_t { uint32_t A; uint32_t B; |