1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-03-09 22:21:12 +01:00

scd: Fix status info encoding.

* scd/command.c (send_status_info): Do percent plus encoding correctly.

--
Backport of master commit: 4ee4d0b02172cf56d9582bb99e32a65c75315b25

Reported-by: David Härdeman <david@hardeman.nu>
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
NIIBE Yutaka 2016-11-14 10:25:43 +09:00
parent 88556386a6
commit 354f8119bc

View File

@ -2103,7 +2103,8 @@ send_status_info (ctrl_t ctrl, const char *keyword, ...)
} }
for ( ; valuelen && n < DIM (buf)-2; n++, valuelen--, value++) for ( ; valuelen && n < DIM (buf)-2; n++, valuelen--, value++)
{ {
if (*value < ' ' || *value == '+') if (*value == '+' || *value == '\"' || *value == '%'
|| *value < ' ')
{ {
sprintf (p, "%%%02X", *value); sprintf (p, "%%%02X", *value);
p += 3; p += 3;