diff options
author | miod <> | 2014-11-09 19:08:24 +0000 |
---|---|---|
committer | miod <> | 2014-11-09 19:08:24 +0000 |
commit | eddb1ac4a1d54fc83b963d3de0d639285a026d4c (patch) | |
tree | 72abac69f1236de39694c6ad2dcbd6407dfc4f85 | |
parent | 2f8b4cc5ff3e9b07f35636bc6abdcbca9e9df7ca (diff) | |
download | openbsd-eddb1ac4a1d54fc83b963d3de0d639285a026d4c.tar.gz openbsd-eddb1ac4a1d54fc83b963d3de0d639285a026d4c.tar.bz2 openbsd-eddb1ac4a1d54fc83b963d3de0d639285a026d4c.zip |
Allow digest routines to provide their own HASH_FINAL routine; will be
necessary for upcoming GOST code.
From Dmitry Eremin-Solenikov
-rw-r--r-- | src/lib/libcrypto/md32_common.h | 8 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/md32_common.h | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/lib/libcrypto/md32_common.h b/src/lib/libcrypto/md32_common.h index 603b3d5fbe..7b6a354478 100644 --- a/src/lib/libcrypto/md32_common.h +++ b/src/lib/libcrypto/md32_common.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: md32_common.h,v 1.19 2014/10/20 13:06:54 bcook Exp $ */ | 1 | /* $OpenBSD: md32_common.h,v 1.20 2014/11/09 19:08:24 miod Exp $ */ |
2 | /* ==================================================================== | 2 | /* ==================================================================== |
3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. |
4 | * | 4 | * |
@@ -131,8 +131,8 @@ | |||
131 | #ifndef HASH_TRANSFORM | 131 | #ifndef HASH_TRANSFORM |
132 | #error "HASH_TRANSFORM must be defined!" | 132 | #error "HASH_TRANSFORM must be defined!" |
133 | #endif | 133 | #endif |
134 | #ifndef HASH_FINAL | 134 | #if !defined(HASH_FINAL) && !defined(HASH_NO_FINAL) |
135 | #error "HASH_FINAL must be defined!" | 135 | #error "HASH_FINAL or HASH_NO_FINAL must be defined!" |
136 | #endif | 136 | #endif |
137 | 137 | ||
138 | #ifndef HASH_BLOCK_DATA_ORDER | 138 | #ifndef HASH_BLOCK_DATA_ORDER |
@@ -287,6 +287,7 @@ void HASH_TRANSFORM (HASH_CTX *c, const unsigned char *data) | |||
287 | } | 287 | } |
288 | 288 | ||
289 | 289 | ||
290 | #ifndef HASH_NO_FINAL | ||
290 | int HASH_FINAL (unsigned char *md, HASH_CTX *c) | 291 | int HASH_FINAL (unsigned char *md, HASH_CTX *c) |
291 | { | 292 | { |
292 | unsigned char *p = (unsigned char *)c->data; | 293 | unsigned char *p = (unsigned char *)c->data; |
@@ -323,6 +324,7 @@ int HASH_FINAL (unsigned char *md, HASH_CTX *c) | |||
323 | 324 | ||
324 | return 1; | 325 | return 1; |
325 | } | 326 | } |
327 | #endif | ||
326 | 328 | ||
327 | #ifndef MD32_REG_T | 329 | #ifndef MD32_REG_T |
328 | #if defined(__alpha) || defined(__sparcv9) || defined(__mips) | 330 | #if defined(__alpha) || defined(__sparcv9) || defined(__mips) |
diff --git a/src/lib/libssl/src/crypto/md32_common.h b/src/lib/libssl/src/crypto/md32_common.h index 603b3d5fbe..7b6a354478 100644 --- a/src/lib/libssl/src/crypto/md32_common.h +++ b/src/lib/libssl/src/crypto/md32_common.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: md32_common.h,v 1.19 2014/10/20 13:06:54 bcook Exp $ */ | 1 | /* $OpenBSD: md32_common.h,v 1.20 2014/11/09 19:08:24 miod Exp $ */ |
2 | /* ==================================================================== | 2 | /* ==================================================================== |
3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. |
4 | * | 4 | * |
@@ -131,8 +131,8 @@ | |||
131 | #ifndef HASH_TRANSFORM | 131 | #ifndef HASH_TRANSFORM |
132 | #error "HASH_TRANSFORM must be defined!" | 132 | #error "HASH_TRANSFORM must be defined!" |
133 | #endif | 133 | #endif |
134 | #ifndef HASH_FINAL | 134 | #if !defined(HASH_FINAL) && !defined(HASH_NO_FINAL) |
135 | #error "HASH_FINAL must be defined!" | 135 | #error "HASH_FINAL or HASH_NO_FINAL must be defined!" |
136 | #endif | 136 | #endif |
137 | 137 | ||
138 | #ifndef HASH_BLOCK_DATA_ORDER | 138 | #ifndef HASH_BLOCK_DATA_ORDER |
@@ -287,6 +287,7 @@ void HASH_TRANSFORM (HASH_CTX *c, const unsigned char *data) | |||
287 | } | 287 | } |
288 | 288 | ||
289 | 289 | ||
290 | #ifndef HASH_NO_FINAL | ||
290 | int HASH_FINAL (unsigned char *md, HASH_CTX *c) | 291 | int HASH_FINAL (unsigned char *md, HASH_CTX *c) |
291 | { | 292 | { |
292 | unsigned char *p = (unsigned char *)c->data; | 293 | unsigned char *p = (unsigned char *)c->data; |
@@ -323,6 +324,7 @@ int HASH_FINAL (unsigned char *md, HASH_CTX *c) | |||
323 | 324 | ||
324 | return 1; | 325 | return 1; |
325 | } | 326 | } |
327 | #endif | ||
326 | 328 | ||
327 | #ifndef MD32_REG_T | 329 | #ifndef MD32_REG_T |
328 | #if defined(__alpha) || defined(__sparcv9) || defined(__mips) | 330 | #if defined(__alpha) || defined(__sparcv9) || defined(__mips) |