Mercurial > repos > rliterman > csp2
annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/openssl/whrlpool.h @ 69:33d812a61356
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 17:55:14 -0400 |
parents | |
children |
rev | line source |
---|---|
jpayne@69 | 1 /* |
jpayne@69 | 2 * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. |
jpayne@69 | 3 * |
jpayne@69 | 4 * Licensed under the OpenSSL license (the "License"). You may not use |
jpayne@69 | 5 * this file except in compliance with the License. You can obtain a copy |
jpayne@69 | 6 * in the file LICENSE in the source distribution or at |
jpayne@69 | 7 * https://www.openssl.org/source/license.html |
jpayne@69 | 8 */ |
jpayne@69 | 9 |
jpayne@69 | 10 #ifndef HEADER_WHRLPOOL_H |
jpayne@69 | 11 # define HEADER_WHRLPOOL_H |
jpayne@69 | 12 |
jpayne@69 | 13 #include <openssl/opensslconf.h> |
jpayne@69 | 14 |
jpayne@69 | 15 # ifndef OPENSSL_NO_WHIRLPOOL |
jpayne@69 | 16 # include <openssl/e_os2.h> |
jpayne@69 | 17 # include <stddef.h> |
jpayne@69 | 18 # ifdef __cplusplus |
jpayne@69 | 19 extern "C" { |
jpayne@69 | 20 # endif |
jpayne@69 | 21 |
jpayne@69 | 22 # define WHIRLPOOL_DIGEST_LENGTH (512/8) |
jpayne@69 | 23 # define WHIRLPOOL_BBLOCK 512 |
jpayne@69 | 24 # define WHIRLPOOL_COUNTER (256/8) |
jpayne@69 | 25 |
jpayne@69 | 26 typedef struct { |
jpayne@69 | 27 union { |
jpayne@69 | 28 unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; |
jpayne@69 | 29 /* double q is here to ensure 64-bit alignment */ |
jpayne@69 | 30 double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; |
jpayne@69 | 31 } H; |
jpayne@69 | 32 unsigned char data[WHIRLPOOL_BBLOCK / 8]; |
jpayne@69 | 33 unsigned int bitoff; |
jpayne@69 | 34 size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; |
jpayne@69 | 35 } WHIRLPOOL_CTX; |
jpayne@69 | 36 |
jpayne@69 | 37 int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); |
jpayne@69 | 38 int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); |
jpayne@69 | 39 void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); |
jpayne@69 | 40 int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); |
jpayne@69 | 41 unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); |
jpayne@69 | 42 |
jpayne@69 | 43 # ifdef __cplusplus |
jpayne@69 | 44 } |
jpayne@69 | 45 # endif |
jpayne@69 | 46 # endif |
jpayne@69 | 47 |
jpayne@69 | 48 #endif |