mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
Fix warnings on 32-bit builds.
When size_t is the most memory you can have, make sure that things referring to real parts of memory are size_t, not uint64_t or off_t. But not on any released Tor.
This commit is contained in:
parent
1c5d680b3d
commit
9190468246
@ -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;
|
||||
}
|
||||
|
@ -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 */
|
||||
|
@ -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
|
||||
)
|
||||
{
|
||||
|
@ -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
|
||||
)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user