diff options
author | Werner Koch <[email protected]> | 1999-12-31 11:44:29 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 1999-12-31 11:44:29 +0000 |
commit | ed0b0e09d3eb529dc83fab4f24d4fc3abe649bd2 (patch) | |
tree | acdf31e4ef6ec6940169de6bd2a557451b8b73f9 /g10/seckey-cert.c | |
parent | See ChangeLog: Thu Dec 9 17:22:27 CET 1999 Werner Koch (diff) | |
download | gnupg-ed0b0e09d3eb529dc83fab4f24d4fc3abe649bd2.tar.gz gnupg-ed0b0e09d3eb529dc83fab4f24d4fc3abe649bd2.zip |
See ChangeLog: Fri Dec 31 12:48:31 CET 1999 Werner Koch
Diffstat (limited to 'g10/seckey-cert.c')
-rw-r--r-- | g10/seckey-cert.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/g10/seckey-cert.c b/g10/seckey-cert.c index b228bc9c8..7cacb9f5b 100644 --- a/g10/seckey-cert.c +++ b/g10/seckey-cert.c @@ -109,8 +109,12 @@ do_check( PKT_secret_key *sk ) if( sk->csum == csum ) { for( ; i < pubkey_get_nskey(sk->pubkey_algo); i++ ) { nbytes = ndata; - sk->skey[i] = mpi_read_from_buffer(p, &nbytes, 1 ); - /* fixme: replace by mpi_scan */ + assert( m_is_secure( p ) ); + res = gcry_mpi_scan( &sk->skey[i], GCRYMPI_FMT_PGP, + p, &nbytes); + if( res ) + log_bug("gcry_mpi_scan failed in do_check: rc=%d\n", res); + ndata -= nbytes; p += nbytes; } @@ -134,6 +138,8 @@ do_check( PKT_secret_key *sk ) res = gcry_mpi_scan( &sk->skey[i], GCRYMPI_FMT_USG, data, &ndata ); + if( res ) + log_bug("gcry_mpi_scan failed in do_check: rc=%d\n", res); csum += checksum_mpi( sk->skey[i] ); m_free( buffer ); |