diff options
| author | Werner Koch <[email protected]> | 2001-12-18 17:37:48 +0000 |
|---|---|---|
| committer | Werner Koch <[email protected]> | 2001-12-18 17:37:48 +0000 |
| commit | 56172ce393437be1434d5af11f775c85ed72c1b0 (patch) | |
| tree | 73821dd5f67e3f6c7a911d75676aea7041bd6e7a /sm/keydb.c | |
| parent | * gpgsm.c (main): Renamed the default key database to "keyring.kbx". (diff) | |
| download | gnupg-56172ce393437be1434d5af11f775c85ed72c1b0.tar.gz gnupg-56172ce393437be1434d5af11f775c85ed72c1b0.zip | |
Changes to be used with the new libksba interface.
libgcrypt-1.1.5 is required (cvs or tarball)
Diffstat (limited to 'sm/keydb.c')
| -rw-r--r-- | sm/keydb.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sm/keydb.c b/sm/keydb.c index d8d0ad7e3..b80f42642 100644 --- a/sm/keydb.c +++ b/sm/keydb.c @@ -834,14 +834,19 @@ keydb_search_issuer (KEYDB_HANDLE hd, const char *issuer) int keydb_search_issuer_sn (KEYDB_HANDLE hd, - const char *issuer, const unsigned char *serial) + const char *issuer, KsbaConstSexp serial) { KEYDB_SEARCH_DESC desc; int rc; + const unsigned char *s; memset (&desc, 0, sizeof desc); desc.mode = KEYDB_SEARCH_MODE_ISSUER_SN; - desc.sn = serial; + for (s=serial,desc.snlen = 0; digitp (s); s++) + desc.snlen = 10*desc.snlen + atoi_1 (s); + if (*s !=':') + return GNUPG_Invalid_Value; + desc.sn = s+1; desc.u.name = issuer; rc = keydb_search (hd, &desc, 1); return rc; @@ -975,7 +980,7 @@ classify_user_id (const char *name, return 0; /* invalid digit in serial number*/ } desc->sn = s; - desc->sn_is_string = 1; + desc->snlen = -1; if (!*si) mode = KEYDB_SEARCH_MODE_SN; else |
