commit 932b4d0a4342ec281b6f692f23453d6c46026c18 Author: Nick Mathewson nickm@torproject.org Date: Thu Jun 21 16:34:00 2018 -0400
Remove container->crypto dependency
Containers were using crypto_digest.h, just to see the value of DIGEST_LEN. Moved those constants into a new defs module. --- src/include.am | 1 + src/lib/container/map.c | 2 +- src/lib/container/smartlist.c | 2 +- src/lib/crypt_ops/.may_include | 1 + src/lib/crypt_ops/crypto_digest.c | 1 - src/lib/crypt_ops/crypto_digest.h | 10 +--------- src/lib/defs/.may_include | 1 + src/lib/defs/digest_sizes.h | 18 ++++++++++++++++++ src/lib/defs/include.am | 3 +++ 9 files changed, 27 insertions(+), 12 deletions(-)
diff --git a/src/include.am b/src/include.am index 9fa901c41..581fd69c7 100644 --- a/src/include.am +++ b/src/include.am @@ -5,6 +5,7 @@ include src/lib/ctime/include.am include src/lib/compress/include.am include src/lib/container/include.am include src/lib/crypt_ops/include.am +include src/lib/defs/include.am include src/lib/include.libdonna.am include src/lib/malloc/include.am include src/lib/testsupport/include.am diff --git a/src/lib/container/map.c b/src/lib/container/map.c index 227fb8f5e..508680e4a 100644 --- a/src/lib/container/map.c +++ b/src/lib/container/map.c @@ -13,7 +13,7 @@
#include "lib/container/map.h" #include "lib/ctime/di_ops.h" -#include "lib/crypt_ops/crypto_digest.h" +#include "lib/defs/digest_sizes.h"
#include "common/util_bug.h" #include "common/util.h" // For strlower diff --git a/src/lib/container/smartlist.c b/src/lib/container/smartlist.c index 0fe11c670..2d861f566 100644 --- a/src/lib/container/smartlist.c +++ b/src/lib/container/smartlist.c @@ -15,7 +15,7 @@ #include "lib/container/smartlist.h" #include "lib/err/torerr.h" #include "common/util.h" // For strstrip. -#include "lib/crypt_ops/crypto_digest.h" +#include "lib/defs/digest_sizes.h" #include "lib/ctime/di_ops.h"
#include <stdlib.h> diff --git a/src/lib/crypt_ops/.may_include b/src/lib/crypt_ops/.may_include index 6eefec158..4f415f876 100644 --- a/src/lib/crypt_ops/.may_include +++ b/src/lib/crypt_ops/.may_include @@ -2,6 +2,7 @@ orconfig.h lib/cc/*.h lib/crypt_ops/*.h lib/ctime/*.h +lib/defs/*.h lib/err/*.h lib/testsupport/testsupport.h
diff --git a/src/lib/crypt_ops/crypto_digest.c b/src/lib/crypt_ops/crypto_digest.c index d746aaaca..b6ec2b284 100644 --- a/src/lib/crypt_ops/crypto_digest.c +++ b/src/lib/crypt_ops/crypto_digest.c @@ -580,4 +580,3 @@ crypto_xof_free_(crypto_xof_t *xof) memwipe(xof, 0, sizeof(crypto_xof_t)); tor_free(xof); } - diff --git a/src/lib/crypt_ops/crypto_digest.h b/src/lib/crypt_ops/crypto_digest.h index 129258245..63e8bec70 100644 --- a/src/lib/crypt_ops/crypto_digest.h +++ b/src/lib/crypt_ops/crypto_digest.h @@ -17,14 +17,7 @@
#include "lib/container/container.h" #include "lib/cc/torint.h" - -/** Length of the output of our message digest. */ -#define DIGEST_LEN 20 -/** Length of the output of our second (improved) message digests. (For now - * this is just sha256, but it could be any other 256-bit digest.) */ -#define DIGEST256_LEN 32 -/** Length of the output of our 64-bit optimized message digests (SHA512). */ -#define DIGEST512_LEN 64 +#include "lib/defs/digest_sizes.h"
/** Length of a sha1 message digest when encoded in base32 with trailing = * signs removed. */ @@ -133,4 +126,3 @@ digest_algorithm_t crypto_digest_get_algorithm(crypto_digest_t *digest); #endif
#endif /* !defined(TOR_CRYPTO_DIGEST_H) */ - diff --git a/src/lib/defs/.may_include b/src/lib/defs/.may_include new file mode 100644 index 000000000..2b06e8519 --- /dev/null +++ b/src/lib/defs/.may_include @@ -0,0 +1 @@ +orconfig.h diff --git a/src/lib/defs/digest_sizes.h b/src/lib/defs/digest_sizes.h new file mode 100644 index 000000000..f426fff20 --- /dev/null +++ b/src/lib/defs/digest_sizes.h @@ -0,0 +1,18 @@ +/* Copyright (c) 2001, Matej Pfajfar. + * Copyright (c) 2001-2004, Roger Dingledine. + * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson. + * Copyright (c) 2007-2018, The Tor Project, Inc. */ +/* See LICENSE for licensing information */ + +#ifndef TOR_DIGEST_SIZES_H +#define TOR_DIGEST_SIZES_H + +/** Length of the output of our message digest. */ +#define DIGEST_LEN 20 +/** Length of the output of our second (improved) message digests. (For now + * this is just sha256, but it could be any other 256-bit digest.) */ +#define DIGEST256_LEN 32 +/** Length of the output of our 64-bit optimized message digests (SHA512). */ +#define DIGEST512_LEN 64 + +#endif diff --git a/src/lib/defs/include.am b/src/lib/defs/include.am new file mode 100644 index 000000000..861406c01 --- /dev/null +++ b/src/lib/defs/include.am @@ -0,0 +1,3 @@ + +noinst_HEADERS += \ + digest_sizes.h
tor-commits@lists.torproject.org