diff options
author | Werner Koch <[email protected]> | 2016-03-15 08:22:24 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2016-03-15 08:22:24 +0000 |
commit | 60b34f96f4f390670462d719c0d797e622cee4d4 (patch) | |
tree | 43534de189921f7185759e75a8230cc1c3e5fe44 | |
parent | scd: Add manufacturer id 0x000a (diff) | |
download | gnupg-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.c | 6 |
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); } |