diff options
author | jsing <> | 2023-07-08 07:49:45 +0000 |
---|---|---|
committer | jsing <> | 2023-07-08 07:49:45 +0000 |
commit | 1ae7ea109349aaa24cb71b5782db07ca2ba4670b (patch) | |
tree | 3b7ed88d22ce99e6bd1bfab6810836dff771f007 /src | |
parent | 24c6aa400c6d50a62ba731d79e11e0f9116a83d3 (diff) | |
download | openbsd-1ae7ea109349aaa24cb71b5782db07ca2ba4670b.tar.gz openbsd-1ae7ea109349aaa24cb71b5782db07ca2ba4670b.tar.bz2 openbsd-1ae7ea109349aaa24cb71b5782db07ca2ba4670b.zip |
Inline HASH_MAKE_STRING macro.
No change to generated assembly.
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/sha/sha1.c | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/src/lib/libcrypto/sha/sha1.c b/src/lib/libcrypto/sha/sha1.c index a8c250dc6e..a0ec259f7e 100644 --- a/src/lib/libcrypto/sha/sha1.c +++ b/src/lib/libcrypto/sha/sha1.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sha1.c,v 1.7 2023/07/08 07:43:44 jsing Exp $ */ | 1 | /* $OpenBSD: sha1.c,v 1.8 2023/07/08 07:49:45 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -72,15 +72,6 @@ | |||
72 | #define HASH_CTX SHA_CTX | 72 | #define HASH_CTX SHA_CTX |
73 | #define HASH_CBLOCK SHA_CBLOCK | 73 | #define HASH_CBLOCK SHA_CBLOCK |
74 | 74 | ||
75 | #define HASH_MAKE_STRING(c, s) do { \ | ||
76 | unsigned long ll; \ | ||
77 | ll=(c)->h0; HOST_l2c(ll,(s)); \ | ||
78 | ll=(c)->h1; HOST_l2c(ll,(s)); \ | ||
79 | ll=(c)->h2; HOST_l2c(ll,(s)); \ | ||
80 | ll=(c)->h3; HOST_l2c(ll,(s)); \ | ||
81 | ll=(c)->h4; HOST_l2c(ll,(s)); \ | ||
82 | } while (0) | ||
83 | |||
84 | #define HASH_BLOCK_DATA_ORDER sha1_block_data_order | 75 | #define HASH_BLOCK_DATA_ORDER sha1_block_data_order |
85 | #define Xupdate(a, ix, ia, ib, ic, id) ( (a)=(ia^ib^ic^id), \ | 76 | #define Xupdate(a, ix, ia, ib, ic, id) ( (a)=(ia^ib^ic^id), \ |
86 | ix=(a)=ROTATE((a),1) \ | 77 | ix=(a)=ROTATE((a),1) \ |
@@ -528,11 +519,19 @@ SHA1_Final(unsigned char *md, SHA_CTX *c) | |||
528 | c->num = 0; | 519 | c->num = 0; |
529 | memset(p, 0, SHA_CBLOCK); | 520 | memset(p, 0, SHA_CBLOCK); |
530 | 521 | ||
531 | #ifndef HASH_MAKE_STRING | 522 | do { |
532 | #error "HASH_MAKE_STRING must be defined!" | 523 | unsigned long ll; |
533 | #else | 524 | ll = c->h0; |
534 | HASH_MAKE_STRING(c, md); | 525 | HOST_l2c(ll, md); |
535 | #endif | 526 | ll = c->h1; |
527 | HOST_l2c(ll, md); | ||
528 | ll = c->h2; | ||
529 | HOST_l2c(ll, md); | ||
530 | ll = c->h3; | ||
531 | HOST_l2c(ll, md); | ||
532 | ll = c->h4; | ||
533 | HOST_l2c(ll, md); | ||
534 | } while (0); | ||
536 | 535 | ||
537 | return 1; | 536 | return 1; |
538 | } | 537 | } |