diff options
author | Werner Koch <[email protected]> | 2017-02-16 09:19:59 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2017-02-16 09:33:26 +0000 |
commit | aef60abe6a1772e18634984a94bd70f57d57ccdd (patch) | |
tree | 55785b8304265c76edd3a5ad3f6bbab6993b40ba /dirmngr/ldap.c | |
parent | scd: Minor fixes to silence compiler warnings. (diff) | |
download | gnupg-aef60abe6a1772e18634984a94bd70f57d57ccdd.tar.gz gnupg-aef60abe6a1772e18634984a94bd70f57d57ccdd.zip |
dirmngr: Replace stpcpy chains by strconcat.
* dirmngr/certcache.c (find_cert_bysn): Use strconcat.
(find_cert_bysubject): Ditto.
* dirmngr/http.c (store_header): Ditto.
* dirmngr/ldap.c (make_url): Ditto.
* dirmngr/server.c (get_cert_local_ski): Ditto.
(do_get_cert_local): Use xstrconcat.
--
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'dirmngr/ldap.c')
-rw-r--r-- | dirmngr/ldap.c | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/dirmngr/ldap.c b/dirmngr/ldap.c index 20cbbd8fc..a037f5d69 100644 --- a/dirmngr/ldap.c +++ b/dirmngr/ldap.c @@ -445,26 +445,16 @@ make_url (char **url, const char *dn, const char *filter) xfree (u_dn); return err; } - *url = malloc ( 8 + strlen (u_dn) - + 1 + strlen (attrs) - + 5 + strlen (u_filter) + 1 ); + + *url = strconcat ("ldap:///", u_dn, "?", attrs, "?sub?", u_filter, NULL); if (!*url) - { - err = gpg_error_from_errno (errno); - xfree (u_dn); - xfree (u_filter); - return err; - } + err = gpg_error_from_syserror (); + else + err = 0; - stpcpy (stpcpy (stpcpy (stpcpy (stpcpy (stpcpy (*url, "ldap:///"), - u_dn), - "?"), - attrs), - "?sub?"), - u_filter); xfree (u_dn); xfree (u_filter); - return 0; + return err; } |