[openssl] master update
Dr. Paul Dale
pauli at openssl.org
Wed Mar 17 00:16:45 UTC 2021
The branch master has been updated
via 5db682733de0afcfece92ac011c1eb1ca775c32a (commit)
from 37cddb2e2df4f815a6d3fdb857d1ef8cddef9ce9 (commit)
- Log -----------------------------------------------------------------
commit 5db682733de0afcfece92ac011c1eb1ca775c32a
Author: Matt Caswell <matt at openssl.org>
Date: Mon Mar 15 17:44:42 2021 +0000
Fix a TODO(3.0) in the siphash code
All 3 files that included crypto/siphash.h also included siphash_local.h,
and no other files included siphash_local.h independently. They probably
should be just one header file.
Fixes #14360
Reviewed-by: Tomas Mraz <tomas at openssl.org>
Reviewed-by: Paul Dale <pauli at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14558)
-----------------------------------------------------------------------
Summary of changes:
crypto/siphash/siphash.c | 1 -
crypto/siphash/siphash_local.h | 28 ---------------------------
include/crypto/siphash.h | 19 ++++++++++++++++++
providers/implementations/macs/siphash_prov.c | 6 ------
test/siphash_internal_test.c | 1 -
5 files changed, 19 insertions(+), 36 deletions(-)
delete mode 100644 crypto/siphash/siphash_local.h
diff --git a/crypto/siphash/siphash.c b/crypto/siphash/siphash.c
index 071339d444..7584255709 100644
--- a/crypto/siphash/siphash.c
+++ b/crypto/siphash/siphash.c
@@ -28,7 +28,6 @@
#include <openssl/crypto.h>
#include "crypto/siphash.h"
-#include "siphash_local.h"
#define ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
diff --git a/crypto/siphash/siphash_local.h b/crypto/siphash/siphash_local.h
deleted file mode 100644
index 54d65dfc6e..0000000000
--- a/crypto/siphash/siphash_local.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright 2017-2021 The OpenSSL Project Authors. All Rights Reserved.
- *
- * Licensed under the Apache License 2.0 (the "License"). You may not use
- * this file except in compliance with the License. You can obtain a copy
- * in the file LICENSE in the source distribution or at
- * https://www.openssl.org/source/license.html
- */
-
-/* Based on https://131002.net/siphash C reference implementation */
-
-struct siphash_st {
- uint64_t total_inlen;
- uint64_t v0;
- uint64_t v1;
- uint64_t v2;
- uint64_t v3;
- unsigned int len;
- unsigned int hash_size;
- unsigned int crounds;
- unsigned int drounds;
- unsigned char leavings[SIPHASH_BLOCK_SIZE];
-};
-
-/* default: SipHash-2-4 */
-#define SIPHASH_C_ROUNDS 2
-#define SIPHASH_D_ROUNDS 4
-
diff --git a/include/crypto/siphash.h b/include/crypto/siphash.h
index 02f74c4ae2..0d0767fcf4 100644
--- a/include/crypto/siphash.h
+++ b/include/crypto/siphash.h
@@ -28,4 +28,23 @@ int SipHash_Init(SIPHASH *ctx, const unsigned char *k,
void SipHash_Update(SIPHASH *ctx, const unsigned char *in, size_t inlen);
int SipHash_Final(SIPHASH *ctx, unsigned char *out, size_t outlen);
+/* Based on https://131002.net/siphash C reference implementation */
+
+struct siphash_st {
+ uint64_t total_inlen;
+ uint64_t v0;
+ uint64_t v1;
+ uint64_t v2;
+ uint64_t v3;
+ unsigned int len;
+ unsigned int hash_size;
+ unsigned int crounds;
+ unsigned int drounds;
+ unsigned char leavings[SIPHASH_BLOCK_SIZE];
+};
+
+/* default: SipHash-2-4 */
+# define SIPHASH_C_ROUNDS 2
+# define SIPHASH_D_ROUNDS 4
+
#endif
diff --git a/providers/implementations/macs/siphash_prov.c b/providers/implementations/macs/siphash_prov.c
index 0181d68ed1..0c374bd861 100644
--- a/providers/implementations/macs/siphash_prov.c
+++ b/providers/implementations/macs/siphash_prov.c
@@ -16,12 +16,6 @@
#include <openssl/proverr.h>
#include "crypto/siphash.h"
-/*
- * TODO(3.0) when siphash has moved entirely to our providers, this
- * header should be moved to the provider include directory. For the
- * moment, crypto/siphash/siphash_ameth.c has us stuck.
- */
-#include "../../../crypto/siphash/siphash_local.h"
#include "prov/implementations.h"
#include "prov/providercommon.h"
diff --git a/test/siphash_internal_test.c b/test/siphash_internal_test.c
index e77e9d265f..2361921c57 100644
--- a/test/siphash_internal_test.c
+++ b/test/siphash_internal_test.c
@@ -15,7 +15,6 @@
#include <openssl/bio.h>
#include "testutil.h"
#include "crypto/siphash.h"
-#include "../crypto/siphash/siphash_local.h"
#include "internal/nelem.h"
typedef struct {
More information about the openssl-commits
mailing list