dirmngr: Don't use alloca.
authorNeal H. Walfield <neal@g10code.com>
Tue, 31 Mar 2015 12:48:31 +0000 (14:48 +0200)
committerNeal H. Walfield <neal@g10code.com>
Tue, 31 Mar 2015 12:48:31 +0000 (14:48 +0200)
* dirmngr/ks-engine-ldap.c (ks_ldap_put): Replace use of alloca with
xmalloc and xfree.

--
Signed-off-by: Neal H. Walfield <neal@g10code.com>
dirmngr/ks-engine-ldap.c

index 66e4964..1ce709d 100644 (file)
@@ -1961,7 +1961,7 @@ ks_ldap_put (ctrl_t ctrl, parsed_uri_t uri,
        /* The last line is not \n terminated!  Make a copy so we can
           add a NUL terminator.  */
        {
-         temp = alloca (infolen + 1);
+         temp = xmalloc (infolen + 1);
          memcpy (temp, info, infolen);
          info = temp;
          newline = (char *) info + infolen;
@@ -1978,7 +1978,10 @@ ks_ldap_put (ctrl_t ctrl, parsed_uri_t uri,
       if (! temp)
        assert ((char *) info + infolen - 1 == infoend);
       else
-       assert (infolen == -1);
+       {
+         assert (infolen == -1);
+         xfree (temp);
+       }
     }
 
   modlist_add (&addlist, "objectClass", "pgpKeyInfo");