summaryrefslogtreecommitdiffstats
path: root/src/hci/commands
diff options
context:
space:
mode:
authorMichael Brown2009-02-17 13:01:47 +0100
committerMichael Brown2009-02-17 13:02:16 +0100
commit6de4db5da089c7926f08dd15164676bc8b88f285 (patch)
tree05354d5d97fdeb8e00ad871996985436c19fde89 /src/hci/commands
parent[settings] Allow store_setting() to access the root settings block (diff)
downloadipxe-6de4db5da089c7926f08dd15164676bc8b88f285.tar.gz
ipxe-6de4db5da089c7926f08dd15164676bc8b88f285.tar.xz
ipxe-6de4db5da089c7926f08dd15164676bc8b88f285.zip
[login] Add "login" command and UI
Diffstat (limited to 'src/hci/commands')
-rw-r--r--src/hci/commands/login_cmd.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/hci/commands/login_cmd.c b/src/hci/commands/login_cmd.c
new file mode 100644
index 000000000..e425247da
--- /dev/null
+++ b/src/hci/commands/login_cmd.c
@@ -0,0 +1,27 @@
+#include <string.h>
+#include <stdio.h>
+#include <gpxe/command.h>
+#include <gpxe/login_ui.h>
+
+static int login_exec ( int argc, char **argv ) {
+ int rc;
+
+ if ( argc > 1 ) {
+ printf ( "Usage: %s\n"
+ "Prompt for login credentials\n", argv[0] );
+ return 1;
+ }
+
+ if ( ( rc = login_ui() ) != 0 ) {
+ printf ( "Could not set credentials: %s\n",
+ strerror ( rc ) );
+ return 1;
+ }
+
+ return 0;
+}
+
+struct command login_command __command = {
+ .name = "login",
+ .exec = login_exec,
+};