agent: Replace some sprintf.
authorWerner Koch <wk@gnupg.org>
Tue, 2 Dec 2014 13:13:53 +0000 (14:13 +0100)
committerWerner Koch <wk@gnupg.org>
Tue, 2 Dec 2014 13:13:53 +0000 (14:13 +0100)
* agent/call-scd.c (agent_card_pksign): Replace sprintf by bin2hex.
* agent/command-ssh.c (ssh_identity_register): Ditto.
* agent/pkdecrypt.c (agent_pkdecrypt): Replace sprintf by
put_membuf_printf.

Signed-off-by: Werner Koch <wk@gnupg.org>
agent/call-scd.c
agent/command-ssh.c
agent/pkdecrypt.c

index 289b2d9..ade7ef1 100644 (file)
@@ -822,8 +822,8 @@ agent_card_pksign (ctrl_t ctrl,
                    const unsigned char *indata, size_t indatalen,
                    unsigned char **r_buf, size_t *r_buflen)
 {
-  int rc, i;
-  char *p, line[ASSUAN_LINELENGTH];
+  int rc;
+  char line[ASSUAN_LINELENGTH];
   membuf_t data;
   struct inq_needpin_s inqparm;
 
@@ -835,10 +835,8 @@ agent_card_pksign (ctrl_t ctrl,
   if (indatalen*2 + 50 > DIM(line))
     return unlock_scd (ctrl, gpg_error (GPG_ERR_GENERAL));
 
-  sprintf (line, "SETDATA ");
-  p = line + strlen (line);
-  for (i=0; i < indatalen ; i++, p += 2 )
-    sprintf (p, "%02X", indata[i]);
+  bin2hex (indata, indatalen, stpcpy (line, "SETDATA "));
+
   rc = assuan_transact (ctrl->scd_local->ctx, line,
                         NULL, NULL, NULL, NULL, NULL, NULL);
   if (rc)
index 493011c..2d00512 100644 (file)
@@ -3063,7 +3063,6 @@ ssh_identity_register (ctrl_t ctrl, ssh_key_type_spec_t *spec,
   char *comment = NULL;
   char *key_fpr = NULL;
   const char *initial_errtext = NULL;
-  unsigned int i;
   struct pin_entry_info_s *pi = NULL, *pi2;
 
   err = ssh_key_grip (key, key_grip_raw);
@@ -3139,9 +3138,7 @@ ssh_identity_register (ctrl_t ctrl, ssh_key_type_spec_t *spec,
     goto out;
 
   /* Cache this passphrase. */
-  for (i = 0; i < 20; i++)
-    sprintf (key_grip + 2 * i, "%02X", key_grip_raw[i]);
-
+  bin2hex (key_grip_raw, 20, key_grip);
   err = agent_put_cache (key_grip, CACHE_MODE_SSH, pi->pin, ttl);
   if (err)
     goto out;
index 945de3c..8c09b8c 100644 (file)
@@ -94,14 +94,9 @@ agent_pkdecrypt (ctrl_t ctrl, const char *desc_text,
           goto leave;
         }
 
-      {
-        char tmpbuf[60];
-
-        sprintf (tmpbuf, "(5:value%u:", (unsigned int)len);
-        put_membuf (outbuf, tmpbuf, strlen (tmpbuf));
-        put_membuf (outbuf, buf, len);
-        put_membuf (outbuf, ")", 2);
-      }
+      put_membuf_printf (outbuf, "(5:value%u:", (unsigned int)len);
+      put_membuf (outbuf, buf, len);
+      put_membuf (outbuf, ")", 2);
     }
   else
     { /* No smartcard, but a private key */