]> git.sur5r.net Git - ngadmin/blob - cli/com_firmware.c
Let commands handle themselves absence of arguments
[ngadmin] / cli / com_firmware.c
1
2 #include "commands.h"
3
4
5 bool do_firmware_show (int argc, const char **argv UNUSED, struct ngadmin *nga)
6 {
7         const struct swi_attr *sa;
8         bool ret = true;
9         
10         
11         if (argc > 0) {
12                 printf("this command takes no argument\n");
13                 ret = false;
14                 goto end;
15         }
16         
17         sa = ngadmin_getCurrentSwitch(nga);
18         if (sa == NULL) {
19                 printf("must be logged\n");
20                 ret = false;
21                 goto end;
22         }
23         
24         puts(sa->firmware);
25         
26 end:
27         
28         return ret;
29 }
30
31
32 bool do_firmware_upgrade (int argc, const char **argv, struct ngadmin *nga)
33 {
34         const struct swi_attr *sa;
35         bool ret = true;
36         int i;
37         
38         
39         if (argc != 1) {
40                 printf("usage: firmware upgrade <file>\n");
41                 ret = false;
42                 goto end;
43         }
44         
45         sa = ngadmin_getCurrentSwitch(nga);
46         if (sa == NULL) {
47                 printf("must be logged\n");
48                 ret = false;
49                 goto end;
50         }
51         
52         i = ngadmin_upgradeFirmware(nga, argv[0]);
53         printErrCode(i);
54         
55 end:
56         
57         return ret;
58 }
59
60