mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-03 22:56:33 +02:00
* certlist.c (gpgsm_add_to_certlist): Fixed locating of a
certificate with the required key usage. * gpgsm.c (main): Fixed a segv when using --outfile without an argument. * keylist.c (print_capabilities): Also check for non-repudiation and data encipherment. * certlist.c (cert_usage_p): Test for signing and encryption was swapped. Add a case for certification usage, handle non-repudiation and data encipherment. (gpgsm_cert_use_cert_p): New. (gpgsm_add_to_certlist): Added a CTRL argument and changed all callers to pass it. * certpath.c (gpgsm_validate_path): Use it here to print a status message. Added a CTRL argument and changed all callers to pass it. * decrypt.c (gpgsm_decrypt): Print a status message for wrong key usage. * verify.c (gpgsm_verify): Ditto. * keydb.c (classify_user_id): Allow a colon delimited fingerprint.
This commit is contained in:
parent
52146943d1
commit
42cf865350
12 changed files with 176 additions and 36 deletions
29
sm/keydb.c
29
sm/keydb.c
|
@ -1137,10 +1137,31 @@ classify_user_id (const char *name,
|
|||
mode = KEYDB_SEARCH_MODE_FPR20;
|
||||
}
|
||||
else if (!hexprefix)
|
||||
{ /* default is substring search */
|
||||
*force_exact = 0;
|
||||
desc->u.name = s;
|
||||
mode = KEYDB_SEARCH_MODE_SUBSTR;
|
||||
{
|
||||
/* The fingerprint in an X.509 listing is often delimited by
|
||||
colons, so we try to single this case out. */
|
||||
mode = 0;
|
||||
hexlength = strspn (s, ":0123456789abcdefABCDEF");
|
||||
if (hexlength == 59 && (!s[hexlength] || spacep (s+hexlength)))
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i=0; i < 20; i++, s += 3)
|
||||
{
|
||||
int c = hextobyte(s);
|
||||
if (c == -1 || (i < 19 && s[2] != ':'))
|
||||
break;
|
||||
desc->u.fpr[i] = c;
|
||||
}
|
||||
if (i == 20)
|
||||
mode = KEYDB_SEARCH_MODE_FPR20;
|
||||
}
|
||||
if (!mode) /* default is substring search */
|
||||
{
|
||||
*force_exact = 0;
|
||||
desc->u.name = s;
|
||||
mode = KEYDB_SEARCH_MODE_SUBSTR;
|
||||
}
|
||||
}
|
||||
else
|
||||
{ /* hex number with a prefix but a wrong length */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue