wincred: accept CRLF on stdin to simplify console usage

The windows credential helper currently only accepts LF on stdin, but bash
and cmd.exe both send CRLF. This prevents interactive use in the console.

Change the stdin parser to optionally accept CRLF.

Signed-off-by: Karsten Blees <blees@dcon.de>
Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
maint
Karsten Blees 2013-01-09 12:49:26 +01:00 committed by Erik Faye-Lund
parent 4dac0679fe
commit 3b12f46ab3
1 changed files with 5 additions and 2 deletions

View File

@ -284,10 +284,13 @@ static void read_credential(void)

while (fgets(buf, sizeof(buf), stdin)) {
char *v;
int len = strlen(buf);
/* strip trailing CR / LF */
while (len && strchr("\r\n", buf[len - 1]))
buf[--len] = 0;

if (!strcmp(buf, "\n"))
if (!*buf)
break;
buf[strlen(buf)-1] = '\0';

v = strchr(buf, '=');
if (!v)