aboutsummaryrefslogtreecommitdiff
path: root/src/common/crypto.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/crypto.c')
-rw-r--r--src/common/crypto.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/common/crypto.c b/src/common/crypto.c
index 8fb14c89a..782651205 100644
--- a/src/common/crypto.c
+++ b/src/common/crypto.c
@@ -135,7 +135,7 @@ crypto_log_errors(int severity, const char *doing)
func = (const char*)ERR_func_error_string(err);
if (!msg) msg = "(null)";
if (doing) {
- log(severity, "crypto error while %s: %s (in %s:%s)", doing, msg, lib,func);
+ log(severity, "crypto error while %s: %s (in %s:%s)", doing, msg, lib, func);
} else {
log(severity, "crypto error: %s (in %s:%s)", msg, lib, func);
}
@@ -377,7 +377,7 @@ int crypto_pk_read_private_key_from_filename(crypto_pk_env_t *env, const char *k
* string, *<b>len</b> to the string's length, and return 0. On
* failure, return -1.
*/
-int crypto_pk_write_public_key_to_string(crypto_pk_env_t *env, char **dest, int *len) {
+int crypto_pk_write_public_key_to_string(crypto_pk_env_t *env, char **dest, size_t *len) {
BUF_MEM *buf;
BIO *b;
@@ -397,6 +397,7 @@ int crypto_pk_write_public_key_to_string(crypto_pk_env_t *env, char **dest, int
BIO_set_close(b, BIO_NOCLOSE); /* so BIO_free doesn't free buf */
BIO_free(b);
+ tor_assert(buf->length >= 0);
*dest = tor_malloc(buf->length+1);
memcpy(*dest, buf->data, buf->length);
(*dest)[buf->length] = 0; /* null terminate it */
@@ -410,7 +411,7 @@ int crypto_pk_write_public_key_to_string(crypto_pk_env_t *env, char **dest, int
* <b>src</b>, and store the result in <b>env</b>. Return 0 on success, -1 on
* failure.
*/
-int crypto_pk_read_public_key_from_string(crypto_pk_env_t *env, const char *src, int len) {
+int crypto_pk_read_public_key_from_string(crypto_pk_env_t *env, const char *src, size_t len) {
BIO *b;
tor_assert(env && src);
@@ -455,6 +456,7 @@ crypto_pk_write_private_key_to_filename(crypto_pk_env_t *env,
return -1;
}
len = BIO_get_mem_data(bio, &cp);
+ tor_assert(len >= 0);
s = tor_malloc(len+1);
strncpy(s, cp, len);
s[len] = '\0';
@@ -1473,7 +1475,7 @@ base64_decode(char *dest, size_t destlen, const char *src, size_t srclen)
EVP_ENCODE_CTX ctx;
int len, ret;
/* 64 bytes of input -> *up to* 48 bytes of output.
- Plus one more byte, in caes I'm wrong.
+ Plus one more byte, in case I'm wrong.
*/
if (destlen < ((srclen/64)+1)*49)
return -1;