[Pkg-gnupg-commit] [gnupg2] 82/185: agent: Use MAX_PASSPHRASE_LEN (255) also for the loopback.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Mon Aug 7 11:55:23 UTC 2017


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch experimental
in repository gnupg2.

commit 3681ee7dc1e9d8c94fdb046d7be0bbcfeba1cfe9
Author: Werner Koch <wk at gnupg.org>
Date:   Wed Jul 5 11:54:45 2017 +0200

    agent: Use MAX_PASSPHRASE_LEN (255) also for the loopback.
    
    * agent/call-pinentry.c (agent_get_passphrase): Reduce maximum
    passphrase length as conveyed to the loopback to MAX_PASSPHRASE_LEN.
    * agent/genkey.c (agent_ask_new_passphrase): Extend the maximum
    passphrase as conveyed to the loopback to MAX_PASSPHRASE_LEN.
    --
    
    Note that in genkey() max_length is set to MAX_PASSPHRASE_LEN + 1
    because in agent_askpin() decrements that value before conveying it to
    the loopback.
    
    GnuPG-bug-id: 3254
    Signed-off-by: Werner Koch <wk at gnupg.org>
---
 agent/call-pinentry.c | 8 ++++----
 agent/genkey.c        | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/agent/call-pinentry.c b/agent/call-pinentry.c
index 9d8e7f6..cb7997f 100644
--- a/agent/call-pinentry.c
+++ b/agent/call-pinentry.c
@@ -964,8 +964,8 @@ agent_askpin (ctrl_t ctrl,
 	  size_t size;
 
 	  *pininfo->pin = 0; /* Reset the PIN. */
-	  rc = pinentry_loopback(ctrl, "PASSPHRASE", &passphrase, &size,
-		  pininfo->max_length - 1);
+	  rc = pinentry_loopback (ctrl, "PASSPHRASE", &passphrase, &size,
+                                  pininfo->max_length - 1);
 	  if (rc)
 	    return rc;
 
@@ -1192,10 +1192,10 @@ agent_get_passphrase (ctrl_t ctrl,
       if (ctrl->pinentry_mode == PINENTRY_MODE_LOOPBACK)
         {
 	  size_t size;
-	  size_t len = ASSUAN_LINELENGTH/2;
 
 	  return pinentry_loopback (ctrl, "PASSPHRASE",
-				    (unsigned char **)retpass, &size, len);
+				    (unsigned char **)retpass, &size,
+                                    MAX_PASSPHRASE_LEN);
         }
       return gpg_error (GPG_ERR_NO_PIN_ENTRY);
     }
diff --git a/agent/genkey.c b/agent/genkey.c
index 31742a1..a3e37ee 100644
--- a/agent/genkey.c
+++ b/agent/genkey.c
@@ -357,10 +357,10 @@ agent_ask_new_passphrase (ctrl_t ctrl, const char *prompt,
   if (ctrl->pinentry_mode == PINENTRY_MODE_LOOPBACK)
     {
 	size_t size;
-	size_t len = 100;
 	unsigned char *buffer;
 
-	err = pinentry_loopback(ctrl, "NEW_PASSPHRASE", &buffer, &size, len);
+	err = pinentry_loopback (ctrl, "NEW_PASSPHRASE", &buffer, &size,
+                                 MAX_PASSPHRASE_LEN);
 	if (!err)
 	  {
 	    if (size)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gnupg2.git



More information about the Pkg-gnupg-commit mailing list