mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-03 22:56:33 +02:00
sm: Optmize clearing of the ephemeral flag.
* kbx/keybox-search.c (keybox_get_cert): Store the blob clags in the cert object. * sm/certchain.c (do_validate_chain): Skip clearing of the ephemeral flag if we know that it is not set. -- GnuPG-bug-id: 7308
This commit is contained in:
parent
ecda4b1e16
commit
9543b3567b
2 changed files with 25 additions and 0 deletions
|
@ -1196,6 +1196,7 @@ keybox_get_cert (KEYBOX_HANDLE hd, ksba_cert_t *r_cert)
|
|||
size_t cert_off, cert_len;
|
||||
ksba_reader_t reader = NULL;
|
||||
ksba_cert_t cert = NULL;
|
||||
unsigned int blobflags;
|
||||
int rc;
|
||||
|
||||
if (!hd)
|
||||
|
@ -1241,6 +1242,17 @@ keybox_get_cert (KEYBOX_HANDLE hd, ksba_cert_t *r_cert)
|
|||
return gpg_error (GPG_ERR_GENERAL);
|
||||
}
|
||||
|
||||
rc = get_flag_from_image (buffer, length, KEYBOX_FLAG_BLOB, &blobflags);
|
||||
if (!rc)
|
||||
rc = ksba_cert_set_user_data (cert, "keydb.blobflags",
|
||||
&blobflags, sizeof blobflags);
|
||||
if (rc)
|
||||
{
|
||||
ksba_cert_release (cert);
|
||||
ksba_reader_release (reader);
|
||||
return gpg_error (rc);
|
||||
}
|
||||
|
||||
*r_cert = cert;
|
||||
ksba_reader_release (reader);
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue