Allow spaces in passwords, #93

This commit is contained in:
Håkan Kvist 2010-11-25 17:48:50 +00:00 committed by Erik Ekman
parent 0a968a5144
commit 9c3343e6ac
2 changed files with 4 additions and 2 deletions

View File

@ -31,6 +31,8 @@ CHANGES:
- Resolve client nameserver argument if given as hostname, fixes #82. - Resolve client nameserver argument if given as hostname, fixes #82.
- Open log before chroot, fixes #86: logging on FreeBSD. - Open log before chroot, fixes #86: logging on FreeBSD.
- Fix DNS tunneling bug caused by uninitialized variable, #94 - Fix DNS tunneling bug caused by uninitialized variable, #94
- Handle spaces when entering password interactively, fixes #93.
Patch by Hagar.
2009-06-01: 0.5.2 "WifiFree" 2009-06-01: 0.5.2 "WifiFree"
- Fixed client segfault on OS X, #57 - Fixed client segfault on OS X, #57

View File

@ -219,7 +219,7 @@ do_detach()
void void
read_password(char *buf, size_t len) read_password(char *buf, size_t len)
{ {
char pwd[80]; char pwd[80] = {0};
#ifndef WINDOWS32 #ifndef WINDOWS32
struct termios old; struct termios old;
struct termios tp; struct termios tp;
@ -236,7 +236,7 @@ read_password(char *buf, size_t len)
fprintf(stderr, "Enter password: "); fprintf(stderr, "Enter password: ");
fflush(stderr); fflush(stderr);
#ifndef WINDOWS32 #ifndef WINDOWS32
scanf("%79s", pwd); fscanf(stdin, "%79[^\n]", pwd);
#else #else
for (i = 0; i < sizeof(pwd); i++) { for (i = 0; i < sizeof(pwd); i++) {
pwd[i] = getch(); pwd[i] = getch();