summaryrefslogtreecommitdiff
path: root/src/common.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/common.c')
-rw-r--r--src/common.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/common.c b/src/common.c
index 753481741b..a7e784e666 100644
--- a/src/common.c
+++ b/src/common.c
@@ -1138,6 +1138,15 @@ pin_callback(void *user, int attempt, const char *token_url,
getenv_copy(password, sizeof(password), "GNUTLS_PIN");
}
+ if (password[0] == 0 && info != NULL && info->password != NULL && info->ask_pass == 0) {
+ if (strlen(info->password) < sizeof(password)) {
+ strcpy(password, info->password);
+ } else {
+ memcpy(password, info->password, sizeof(password) - 1);
+ password[sizeof(password) - 1] = '\0';
+ }
+ }
+
if (password[0] == 0 && (info == NULL || info->batch == 0 || info->ask_pass != 0)) {
if (token_label && token_label[0] != 0) {
fprintf(stderr, "Token '%s' with URL '%s' ", token_label, token_url);