5 bool do_netconf_set (int nb, const char **com, struct ngadmin *nga)
8 const struct swi_attr *sa;
14 printf("Usage: netconf set [dhcp yes|no] [ip <ip>] [mask <mask>] [gw <gw>]\n");
18 sa = ngadmin_getCurrentSwitch(nga);
20 printf("must be logged\n");
24 memset(&nc, 0, sizeof(struct net_conf));
26 for (k = 0; k < nb; k += 2) {
27 if (strcasecmp(com[k], "dhcp") == 0) {
28 if (strcasecmp(com[k+1], "yes") == 0) {
30 } else if (strcasecmp(com[k+1], "no") == 0) {
33 printf("Incorrect DHCP value\n");
37 } else if (strcasecmp(com[k], "ip") == 0) {
38 if (inet_aton(com[k+1], &nc.ip) == 0) {
39 printf("Incorrect IP value\n");
43 } else if (strcasecmp(com[k], "mask") == 0) {
44 /* TODO: check if it is a correct mask */
45 if (inet_aton(com[k+1], &nc.netmask) == 0) {
46 printf("Incorrect mask value\n");
50 } else if (strcasecmp(com[k], "gw") == 0) {
51 if (inet_aton(com[k+1], &nc.gw) == 0) {
52 printf("Incorrect gateway value\n");
59 i = ngadmin_setNetConf(nga, &nc);