From 13dd02de8914b8c6efbc1b3c37e080d48adcc443 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 8 Oct 2018 16:14:17 +0200 Subject: [PATCH] gpg: Fix extra check for sign usage of a data signature. * g10/sig-check.c (check_signature_end_simple): -- Obviously we should not ignore a back signature here. Fixes-commit: 214b0077264e35c079e854a8b6374704aea45cd5 GnuPG-bug-id: 4014 Signed-off-by: Werner Koch (cherry picked from commit b6275f3bda8edff34274c5b921508567f491ab9c) Gbp-Pq: Name gpg-Fix-extra-check-for-sign-usage-of-a-data-signature.patch --- g10/sig-check.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/g10/sig-check.c b/g10/sig-check.c index e59e0c9..a93b496 100644 --- a/g10/sig-check.c +++ b/g10/sig-check.c @@ -481,7 +481,8 @@ check_signature_end_simple (PKT_public_key *pk, PKT_signature *sig, } /* For data signatures check that the key has sign usage. */ - if (IS_SIG (sig) && !(pk->pubkey_usage & PUBKEY_USAGE_SIG)) + if (!IS_BACK_SIG (sig) && IS_SIG (sig) + && !(pk->pubkey_usage & PUBKEY_USAGE_SIG)) { rc = gpg_error (GPG_ERR_WRONG_KEY_USAGE); if (!opt.quiet) -- 2.30.2