diff options
author | Steffen Hansen <[email protected]> | 2002-08-20 23:37:43 +0000 |
---|---|---|
committer | Steffen Hansen <[email protected]> | 2002-08-20 23:37:43 +0000 |
commit | a579b5fa35dce16ce234bb0a11eb5a5b9f3c29f9 (patch) | |
tree | bea1899d904d5e0f3e3bec2095a4fb3eb847b246 | |
parent | 2002-08-21 Marcus Brinkmann <[email protected]> (diff) | |
download | gpgme-a579b5fa35dce16ce234bb0a11eb5a5b9f3c29f9.tar.gz gpgme-a579b5fa35dce16ce234bb0a11eb5a5b9f3c29f9.zip |
Use gpgme_op_import_ext() instead of gpgme_op_import()
Diffstat (limited to '')
-rw-r--r-- | gpgmeplug/ChangeLog | 9 | ||||
-rw-r--r-- | gpgmeplug/gpgmeplug.c | 27 |
2 files changed, 30 insertions, 6 deletions
diff --git a/gpgmeplug/ChangeLog b/gpgmeplug/ChangeLog index 1acb58df..b2e25402 100644 --- a/gpgmeplug/ChangeLog +++ b/gpgmeplug/ChangeLog @@ -1,6 +1,13 @@ +2002-08-20 Steffen Hansen <[email protected]> + + * Use gpgme_op_import_ext() instead of gpgme_op_import(). We + should now be able to better check for the case when we have no + error, but still no certificate was imported. + 2002-07-31 Steffen Hansen <[email protected]> - * Renamed importCertificate() to importCertificateWithFPR() and implemented importCertificateFromMem() + * Renamed importCertificate() to importCertificateWithFPR() and + implemented importCertificateFromMem(). 2002-07-03 Werner Koch <[email protected]> diff --git a/gpgmeplug/gpgmeplug.c b/gpgmeplug/gpgmeplug.c index f6030083..404189d6 100644 --- a/gpgmeplug/gpgmeplug.c +++ b/gpgmeplug/gpgmeplug.c @@ -2243,6 +2243,7 @@ importCertificateWithFPR( const char* fingerprint, char** additional_info ) char* buf; const char* tmp1; char* tmp2; + int count = 0; err = gpgme_new( &ctx ); /*fprintf( stderr, "2: gpgme returned %d\n", err );*/ @@ -2305,15 +2306,23 @@ importCertificateWithFPR( const char* fingerprint, char** additional_info ) free (buf); buf = NULL; - err = gpgme_op_import( ctx, keydata ); + err = gpgme_op_import_ext( ctx, keydata, &count ); *additional_info = gpgme_get_op_info( ctx, 0 ); if( err ) { - fprintf( stderr, "gpgme_op_import returned %d\n", err ); + fprintf( stderr, "gpgme_op_import_ext returned %d\n", err ); gpgme_recipients_release( recips ); gpgme_data_release( keydata ); gpgme_release( ctx ); return err; } + if( count < 1 ) { + /* we didn't import anything?!? */ + fprintf( stderr, "gpgme_op_import_ext did not import any certificates\n" ); + gpgme_recipients_release( recips ); + gpgme_data_release( keydata ); + gpgme_release( ctx ); + return -1; /* FIXME */ + } gpgme_recipients_release( recips ); gpgme_data_release( keydata ); @@ -2326,6 +2335,7 @@ importCertificateFromMem( const char* data, size_t length , char** additional_in GpgmeError err; GpgmeCtx ctx; GpgmeData keydata; + int count = 0; err = gpgme_new( &ctx ); /*fprintf( stderr, "2: gpgme returned %d\n", err );*/ @@ -2342,14 +2352,21 @@ importCertificateFromMem( const char* data, size_t length , char** additional_in return err; } - err = gpgme_op_import( ctx, keydata ); + err = gpgme_op_import_ext( ctx, keydata, &count ); *additional_info = gpgme_get_op_info( ctx, 0 ); - if( err ) { - fprintf( stderr, "gpgme_op_import returned %d\n", err ); + if( err) { + fprintf( stderr, "gpgme_op_import_ext returned %d\n", err ); gpgme_data_release( keydata ); gpgme_release( ctx ); return err; } + if( count < 1 ) { + /* we didn't import anything?!? */ + fprintf( stderr, "gpgme_op_import_ext did not import any certificate\n", err ); + gpgme_data_release( keydata ); + gpgme_release( ctx ); + return -1; /* FIXME */ + } gpgme_data_release( keydata ); gpgme_release( ctx ); |