From e99a1c24ff1186dd2c59f975c32e15c0ab9b0096 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Sat, 7 Feb 2004 13:32:40 +0100 Subject: [PATCH] * examples/rsa-keygen.c (main): Use xalloc for allocation. * examples/rsa-encrypt.c (write_bignum): Likewise. * examples/rsa-decrypt.c (read_bignum): Likewise. Rev: src/nettle/examples/rsa-decrypt.c:1.4 Rev: src/nettle/examples/rsa-encrypt.c:1.5 Rev: src/nettle/examples/rsa-keygen.c:1.12 --- examples/rsa-decrypt.c | 9 +++++++-- examples/rsa-encrypt.c | 7 +++++-- examples/rsa-keygen.c | 11 ++--------- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/examples/rsa-decrypt.c b/examples/rsa-decrypt.c index 8dfd38f9..52b8b4c7 100644 --- a/examples/rsa-decrypt.c +++ b/examples/rsa-decrypt.c @@ -86,11 +86,16 @@ read_bignum(FILE *f, mpz_t x) if (read_uint32(f, &size) && size < 1000) { - uint8_t *p = alloca(size); + uint8_t *p = xalloc(size); if (fread(p, 1, size, f) != size) - return 0; + { + free(p); + return 0; + } nettle_mpz_set_str_256_u(x, size, p); + free(p); + return 1; } return 0; diff --git a/examples/rsa-encrypt.c b/examples/rsa-encrypt.c index 919a7563..cb0e8209 100644 --- a/examples/rsa-encrypt.c +++ b/examples/rsa-encrypt.c @@ -78,14 +78,17 @@ write_bignum(FILE *f, mpz_t x) { unsigned size = nettle_mpz_sizeinbase_256_u(x); uint8_t *p; + int res; if (!write_uint32(f, size)) return 0; - p = alloca(size); + p = xalloc(size); nettle_mpz_get_str_256(size, p, x); - return write_string(f, size, p); + res = write_string(f, size, p); + free(p); + return res; } static int diff --git a/examples/rsa-keygen.c b/examples/rsa-keygen.c index c5022cf3..675f13f4 100644 --- a/examples/rsa-keygen.c +++ b/examples/rsa-keygen.c @@ -96,15 +96,8 @@ main(int argc, char **argv) return EXIT_FAILURE; } - pub_name = malloc(strlen(priv_name) + 5); - - if (pub_name) - sprintf(pub_name, "%s.pub", priv_name); - else - { - werror("Memory exhausted.\n"); - return EXIT_FAILURE; - } + pub_name = xalloc(strlen(priv_name) + 5); + sprintf(pub_name, "%s.pub", priv_name); /* NOTE: No sources */ yarrow256_init(&yarrow, 0, NULL); -- GitLab