From fd973ee1c18aa8fe764e09ba4dff589309b2d78d Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Sat, 21 May 2016 11:06:24 +0200 Subject: [PATCH] gpg: Fix the TOFU_STATS_LONG status. * g10/tofu.c (show_statistics): Print TOFU STATS with formatting characters. -- We better leave the non-breaking space character in the status messages so that the caller can make use of them. Signed-off-by: Werner Koch --- doc/DETAILS | 6 +++--- g10/tofu.c | 11 +++++++---- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/doc/DETAILS b/doc/DETAILS index 271000749..59f8d5619 100644 --- a/doc/DETAILS +++ b/doc/DETAILS @@ -688,7 +688,7 @@ pkd:0:1024:B665B1435F4C2 .... FF26ABB: This status identifies the key and the userid for all following Tofu information. The fingerprint is the fingerprint of the - primary key and the mbox is in general the mailbox part of the + primary key and the mbox is in general the addr-spec part of the userid encoded in UTF-8 and percent escaped. *** TOFU_STATS 0 [ [ ]] @@ -730,8 +730,8 @@ pkd:0:1024:B665B1435F4C2 .... FF26ABB: *** PKA_TRUST_ This is is one: - - PKA_TRUST_GOOD - - PKA_TRUST_BAD + - PKA_TRUST_GOOD + - PKA_TRUST_BAD Depending on the outcome of the PKA check one of the above status codes is emitted in addition to a =TRUST_*= status. diff --git a/g10/tofu.c b/g10/tofu.c index e591aa58f..b73ad938b 100644 --- a/g10/tofu.c +++ b/g10/tofu.c @@ -2101,7 +2101,7 @@ get_trust (struct dbs *dbs, const char *fingerprint, const char *email, /* TRANSLATORS: Please translate the text found in the source file below. We don't directly internationalize that text so that we can tweak it without breaking translations. */ - const char *text = _("TOFU detected a binding conflict"); + char *text = _("TOFU detected a binding conflict"); char *textbuf; if (strcmp (text, "TOFU detected a binding conflict") == 0) /* No translation. Use the English text. */ @@ -2542,15 +2542,18 @@ show_statistics (struct dbs *dbs, const char *fingerprint, log_fatal ("error snatching memory stream\n"); msg = format_text (tmpmsg, 0, 72, 80); es_free (tmpmsg); - for (p=msg; *p; p++) - if (*p == '~') - *p = ' '; /* Print a status line but suppress the trailing LF. * Spaces are not percent escaped. */ if (*msg) write_status_buffer (STATUS_TOFU_STATS_LONG, msg, strlen (msg)-1, -1); + + /* Remove the non-breaking space markers. */ + for (p=msg; *p; p++) + if (*p == '~') + *p = ' '; + } log_string (GPGRT_LOG_INFO, msg);