summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/crypto.c6
-rw-r--r--src/common/crypto.h7
-rw-r--r--src/common/tortls.c22
3 files changed, 18 insertions, 17 deletions
diff --git a/src/common/crypto.c b/src/common/crypto.c
index 0daf24310f..54cfc7404a 100644
--- a/src/common/crypto.c
+++ b/src/common/crypto.c
@@ -54,6 +54,7 @@ const char crypto_c_id[] =
#include <sys/fcntl.h>
#endif
+#define CRYPTO_PRIVATE
#include "crypto.h"
#include "log.h"
#include "aes.h"
@@ -103,11 +104,6 @@ struct crypto_dh_env_t {
DH *dh;
};
-/* Prototypes for functions only used by tortls.c */
-crypto_pk_env_t *_crypto_new_pk_env_rsa(RSA *rsa);
-EVP_PKEY *_crypto_pk_env_get_evp_pkey(crypto_pk_env_t *env, int private);
-DH *_crypto_dh_env_get_dh(crypto_dh_env_t *dh);
-
static int setup_openssl_threading(void);
static int tor_check_dh_key(BIGNUM *bn);
diff --git a/src/common/crypto.h b/src/common/crypto.h
index 319113be78..c85fc118e6 100644
--- a/src/common/crypto.h
+++ b/src/common/crypto.h
@@ -173,5 +173,12 @@ int digest_from_base64(char *digest, const char *d64);
void secret_to_key(char *key_out, size_t key_out_len, const char *secret,
size_t secret_len, const char *s2k_specifier);
+#ifdef CRYPTO_PRIVATE
+/* Prototypes for private functions only used by tortls.c and crypto.c */
+crypto_pk_env_t *_crypto_new_pk_env_rsa(RSA *rsa);
+EVP_PKEY *_crypto_pk_env_get_evp_pkey(crypto_pk_env_t *env, int private);
+DH *_crypto_dh_env_get_dh(crypto_dh_env_t *dh);
+#endif
+
#endif
diff --git a/src/common/tortls.c b/src/common/tortls.c
index e8984603d1..f232bf19da 100644
--- a/src/common/tortls.c
+++ b/src/common/tortls.c
@@ -17,6 +17,16 @@ const char tortls_c_id[] =
*/
#include "orconfig.h"
+
+#include <assert.h>
+#include <openssl/ssl.h>
+#include <openssl/err.h>
+#include <openssl/tls1.h>
+#include <openssl/asn1.h>
+#include <openssl/bio.h>
+
+#define CRYPTO_PRIVATE
+
#include "./crypto.h"
#include "./tortls.h"
#include "./util.h"
@@ -27,13 +37,6 @@ const char tortls_c_id[] =
#define LEGAL_NICKNAME_CHARACTERS \
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
-#include <assert.h>
-#include <openssl/ssl.h>
-#include <openssl/err.h>
-#include <openssl/tls1.h>
-#include <openssl/asn1.h>
-#include <openssl/bio.h>
-
/** How long do identity certificates live? (sec) */
#define IDENTITY_CERT_LIFETIME (365*24*60*60)
@@ -76,11 +79,6 @@ static int tls_library_is_initialized = 0;
#define _TOR_TLS_SYSCALL (_MIN_TOR_TLS_ERROR_VAL - 2)
#define _TOR_TLS_ZERORETURN (_MIN_TOR_TLS_ERROR_VAL - 1)
-/* These functions are declared in crypto.c but not exported. */
-EVP_PKEY *_crypto_pk_env_get_evp_pkey(crypto_pk_env_t *env, int private);
-crypto_pk_env_t *_crypto_new_pk_env_rsa(RSA *rsa);
-DH *_crypto_dh_env_get_dh(crypto_dh_env_t *dh);
-
/** Log all pending tls errors at level <b>severity</b>. Use
* <b>doing</b> to describe our current activities.
*/