mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 16:53:55 -06:00
block: rip out all traces of password prompting
Now that qcow & qcow2 are wired up to get encryption keys via the QCryptoSecret object, nothing is relying on the interactive prompting for passwords. All the code related to password prompting can thus be ripped out. Reviewed-by: Alberto Garcia <berto@igalia.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-id: 20170623162419.26068-17-berrange@redhat.com Signed-off-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
parent
23f831c331
commit
788cf9f8c8
10 changed files with 2 additions and 269 deletions
|
@ -414,72 +414,6 @@ void os_mem_prealloc(int fd, char *area, size_t memory, int smp_cpus,
|
|||
}
|
||||
|
||||
|
||||
static struct termios oldtty;
|
||||
|
||||
static void term_exit(void)
|
||||
{
|
||||
tcsetattr(0, TCSANOW, &oldtty);
|
||||
}
|
||||
|
||||
static void term_init(void)
|
||||
{
|
||||
struct termios tty;
|
||||
|
||||
tcgetattr(0, &tty);
|
||||
oldtty = tty;
|
||||
|
||||
tty.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP
|
||||
|INLCR|IGNCR|ICRNL|IXON);
|
||||
tty.c_oflag |= OPOST;
|
||||
tty.c_lflag &= ~(ECHO|ECHONL|ICANON|IEXTEN);
|
||||
tty.c_cflag &= ~(CSIZE|PARENB);
|
||||
tty.c_cflag |= CS8;
|
||||
tty.c_cc[VMIN] = 1;
|
||||
tty.c_cc[VTIME] = 0;
|
||||
|
||||
tcsetattr(0, TCSANOW, &tty);
|
||||
|
||||
atexit(term_exit);
|
||||
}
|
||||
|
||||
int qemu_read_password(char *buf, int buf_size)
|
||||
{
|
||||
uint8_t ch;
|
||||
int i, ret;
|
||||
|
||||
printf("password: ");
|
||||
fflush(stdout);
|
||||
term_init();
|
||||
i = 0;
|
||||
for (;;) {
|
||||
ret = read(0, &ch, 1);
|
||||
if (ret == -1) {
|
||||
if (errno == EAGAIN || errno == EINTR) {
|
||||
continue;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
} else if (ret == 0) {
|
||||
ret = -1;
|
||||
break;
|
||||
} else {
|
||||
if (ch == '\r' ||
|
||||
ch == '\n') {
|
||||
ret = 0;
|
||||
break;
|
||||
}
|
||||
if (i < (buf_size - 1)) {
|
||||
buf[i++] = ch;
|
||||
}
|
||||
}
|
||||
}
|
||||
term_exit();
|
||||
buf[i] = '\0';
|
||||
printf("\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
char *qemu_get_pid_name(pid_t pid)
|
||||
{
|
||||
char *name = NULL;
|
||||
|
|
|
@ -552,30 +552,6 @@ void os_mem_prealloc(int fd, char *area, size_t memory, int smp_cpus,
|
|||
}
|
||||
|
||||
|
||||
/* XXX: put correct support for win32 */
|
||||
int qemu_read_password(char *buf, int buf_size)
|
||||
{
|
||||
int c, i;
|
||||
|
||||
printf("Password: ");
|
||||
fflush(stdout);
|
||||
i = 0;
|
||||
for (;;) {
|
||||
c = getchar();
|
||||
if (c < 0) {
|
||||
buf[i] = '\0';
|
||||
return -1;
|
||||
} else if (c == '\n') {
|
||||
break;
|
||||
} else if (i < (buf_size - 1)) {
|
||||
buf[i++] = c;
|
||||
}
|
||||
}
|
||||
buf[i] = '\0';
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
char *qemu_get_pid_name(pid_t pid)
|
||||
{
|
||||
/* XXX Implement me */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue