commit | 05feca6f7cc26a22950d17f74c63a7b5e7a20eed | [log] [tgz] |
---|---|---|
author | Paul Bakker <p.j.bakker@polarssl.org> | Sat Jun 20 08:22:43 2009 +0000 |
committer | Paul Bakker <p.j.bakker@polarssl.org> | Sat Jun 20 08:22:43 2009 +0000 |
tree | 4333c76f716d9f4d567fa90adb69b59f2e13df80 | |
parent | 80ab9f5eb55d8d33baf0e034ab04f5b20701cd07 [diff] [blame] |
- Fixed incorrect handling of negative strings in mpi_read_string() (found by code coverage tests).
diff --git a/library/bignum.c b/library/bignum.c index 4b8fa80..5c1de68 100644 --- a/library/bignum.c +++ b/library/bignum.c
@@ -286,7 +286,15 @@ MPI_CHK( mpi_get_digit( &d, radix, s[i] ) ); MPI_CHK( mpi_mul_int( &T, X, radix ) ); - MPI_CHK( mpi_add_int( X, &T, d ) ); + + if( X->s == 1 ) + { + MPI_CHK( mpi_add_int( X, &T, d ) ); + } + else + { + MPI_CHK( mpi_sub_int( X, &T, d ) ); + } } }