From: Simon Tatham Date: Thu, 11 Jul 2013 17:24:04 +0000 (+0000) Subject: Fix a mishandling of error returns from makekey() in the SSH-1 private X-Git-Tag: 0.63~87 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=85300e0b15d6245f02bfe177289cde1a9babaeb9;p=PuTTY.git Fix a mishandling of error returns from makekey() in the SSH-1 private key loader. [originally from svn r9905] --- diff --git a/sshpubk.c b/sshpubk.c index b860040d..4db37c2b 100644 --- a/sshpubk.c +++ b/sshpubk.c @@ -67,9 +67,10 @@ static int loadrsakey_main(FILE * fp, struct RSAKey *key, int pub_only, i += 4; /* Now the serious stuff. An ordinary SSH-1 public key. */ - i += makekey(buf + i, len, key, NULL, 1); - if (i < 0) + j = makekey(buf + i, len, key, NULL, 1); + if (j < 0) goto end; /* overran */ + i += j; /* Next, the comment field. */ j = GET_32BIT(buf + i);