aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/crypto_curve25519.c8
-rw-r--r--src/ext/ed25519/ref10/ed25519_ref10.h4
-rw-r--r--src/ext/ed25519/ref10/open.c2
-rw-r--r--src/ext/ed25519/ref10/sign.c2
4 files changed, 9 insertions, 7 deletions
diff --git a/src/common/crypto_curve25519.c b/src/common/crypto_curve25519.c
index 44b280a346..dcb1e95208 100644
--- a/src/common/crypto_curve25519.c
+++ b/src/common/crypto_curve25519.c
@@ -181,6 +181,7 @@ crypto_read_tagged_contents_from_file(const char *fname,
char *content = NULL;
struct stat st;
ssize_t r = -1;
+ size_t st_size;
*tag_out = NULL;
st.st_size = 0;
@@ -189,6 +190,7 @@ crypto_read_tagged_contents_from_file(const char *fname,
goto end;
if (st.st_size < 32 || st.st_size > 32 + data_out_len)
goto end;
+ st_size = (size_t)st.st_size;
memcpy(prefix, content, 32);
prefix[32] = 0;
@@ -205,12 +207,12 @@ crypto_read_tagged_contents_from_file(const char *fname,
*tag_out = tor_strndup(prefix+5+strlen(typestring),
strlen(prefix)-8-strlen(typestring));
- memcpy(data_out, content+32, st.st_size-32);
- r = st.st_size - 32;
+ memcpy(data_out, content+32, st_size-32);
+ r = st_size - 32;
end:
if (content)
- memwipe(content, 0, st.st_size);
+ memwipe(content, 0, st_size);
tor_free(content);
return r;
}
diff --git a/src/ext/ed25519/ref10/ed25519_ref10.h b/src/ext/ed25519/ref10/ed25519_ref10.h
index 8c77b0e56b..af7e21a2ad 100644
--- a/src/ext/ed25519/ref10/ed25519_ref10.h
+++ b/src/ext/ed25519/ref10/ed25519_ref10.h
@@ -9,11 +9,11 @@ int ed25519_ref10_pubkey(unsigned char *pk,const unsigned char *sk);
int ed25519_ref10_keygen(unsigned char *pk,unsigned char *sk);
int ed25519_ref10_open(
const unsigned char *signature,
- const unsigned char *m,uint64_t mlen,
+ const unsigned char *m, size_t mlen,
const unsigned char *pk);
int ed25519_ref10_sign(
unsigned char *sig,
- const unsigned char *m,uint64_t mlen,
+ const unsigned char *m, size_t mlen,
const unsigned char *sk, const unsigned char *pk);
/* Added in Tor */
diff --git a/src/ext/ed25519/ref10/open.c b/src/ext/ed25519/ref10/open.c
index 0e7abba138..9dbeb4cdd0 100644
--- a/src/ext/ed25519/ref10/open.c
+++ b/src/ext/ed25519/ref10/open.c
@@ -9,7 +9,7 @@
/* 'signature' must be 64-bytes long. */
int crypto_sign_open(
const unsigned char *signature,
- const unsigned char *m,uint64_t mlen,
+ const unsigned char *m, size_t mlen,
const unsigned char *pk
)
{
diff --git a/src/ext/ed25519/ref10/sign.c b/src/ext/ed25519/ref10/sign.c
index e37b0d192d..1190a0fc99 100644
--- a/src/ext/ed25519/ref10/sign.c
+++ b/src/ext/ed25519/ref10/sign.c
@@ -7,7 +7,7 @@
int crypto_sign(
unsigned char *sig,
- const unsigned char *m,uint64_t mlen,
+ const unsigned char *m, size_t mlen,
const unsigned char *sk,const unsigned char *pk
)
{