diff options
author | Werner Koch <wk@gnupg.org> | 2017-02-16 10:19:59 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2017-02-16 10:33:26 +0100 |
commit | aef60abe6a1772e18634984a94bd70f57d57ccdd (patch) | |
tree | 55785b8304265c76edd3a5ad3f6bbab6993b40ba /dirmngr/certcache.c | |
parent | scd: Minor fixes to silence compiler warnings. (diff) | |
download | gnupg2-aef60abe6a1772e18634984a94bd70f57d57ccdd.tar.xz gnupg2-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 <wk@gnupg.org>
Diffstat (limited to 'dirmngr/certcache.c')
-rw-r--r-- | dirmngr/certcache.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/dirmngr/certcache.c b/dirmngr/certcache.c index ad85d9912..10757c890 100644 --- a/dirmngr/certcache.c +++ b/dirmngr/certcache.c @@ -1004,15 +1004,15 @@ find_cert_bysn (ctrl_t ctrl, const char *issuer_dn, ksba_sexp_t serialno) log_error ("serial_hex() failed\n"); return NULL; } - buf = xtrymalloc (1 + strlen (hexsn) + 1 + strlen (issuer_dn) + 1); + buf = strconcat ("#", hexsn, "/", issuer_dn, NULL); if (!buf) { log_error ("can't allocate enough memory: %s\n", strerror (errno)); xfree (hexsn); return NULL; } - strcpy (stpcpy (stpcpy (stpcpy (buf, "#"), hexsn),"/"), issuer_dn); xfree (hexsn); + cert = get_cert_local (ctrl, buf); xfree (buf); if (cert) @@ -1169,13 +1169,12 @@ find_cert_bysubject (ctrl_t ctrl, const char *subject_dn, ksba_sexp_t keyid) search is done. */ char *buf; - buf = xtrymalloc (1 + strlen (subject_dn) + 1); + buf = strconcat ("/", subject_dn, NULL); if (!buf) { log_error ("can't allocate enough memory: %s\n", strerror (errno)); return NULL; } - strcpy (stpcpy (buf, "/"), subject_dn); cert = get_cert_local (ctrl, buf); xfree (buf); } |