aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2016-03-15 08:22:24 +0000
committerWerner Koch <[email protected]>2016-03-15 08:22:24 +0000
commit60b34f96f4f390670462d719c0d797e622cee4d4 (patch)
tree43534de189921f7185759e75a8230cc1c3e5fe44
parentscd: Add manufacturer id 0x000a (diff)
downloadgnupg-60b34f96f4f390670462d719c0d797e622cee4d4.tar.gz
gnupg-60b34f96f4f390670462d719c0d797e622cee4d4.zip
gpg: Do not rely on a certain evaluation order.
* g10/keyedit.c (print_and_check_one_sig): Call check_key_signature before derefing IS_SELFSIG. -- Fixes-commit: 5fbd80579aea0f75ca1d2700515c5b8747a75c7d Signed-off-by: Werner Koch <[email protected]>
-rw-r--r--g10/keyedit.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/g10/keyedit.c b/g10/keyedit.c
index d7c2a4b30..e138efa7c 100644
--- a/g10/keyedit.c
+++ b/g10/keyedit.c
@@ -310,12 +310,16 @@ print_one_sig (int rc, KBNODE keyblock, KBNODE node,
return (sigrc == '!');
}
+
static int
print_and_check_one_sig (KBNODE keyblock, KBNODE node,
int *inv_sigs, int *no_key, int *oth_err,
int *is_selfsig, int print_without_key, int extended)
{
- return print_one_sig (check_key_signature (keyblock, node, is_selfsig),
+ int rc;
+
+ rc = check_key_signature (keyblock, node, is_selfsig);
+ return print_one_sig (rc,
keyblock, node, inv_sigs, no_key, oth_err,
*is_selfsig, print_without_key, extended);
}