aboutsummaryrefslogtreecommitdiffstats
path: root/src/genkey.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/genkey.c')
-rw-r--r--src/genkey.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/genkey.c b/src/genkey.c
index 0108aab0..e00d0475 100644
--- a/src/genkey.c
+++ b/src/genkey.c
@@ -223,9 +223,13 @@ get_key_parameter (const char *parms, gpgme_data_t *key_parameter)
return gpg_error (GPG_ERR_INV_VALUE);
endtag = strstr (content, "</GnupgKeyParms>");
+ if (!endtag)
+ endtag = content + strlen (content);
+
/* FIXME: Check that there are no control statements inside. */
- while (content[0] == '\n'
- || (content[0] == '\r' && content[1] == '\n'))
+ while (content < endtag
+ && (content[0] == '\n'
+ || (content[0] == '\r' && content[1] == '\n')))
content++;
return gpgme_data_new_from_mem (key_parameter, content,