commit 536e8b61b6e26c39ece6f3a21c1dcc0f169f84da
parent 0ebe235c2e206fb6d5b12e06990e288ede674490
Author: Florian Dold <florian@dold.me>
Date: Thu, 2 Feb 2023 02:29:09 +0100
fix memory leaks
Diffstat:
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/tart_module.c b/tart_module.c
@@ -792,6 +792,7 @@ kdf_mod_mpi(mbedtls_mpi *r,
}
mbedtls_mpi_free (r);
}
+ free(my_ctx);
}
@@ -1035,8 +1036,8 @@ rsa_verify(const HashCode *hash,
}
cleanup:
- mbedtls_mpi_init(&r);
- mbedtls_mpi_init(&sig_2);
+ mbedtls_mpi_free(&r);
+ mbedtls_mpi_free(&sig_2);
return ret;
}
@@ -1053,7 +1054,7 @@ static JSValue js_talercrypto_rsa_blind(JSContext *ctx, JSValueConst this_val,
size_t rsa_enc_len;
RsaPub rsa_pub;
JSValue ret_val = JS_UNDEFINED;
- uint8_t *out_buf;
+ uint8_t *out_buf = NULL;
size_t out_len;
rsa_public_key_init(&rsa_pub);
@@ -1084,6 +1085,10 @@ static JSValue js_talercrypto_rsa_blind(JSContext *ctx, JSValueConst this_val,
ret_val = make_js_ta_copy(ctx, out_buf, out_len);
cleanup:
+ if (NULL != out_buf) {
+ free(out_buf);
+ out_buf = NULL;
+ }
rsa_public_key_free(&rsa_pub);
return ret_val;
}
@@ -1202,6 +1207,7 @@ static JSValue js_structured_clone(JSContext *ctx, JSValueConst this_val,
}
obj = JS_ReadObject(ctx, buf, len, JS_WRITE_OBJ_REFERENCE);
+ js_free(ctx, buf);
return obj;
}