[Pettycoin-dev] [raw_decode_base_n PATCH 3/3] Add a test for raw_decode_base_n with n=16
Rusty Russell
rusty at rustcorp.com.au
Sat Aug 16 04:49:35 EST 2014
Nelson Castillo <nelsoneci at gmail.com> writes:
> This is the first time that we test raw_decode_base_* with a BIGNUM that
> is allocated with BN_new. This function was leaking before and it doesn not
> leak now that raw_decode_base_n does not call BN_init (Fixed in previous patch).
>
> In other workds, this call sequence works well now:
>
> bn_priv = BN_new();
> assert(raw_decode_base_n(bn_priv, priv_b16, strlen(priv_b16), 16));
>
> Signed-off-by: Nelson Castillo <nelsoneci at gmail.com>
Thanks, applied!
Cheers,
Rusty.
> ---
> test/run-01-base16.c | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
> create mode 100644 test/run-01-base16.c
>
> diff --git a/test/run-01-base16.c b/test/run-01-base16.c
> new file mode 100644
> index 0000000..dec3272
> --- /dev/null
> +++ b/test/run-01-base16.c
> @@ -0,0 +1,28 @@
> +#include "../base58.c"
> +
> +int main(void)
> +{
> + /* Address: 1PtcjakvZBeggokcAGb1KbVvMRi3NT6LMk. */
> + const char priv_b16[] =
> + "4e111544df178877C7e8483e92b7ef1b40cE7dc4e944261f4f32e2ed13340c0A";
> + const char priv_b10[] =
> + "35310585383039988783548932038956396952442822145226977502125905800903068486666";
> +
> + BIGNUM *bn_priv;
> + BIGNUM *bn_priv_from_dec = NULL;
> + BIGNUM *bn_priv_from_hex = NULL;
> +
> + bn_priv = BN_new();
> + assert(raw_decode_base_n(bn_priv, priv_b16, strlen(priv_b16), 16));
> + assert(BN_dec2bn(&bn_priv_from_dec, priv_b10) == strlen(priv_b10));
> + assert(BN_hex2bn(&bn_priv_from_hex, priv_b16) == strlen(priv_b16));
> +
> + assert(BN_cmp(bn_priv, bn_priv_from_dec) == 0);
> + assert(BN_cmp(bn_priv, bn_priv_from_hex) == 0);
> +
> + BN_free(bn_priv_from_hex);
> + BN_free(bn_priv_from_dec);
> + BN_free(bn_priv);
> +
> + return 0;
> +}
>
> _______________________________________________
> Pettycoin-dev mailing list
> Pettycoin-dev at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/pettycoin-dev
More information about the Pettycoin-dev
mailing list