]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: memleak in error path
authordjm@openbsd.org <djm@openbsd.org>
Mon, 25 Nov 2019 00:38:17 +0000 (00:38 +0000)
committerDamien Miller <djm@mindrot.org>
Mon, 25 Nov 2019 01:22:43 +0000 (12:22 +1100)
OpenBSD-Commit-ID: 93488431bf02dde85a854429362695d2d43d9112

ssh-ecdsa-sk.c

index 0d4d01cac988a21dbba66ba78539952796bf9c96..f33fac7146be047e8059864db90f6608bb129538 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-ecdsa-sk.c,v 1.2 2019/11/19 22:23:19 djm Exp $ */
+/* $OpenBSD: ssh-ecdsa-sk.c,v 1.3 2019/11/25 00:38:17 djm Exp $ */
 /*
  * Copyright (c) 2000 Markus Friedl.  All rights reserved.
  * Copyright (c) 2010 Damien Miller.  All rights reserved.
@@ -124,8 +124,10 @@ ssh_ecdsa_sk_verify(const struct sshkey *key,
        }
 
        /* Reconstruct data that was supposedly signed */
-       if ((original_signed = sshbuf_new()) == NULL)
-               return SSH_ERR_ALLOC_FAIL;
+       if ((original_signed = sshbuf_new()) == NULL) {
+               ret = SSH_ERR_ALLOC_FAIL;
+               goto out;
+       }
        if ((ret = ssh_digest_memory(SSH_DIGEST_SHA256, data, datalen,
            msghash, sizeof(msghash))) != 0)
                goto out;