Make sure getpass() is available
It's not on Android for example.
This commit is contained in:
parent
95d13fcc3f
commit
b2b54bd71d
|
@ -72,7 +72,7 @@ static shared_key_t* callback_shared(private_cmd_creds_t *this,
|
|||
id_match_t *match_me, id_match_t *match_other)
|
||||
{
|
||||
shared_key_t *shared;
|
||||
char *label, *pwd;
|
||||
char *label, *pwd = NULL;
|
||||
|
||||
if (type == this->prompted)
|
||||
{
|
||||
|
@ -95,7 +95,9 @@ static shared_key_t* callback_shared(private_cmd_creds_t *this,
|
|||
default:
|
||||
return NULL;
|
||||
}
|
||||
#ifdef HAVE_GETPASS
|
||||
pwd = getpass(label);
|
||||
#endif
|
||||
if (!pwd || strlen(pwd) == 0)
|
||||
{
|
||||
return NULL;
|
||||
|
|
|
@ -165,7 +165,7 @@ static shared_key_t* cb(void *data, shared_key_type_t type,
|
|||
identification_t *me, identification_t *other,
|
||||
id_match_t *match_me, id_match_t *match_other)
|
||||
{
|
||||
char buf[64], *label, *secret;
|
||||
char buf[64], *label, *secret = NULL;
|
||||
|
||||
switch (type)
|
||||
{
|
||||
|
@ -179,7 +179,9 @@ static shared_key_t* cb(void *data, shared_key_type_t type,
|
|||
return NULL;
|
||||
}
|
||||
snprintf(buf, sizeof(buf), "%s: ", label);
|
||||
#ifdef HAVE_GETPASS
|
||||
secret = getpass(buf);
|
||||
#endif
|
||||
if (secret)
|
||||
{
|
||||
if (match_me)
|
||||
|
|
|
@ -144,13 +144,15 @@ CALLBACK(password_cb, shared_key_t*,
|
|||
identification_t *me, identification_t *other,
|
||||
id_match_t *match_me, id_match_t *match_other)
|
||||
{
|
||||
char *pwd;
|
||||
char *pwd = NULL;
|
||||
|
||||
if (type != SHARED_PRIVATE_KEY_PASS)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
#ifdef HAVE_GETPASS
|
||||
pwd = getpass(prompt);
|
||||
#endif
|
||||
if (!pwd || strlen(pwd) == 0)
|
||||
{
|
||||
return NULL;
|
||||
|
|
Loading…
Reference in New Issue