swconfig: Bugfix switch_port uci option parsing
authorBen Kelly <ben@benjii.net>
Mon, 20 Feb 2017 12:04:30 +0000 (14:04 +0200)
committerFelix Fietkau <nbd@nbd.name>
Thu, 23 Feb 2017 15:52:17 +0000 (16:52 +0100)
When not defining 'device' or 'vlan' in relevant switch_port uci
sections, behaviour is inconsistent due to *devn, *port and *vlan
pointers not being zero initialized.

Signed-off-by: Ben Kelly <ben@benjii.net>
package/network/config/swconfig/src/uci.c

index b541b71..bf76bd3 100644 (file)
@@ -165,7 +165,7 @@ found:
                s = uci_to_section(e);
 
                if (!strcmp(s->type, "switch_port")) {
-                       char *devn, *port, *port_err = NULL;
+                       char *devn = NULL, *port = NULL, *port_err = NULL;
                        int port_n;
 
                        uci_foreach_element(&s->options, os) {
@@ -190,7 +190,7 @@ found:
 
                        swlib_map_settings(dev, SWLIB_ATTR_GROUP_PORT, port_n, s);
                } else if (!strcmp(s->type, "switch_vlan")) {
-                       char *devn, *vlan, *vlan_err = NULL;
+                       char *devn = NULL, *vlan = NULL, *vlan_err = NULL;
                        int vlan_n;
 
                        uci_foreach_element(&s->options, os) {