ovsdb: Add support for "enum" constraints.
[openvswitch] / vswitchd / ovs-brcompatd.c
index beaefb2e2d88e19faa4fba1c8b49163eb4dbe3b8..bf571d743a11465ff7a8b4719f8b3f3056e57a74 100644 (file)
@@ -479,6 +479,8 @@ del_port(const struct ovsrec_bridge *br, const char *port_name)
         }
         ovsrec_bridge_set_ports(br, ports, n);
         free(ports);
+
+        ovsrec_port_delete(port_rec);
     }
 }
 
@@ -507,6 +509,9 @@ del_bridge(const struct ovsrec_open_vswitch *ovs, const char *br_name)
     ovsrec_open_vswitch_set_bridges(ovs, bridges, n);
     free(bridges);
 
+    /* Delete the bridge itself. */
+    ovsrec_bridge_delete(br);
+
     VLOG_INFO("delbr %s: success", br_name);
 
     return 0;
@@ -756,7 +761,7 @@ handle_fdb_query_cmd(const struct ovsrec_open_vswitch *ovs,
         struct netdev *netdev;
 
         error = netdev_open_default(iface_name, &netdev);
-        if (netdev) {
+        if (!error) {
             if (!netdev_get_etheraddr(netdev, mac->addr)) {
                 n_local_macs++;
             }