diff options
| author | Werner Koch <[email protected]> | 2009-07-07 12:38:18 +0000 | 
|---|---|---|
| committer | Werner Koch <[email protected]> | 2009-07-07 12:38:18 +0000 | 
| commit | 3bd2d764170d95cf154ec47d22101d46f68c92f5 (patch) | |
| tree | ff6fb1bb4614b8266e350c3075b9345caca8cb1b | |
| parent | 2009-06-22 Marcus Brinkmann <[email protected]> (diff) | |
| download | gpgme-3bd2d764170d95cf154ec47d22101d46f68c92f5.tar.gz gpgme-3bd2d764170d95cf154ec47d22101d46f68c92f5.zip  | |
* engine-gpgsm.c (gpgsm_import): Return an error for unknown data
encodings.
Diffstat (limited to '')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/engine-gpgsm.c | 9 | 
2 files changed, 14 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 56a215d9..eca549aa 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2009-07-07  Werner Koch  <[email protected]> + +	* engine-gpgsm.c (gpgsm_import): Return an error for unknown data +	encodings. +  2009-06-22  Marcus Brinkmann  <[email protected]>  	* debug.h: Everywhere, use %p instead of 0x%x to print pointer. diff --git a/src/engine-gpgsm.c b/src/engine-gpgsm.c index 71ef221b..52915d36 100644 --- a/src/engine-gpgsm.c +++ b/src/engine-gpgsm.c @@ -1544,6 +1544,7 @@ gpgsm_import (void *engine, gpgme_data_t keydata, gpgme_key_t *keyarray)  {    engine_gpgsm_t gpgsm = engine;    gpgme_error_t err; +  gpgme_data_encoding_t dataenc;    if (!gpgsm)      return gpg_error (GPG_ERR_INV_VALUE); @@ -1551,10 +1552,18 @@ gpgsm_import (void *engine, gpgme_data_t keydata, gpgme_key_t *keyarray)    if (keydata && keyarray)      gpg_error (GPG_ERR_INV_VALUE); /* Only one is allowed.  */ +  dataenc = gpgme_data_get_encoding (keydata); +    if (keyarray)      {        return gpg_error (GPG_ERR_NOT_IMPLEMENTED);      } +  else if (dataenc == GPGME_DATA_ENCODING_URL +           || dataenc == GPGME_DATA_ENCODING_URL0 +           || dataenc == GPGME_DATA_ENCODING_URLESC) +    { +      return gpg_error (GPG_ERR_NOT_IMPLEMENTED); +    }    else      {        gpgsm->input_cb.data = keydata;  | 
