diff options
author | Daiki Ueno <ueno@gnu.org> | 2020-09-08 19:55:14 +0200 |
---|---|---|
committer | Daiki Ueno <ueno@gnu.org> | 2020-09-18 10:12:24 +0200 |
commit | 6750b147fefd6c6824669613c0051cff218d6e3c (patch) | |
tree | 8fa7bf27815490c9e0a67125eef48f7166f90563 /lib/pubkey.c | |
parent | 887ee6ab7aef1187d23c440f464e40d6bb09e088 (diff) | |
download | gnutls-6750b147fefd6c6824669613c0051cff218d6e3c.tar.gz |
spki: work around GCC 10 -Warray-bounds false-positive
Suggested by Martin Sebor in:
https://bugzilla.redhat.com/show_bug.cgi?id=1876801#c1
Signed-off-by: Daiki Ueno <ueno@gnu.org>
Diffstat (limited to 'lib/pubkey.c')
-rw-r--r-- | lib/pubkey.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/pubkey.c b/lib/pubkey.c index 6f9d54f119..e03aea709e 100644 --- a/lib/pubkey.c +++ b/lib/pubkey.c @@ -2581,15 +2581,17 @@ int gnutls_pubkey_verify_params(gnutls_pubkey_t key) int gnutls_pubkey_get_spki(gnutls_pubkey_t pubkey, gnutls_x509_spki_t spki, unsigned int flags) { + gnutls_x509_spki_t p = &pubkey->params.spki; + if (pubkey == NULL) { gnutls_assert(); return GNUTLS_E_INVALID_REQUEST; } - if (pubkey->params.spki.pk == GNUTLS_PK_UNKNOWN) + if (p->pk == GNUTLS_PK_UNKNOWN) return gnutls_assert_val(GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE); - memcpy(spki, &pubkey->params.spki, sizeof(gnutls_x509_spki_st)); + memcpy(spki, p, sizeof(gnutls_x509_spki_st)); return 0; } |