When an async operation dies, orphan its children.
[people/xl0/gpxe.git] / src / hci / commands / nvo_cmd.c
index 0ea7d86..91c1320 100644 (file)
@@ -9,8 +9,6 @@
 #include <gpxe/settings.h>
 #include <gpxe/command.h>
 
-void nvo_cmd_req() {}
-
 extern struct nvo_block *ugly_nvo_hack;
 
 static int show_exec ( int argc, char **argv ) {
@@ -29,8 +27,8 @@ static int show_exec ( int argc, char **argv ) {
        }
 
        dummy_context.options = ugly_nvo_hack->options;
-       if ( ( rc = show_setting ( &dummy_context, argv[1], buf,
-                                  sizeof ( buf ) ) ) != 0 ) {
+       if ( ( rc = show_named_setting ( &dummy_context, argv[1], buf,
+                                        sizeof ( buf ) ) ) != 0 ) {
                printf ( "Could not find \"%s\": %s\n",
                         argv[1], strerror ( -rc ) );
                return 1;
@@ -40,11 +38,6 @@ static int show_exec ( int argc, char **argv ) {
        return 0;
 }
 
-struct command show_command __command = {
-       .name = "show",
-       .exec = show_exec,
-};
-
 static int set_exec ( int argc, char **argv ) {
        struct config_context dummy_context;
        int rc;
@@ -61,7 +54,8 @@ static int set_exec ( int argc, char **argv ) {
        }
 
        dummy_context.options = ugly_nvo_hack->options;
-       if ( ( rc = set_setting ( &dummy_context, argv[1], argv[2] ) ) != 0 ) {
+       if ( ( rc = set_named_setting ( &dummy_context, argv[1],
+                                       argv[2] ) ) != 0 ) {
                printf ( "Could not set \"%s\"=\"%s\": %s\n",
                         argv[1], argv[2], strerror ( -rc ) );
                return 1;
@@ -75,11 +69,6 @@ static int set_exec ( int argc, char **argv ) {
        return 0;
 }
 
-struct command set_command __command = {
-       .name = "set",
-       .exec = set_exec,
-};
-
 static int clear_exec ( int argc, char **argv ) {
        struct config_context dummy_context;
        int rc;
@@ -96,7 +85,7 @@ static int clear_exec ( int argc, char **argv ) {
        }
 
        dummy_context.options = ugly_nvo_hack->options;
-       if ( ( rc = clear_setting ( &dummy_context, argv[1] ) ) != 0 ) {
+       if ( ( rc = clear_named_setting ( &dummy_context, argv[1] ) ) != 0 ) {
                printf ( "Could not clear \"%s\": %s\n",
                         argv[1], strerror ( -rc ) );
                return 1;
@@ -105,7 +94,17 @@ static int clear_exec ( int argc, char **argv ) {
        return 0;
 }
 
-struct command clear_command __command = {
-       .name = "clear",
-       .exec = clear_exec,
+struct command nvo_commands[] __command = {
+       {
+               .name = "show",
+               .exec = show_exec,
+       },
+       {
+               .name = "set",
+               .exec = set_exec,
+       },      
+       {
+               .name = "clear",
+               .exec = clear_exec,
+       },
 };