From 1b0c17dfab5093dea378e4b2d4649cec5be0c84d Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 28 Sep 2022 11:14:26 +0200 Subject: [PATCH] gpg: Silence some diagnostics. * g10/parse-packet.c (enum_sig_subpkt): Show "buffer shorter than subpacket" only in debug mode. (parse_signature): Show "signature packet without timestamp / keyid" only in souble verbose mode. * g10/sig-check.c (check_signature_metadata_validity): Use ISO timestamp in UTC for the signature expired note. -- I have seen to many of these diagnostics and in particular the first one seems to be a connected to the others. Thus it does not make sense to show them in standard verbose mode. The ISO timestamp is much easier to read than than the localized timestamp and switching from localtime to UTC should not harm. --- g10/parse-packet.c | 17 ++++++++++------- g10/sig-check.c | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/g10/parse-packet.c b/g10/parse-packet.c index cea1f7ebc..b6aebbb69 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -1993,10 +1993,13 @@ enum_sig_subpkt (PKT_signature *sig, int want_hashed, sigsubpkttype_t reqtype, return NULL; /* End of packets; not found. */ too_short: - if (opt.verbose && !glo_ctrl.silence_parse_warnings) - log_printhex (pktbuf->data, pktbuf->len > 16? 16 : pktbuf->len, - "buffer shorter than subpacket (%zu/%d/%zu); dump:", - pktbuf->len, buflen, n); + if (opt.debug && !glo_ctrl.silence_parse_warnings) + { + es_fflush (es_stdout); + log_printhex (pktbuf->data, pktbuf->len > 16? 16 : pktbuf->len, + "buffer shorter than subpacket (%zu/%d/%zu); dump:", + pktbuf->len, buflen, n); + } if (start) *start = -1; @@ -2215,8 +2218,8 @@ parse_signature (IOBUF inp, int pkttype, unsigned long pktlen, if (p) sig->timestamp = buf32_to_u32 (p); else if (!(sig->pubkey_algo >= 100 && sig->pubkey_algo <= 110) - && opt.verbose && !glo_ctrl.silence_parse_warnings) - log_info ("signature packet without timestamp\n"); + && opt.verbose > 1 && !glo_ctrl.silence_parse_warnings) + log_info ("signature packet without timestamp\n"); /* Set the key id. We first try the issuer fingerprint and if * it is a v4 signature the fallback to the issuer. Note that @@ -2238,7 +2241,7 @@ parse_signature (IOBUF inp, int pkttype, unsigned long pktlen, sig->keyid[1] = buf32_to_u32 (p + 4); } else if (!(sig->pubkey_algo >= 100 && sig->pubkey_algo <= 110) - && opt.verbose && !glo_ctrl.silence_parse_warnings) + && opt.verbose > 1 && !glo_ctrl.silence_parse_warnings) log_info ("signature packet without keyid\n"); p = parse_sig_subpkt (sig, 1, SIGSUBPKT_SIG_EXPIRE, NULL); diff --git a/g10/sig-check.c b/g10/sig-check.c index eb6c9669d..7c48c0601 100644 --- a/g10/sig-check.c +++ b/g10/sig-check.c @@ -426,7 +426,7 @@ check_signature_metadata_validity (PKT_public_key *pk, PKT_signature *sig, char buf[11]; if (opt.verbose) log_info (_("Note: signature key %s expired %s\n"), - keystr_from_pk(pk), asctimestamp( pk->expiredate ) ); + keystr_from_pk(pk), isotimestamp( pk->expiredate ) ); snprintf (buf, sizeof buf, "%lu",(ulong)pk->expiredate); write_status_text (STATUS_KEYEXPIRED, buf); if (r_expired)