aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Kibbey <[email protected]>2015-04-17 01:00:30 +0000
committerBen Kibbey <[email protected]>2015-04-17 01:00:30 +0000
commit062eadfa35739e6266118953c6e70ef343eebd73 (patch)
tree0d364efde74e9c0ced31b95f7694e0d98de72ab6
parentAllow --gen-key to inquire a passphrase. (diff)
downloadgnupg-bjk/passphrase-inquire.tar.gz
gnupg-bjk/passphrase-inquire.zip
Inform a user about inquire length limit.bjk/passphrase-inquire
* common/status.h (INQUIRE_MAXLEN): New. * g10/call-agent.c (default_inquire_cb): Send STATUS_INQUIRE_MAXLEN. client when inquiring a passphrase over pinentry-loopback. -- This is to inform a user about the maximum length of a passphrase. The limit is the same that gpg-agent uses.
-rw-r--r--common/status.h4
-rw-r--r--g10/call-agent.c4
2 files changed, 7 insertions, 1 deletions
diff --git a/common/status.h b/common/status.h
index 9219bf4d9..3c78eda08 100644
--- a/common/status.h
+++ b/common/status.h
@@ -125,7 +125,9 @@ enum
STATUS_PINENTRY_LAUNCHED,
STATUS_ERROR,
- STATUS_SUCCESS
+ STATUS_SUCCESS,
+
+ STATUS_INQUIRE_MAXLEN,
};
diff --git a/g10/call-agent.c b/g10/call-agent.c
index 017e91692..e9c6ca82d 100644
--- a/g10/call-agent.c
+++ b/g10/call-agent.c
@@ -177,11 +177,15 @@ default_inq_cb (void *opaque, const char *line)
else
{
char *pw;
+ char buf[32];
if (parm->keyinfo.keyid)
emit_status_need_passphrase (parm->keyinfo.keyid,
parm->keyinfo.mainkeyid,
parm->keyinfo.pubkey_algo);
+
+ snprintf (buf, sizeof (buf), "%u", 100);
+ write_status_text (STATUS_INQUIRE_MAXLEN, buf);
pw = cpr_get_hidden ("passphrase.enter", _("Enter passphrase: "));
cpr_kill_prompt ();
if (*pw == CONTROL_D && !pw[1])