aboutsummaryrefslogtreecommitdiffstats
path: root/tools/gpg-connect-agent.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2014-03-18 15:49:38 +0000
committerWerner Koch <[email protected]>2014-03-18 15:49:38 +0000
commit6376227a31b3076321ce16ad626b333057bda53d (patch)
treeb2e3017532364f577862378226ba07b01a1ce2a9 /tools/gpg-connect-agent.c
parentdirmngr: Resurrect hosts in the HKP hosttable. (diff)
downloadgnupg-6376227a31b3076321ce16ad626b333057bda53d.tar.gz
gnupg-6376227a31b3076321ce16ad626b333057bda53d.zip
tools: Fix NULL deref in gpg-connect-agent.
* tools/gpg-connect-agent.c (handle_inquire): Do not pass NULL to strlen.
Diffstat (limited to 'tools/gpg-connect-agent.c')
-rw-r--r--tools/gpg-connect-agent.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/gpg-connect-agent.c b/tools/gpg-connect-agent.c
index 42e315ce6..81e981b2c 100644
--- a/tools/gpg-connect-agent.c
+++ b/tools/gpg-connect-agent.c
@@ -1936,7 +1936,10 @@ handle_inquire (assuan_context_t ctx, char *line)
if (d->is_var)
{
char *tmpvalue = get_var_ext (d->file);
- rc = assuan_send_data (ctx, tmpvalue, strlen (tmpvalue));
+ if (tmpvalue)
+ rc = assuan_send_data (ctx, tmpvalue, strlen (tmpvalue));
+ else
+ rc = assuan_send_data (ctx, "", 0);
xfree (tmpvalue);
if (rc)
log_error ("sending data back failed: %s\n", gpg_strerror (rc) );