From: Markus Armbruster Date: Sun, 27 Dec 2020 09:06:08 +0000 (+0100) Subject: client: New get_password() X-Git-Tag: v4.4.1~64 X-Git-Url: http://git.pond.sub.org/?p=empserver;a=commitdiff_plain;h=f7ae50261fc3307a192d8670e5127fc31d130df3 client: New get_password() I'm going to drop use of getpass(). As a first step, weaken the bond by hiding it in a separate function. Signed-off-by: Markus Armbruster --- diff --git a/src/client/login.c b/src/client/login.c index 61fe62f69..6707bc294 100644 --- a/src/client/login.c +++ b/src/client/login.c @@ -29,7 +29,7 @@ * Known contributors to this file: * Dave Pare, 1989 * Steve McClure, 1998 - * Markus Armbruster, 2004-2009 + * Markus Armbruster, 2004-2020 */ #include @@ -45,11 +45,12 @@ #include "misc.h" #include "proto.h" -#ifndef HAVE_GETPASS -#define getpass ersatz_getpass static char * -ersatz_getpass(char *prompt) +get_password(const char *prompt) { +#ifdef HAVE_GETPASS + return getpass(prompt); +#else static char buf[128]; char *p; size_t len; @@ -75,8 +76,8 @@ ersatz_getpass(char *prompt) if (p[len - 1] == '\n') p[len - 1] = 0; return p; +#endif /* !HAVE_GETPASS */ } -#endif int login(int s, char *uname, char *cname, char *cpass, @@ -123,7 +124,7 @@ login(int s, char *uname, char *cname, char *cpass, return 0; } if (cpass == NULL) { - cpass = getpass("Your name? "); + cpass = get_password("Your name? "); if (cpass == NULL || *cpass == 0) return 0; }