diff options
author | 2015-08-28 09:58:54 +0800 | |
---|---|---|
committer | 2015-09-01 12:44:00 +0800 | |
commit | e44e3482bdb4d0ebde2d8b41830ac2cdb07948fb (patch) | |
tree | 66b09f592c55df2878107a468a91d21506104d3f /qemu/roms/ipxe/src/util/mucurses_test.c | |
parent | 9ca8dbcc65cfc63d6f5ef3312a33184e1d726e00 (diff) |
Add qemu 2.4.0
Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5
Signed-off-by: Yang Zhang <yang.z.zhang@intel.com>
Diffstat (limited to 'qemu/roms/ipxe/src/util/mucurses_test.c')
-rw-r--r-- | qemu/roms/ipxe/src/util/mucurses_test.c | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/qemu/roms/ipxe/src/util/mucurses_test.c b/qemu/roms/ipxe/src/util/mucurses_test.c new file mode 100644 index 000000000..586562df5 --- /dev/null +++ b/qemu/roms/ipxe/src/util/mucurses_test.c @@ -0,0 +1,63 @@ +#include "../include/curses.h" +#include <string.h> +#include <unistd.h> +#include <stdlib.h> + +void get_iscsi_chap_secret( char * ); +void mdelay( int msecs ); + +int main ( void ) { + char secret[16]; + initscr(); + echo(); + werase(stdscr); + box( stdscr, '|', '-' ); + get_iscsi_chap_secret(secret); + + mvwprintw( stdscr, 3, 5, "password is \"%s\"", secret ); + mdelay(2500); + + stdscr->scr->exit(stdscr->scr); + + return 0; +} + +void get_iscsi_chap_secret( char *sec ) { + char *title = "Set new iSCSI CHAP secret", + *msg = "Configure the iSCSI access secret", + pw1[17], pw2[17]; + WINDOW *secret; + + secret = newwin( stdscr->height / 2, + stdscr->width / 2, + stdscr->height / 4, + stdscr->width / 4 ); + + wborder( secret, '|', '|', '-', '-', '+', '+', '+', '+' ); + mvwprintw( secret, 1, 2, "%s", title ); + mvwhline( secret, 2, 1, '-' | secret->attrs, secret->width - 2 ); + mvwprintw( secret, 4, 2, "%s", msg ); + mvwprintw( secret, 6, 3, "secret" ); + mvwprintw( secret, 8, 3, "confirm" ); + start: + mvwhline( secret, 6, 12, '_' | secret->attrs, 16 ); + mvwhline( secret, 8, 12, '_' | secret->attrs, 16 ); + + wmove( secret, 6, 12 ); + wgetnstr( secret, pw1, 16 ); + wmove( secret, 8, 12 ); + wgetnstr( secret, pw2, 16 ); + + if ( strcmp( pw1, pw2 ) == 0 ) { + strcpy( sec, pw1 ); + werase( secret ); + } + else { + mvwprintw( secret, 10, 3, "Passwords do not match" ); + goto start; + } +} + +void mdelay ( int msecs ) { + usleep( msecs * 1000 ); +} |