From: Dmitry Baryshkov dbaryshkov@gmail.com
gost28147_param instances were never a part of stable release, so move them to internal header.
Signed-off-by: Dmitry Baryshkov dbaryshkov@gmail.com --- Makefile.in | 2 +- gost28147-internal.h | 12 +++++++++ gost28147.c | 5 ++-- gost28147.h | 58 -------------------------------------------- gosthash94.c | 9 +++---- 5 files changed, 19 insertions(+), 67 deletions(-) delete mode 100644 gost28147.h
diff --git a/Makefile.in b/Makefile.in index f876e5e82197..0de54e85c7ae 100644 --- a/Makefile.in +++ b/Makefile.in @@ -207,7 +207,7 @@ HEADERS = aes.h arcfour.h arctwo.h asn1.h blowfish.h \ cbc.h ccm.h cfb.h chacha.h chacha-poly1305.h ctr.h \ curve25519.h curve448.h des.h dsa.h dsa-compat.h eax.h \ ecc-curve.h ecc.h ecdsa.h eddsa.h \ - gcm.h gost28147.h gostdsa.h gosthash94.h hmac.h \ + gcm.h gostdsa.h gosthash94.h hmac.h \ knuth-lfib.h hkdf.h \ macros.h \ cmac.h siv-cmac.h \ diff --git a/gost28147-internal.h b/gost28147-internal.h index 7f5c6f8c63c0..0cb2d152c8ad 100644 --- a/gost28147-internal.h +++ b/gost28147-internal.h @@ -34,7 +34,19 @@ #ifndef NETTLE_GOST28147_INTERNAL_H_INCLUDED #define NETTLE_GOST28147_INTERNAL_H_INCLUDED
+#include <stdint.h> + #define _gost28147_encrypt_block _nettle_gost28147_encrypt_block +#define _gost28147_param_test_3411 _nettle_gost28147_param_test_3411 +#define _gost28147_param_CryptoPro_3411 _nettle_gost28147_param_CryptoPro_3411 + +extern const struct gost28147_param _gost28147_param_test_3411; +extern const struct gost28147_param _gost28147_param_CryptoPro_3411; + +struct gost28147_param +{ + uint32_t sbox[4][256]; +};
void _gost28147_encrypt_block (const uint32_t *key, const uint32_t sbox[4][256], const uint32_t *in, uint32_t *out); diff --git a/gost28147.c b/gost28147.c index 15d314c86c17..b6db334b2a0b 100644 --- a/gost28147.c +++ b/gost28147.c @@ -33,11 +33,10 @@ #endif
#include "macros.h" -#include "gost28147.h" #include "gost28147-internal.h"
/* pre-initialized GOST lookup tables based on rotated S-Box */ -const struct gost28147_param gost28147_param_test_3411 = +const struct gost28147_param _gost28147_param_test_3411 = { { { /* 0 */ @@ -304,7 +303,7 @@ const struct gost28147_param gost28147_param_test_3411 = } };
-const struct gost28147_param gost28147_param_CryptoPro_3411 = +const struct gost28147_param _gost28147_param_CryptoPro_3411 = { { { /* 0 */ diff --git a/gost28147.h b/gost28147.h deleted file mode 100644 index 32e7d5e81eb8..000000000000 --- a/gost28147.h +++ /dev/null @@ -1,58 +0,0 @@ -/* gost28147.h - - The GOST 28147-89 cipher function, described in RFC 5831. - - Copyright (C) 2019 Dmitry Eremin-Solenikov - - This file is part of GNU Nettle. - - GNU Nettle is free software: you can redistribute it and/or - modify it under the terms of either: - - * the GNU Lesser General Public License as published by the Free - Software Foundation; either version 3 of the License, or (at your - option) any later version. - - or - - * the GNU General Public License as published by the Free - Software Foundation; either version 2 of the License, or (at your - option) any later version. - - or both in parallel, as here. - - GNU Nettle is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received copies of the GNU General Public License and - the GNU Lesser General Public License along with this program. If - not, see http://www.gnu.org/licenses/. -*/ - -#ifndef NETTLE_GOST28147_H_INCLUDED -#define NETTLE_GOST28147_H_INCLUDED - -#include "nettle-types.h" - -#ifdef __cplusplus -extern "C" { -#endif - -#define gost28147_param_test_3411 nettle_gost28147_param_test_3411 -#define gost28147_param_CryptoPro_3411 nettle_gost28147_param_CryptoPro_3411 - -struct gost28147_param -{ - uint32_t sbox[4][256]; -}; - -extern const struct gost28147_param gost28147_param_test_3411; -extern const struct gost28147_param gost28147_param_CryptoPro_3411; - -#ifdef __cplusplus -} -#endif - -#endif /* NETTLE_GOST28147_H_INCLUDED */ diff --git a/gosthash94.c b/gosthash94.c index 954130f741e9..37a7f32272df 100644 --- a/gosthash94.c +++ b/gosthash94.c @@ -41,7 +41,6 @@ #include "macros.h" #include "nettle-write.h" #include "gosthash94.h" -#include "gost28147.h" #include "gost28147-internal.h"
/** @@ -339,7 +338,7 @@ gosthash94_update (struct gosthash94_ctx *ctx, size_t length, const uint8_t *msg) { gosthash94_update_int (ctx, length, msg, - gost28147_param_test_3411.sbox); + _gost28147_param_test_3411.sbox); }
/** @@ -355,7 +354,7 @@ gosthash94cp_update (struct gosthash94_ctx *ctx, size_t length, const uint8_t *msg) { gosthash94_update_int (ctx, length, msg, - gost28147_param_CryptoPro_3411.sbox); + _gost28147_param_CryptoPro_3411.sbox); }
/** @@ -399,7 +398,7 @@ gosthash94_digest (struct gosthash94_ctx *ctx, size_t length, uint8_t *result) { gosthash94_write_digest (ctx, length, result, - gost28147_param_test_3411.sbox); + _gost28147_param_test_3411.sbox); }
void @@ -407,5 +406,5 @@ gosthash94cp_digest (struct gosthash94_ctx *ctx, size_t length, uint8_t *result) { gosthash94_write_digest (ctx, length, result, - gost28147_param_CryptoPro_3411.sbox); + _gost28147_param_CryptoPro_3411.sbox); }
dbaryshkov@gmail.com writes:
From: Dmitry Baryshkov dbaryshkov@gmail.com
gost28147_param instances were never a part of stable release, so move them to internal header.
Thanks, applied.
Regards, /Niels
nettle-bugs@lists.lysator.liu.se