mirror of git://anongit.mindrot.org/openssh.git
upstream: allow WAYLAND_DISPLAY to enable SSH_ASKPASS
From dkg via GHPR479; ok dtucker@ OpenBSD-Commit-ID: 1ac1f9c45da44eabbae89375393c662349239257
This commit is contained in:
parent
7844705b03
commit
697359be9c
|
@ -1,4 +1,4 @@
|
||||||
/* $OpenBSD: readpass.c,v 1.70 2022/05/27 04:27:49 dtucker Exp $ */
|
/* $OpenBSD: readpass.c,v 1.71 2024/03/30 04:27:44 djm Exp $ */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2001 Markus Friedl. All rights reserved.
|
* Copyright (c) 2001 Markus Friedl. All rights reserved.
|
||||||
*
|
*
|
||||||
|
@ -127,8 +127,9 @@ read_passphrase(const char *prompt, int flags)
|
||||||
const char *askpass_hint = NULL;
|
const char *askpass_hint = NULL;
|
||||||
const char *s;
|
const char *s;
|
||||||
|
|
||||||
if ((s = getenv("DISPLAY")) != NULL)
|
if (((s = getenv("DISPLAY")) != NULL && *s != '\0') ||
|
||||||
allow_askpass = *s != '\0';
|
((s = getenv("WAYLAND_DISPLAY")) != NULL && *s != '\0'))
|
||||||
|
allow_askpass = 1;
|
||||||
if ((s = getenv(SSH_ASKPASS_REQUIRE_ENV)) != NULL) {
|
if ((s = getenv(SSH_ASKPASS_REQUIRE_ENV)) != NULL) {
|
||||||
if (strcasecmp(s, "force") == 0) {
|
if (strcasecmp(s, "force") == 0) {
|
||||||
use_askpass = 1;
|
use_askpass = 1;
|
||||||
|
@ -261,7 +262,7 @@ notify_start(int force_askpass, const char *fmt, ...)
|
||||||
debug3_f("cannot notify: no askpass");
|
debug3_f("cannot notify: no askpass");
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
if (getenv("DISPLAY") == NULL &&
|
if (getenv("DISPLAY") == NULL && getenv("WAYLAND_DISPLAY") == NULL &&
|
||||||
((s = getenv(SSH_ASKPASS_REQUIRE_ENV)) == NULL ||
|
((s = getenv(SSH_ASKPASS_REQUIRE_ENV)) == NULL ||
|
||||||
strcmp(s, "force") != 0)) {
|
strcmp(s, "force") != 0)) {
|
||||||
debug3_f("cannot notify: no display");
|
debug3_f("cannot notify: no display");
|
||||||
|
|
Loading…
Reference in New Issue