]> git.proxmox.com Git - pve-common.git/blobdiff - src/PVE/INotify.pm
createSchema: include type property
[pve-common.git] / src / PVE / INotify.pm
index 564814e819b038d965ac9c4dfa0b91f527f5d16f..22f01d14c9c186c94c937edc93e0ae80c860f333 100644 (file)
@@ -874,6 +874,8 @@ sub __read_etc_network_interfaces {
                        }
                    } elsif ($id eq 'bridge_fd') {
                        $d->{$id} = $value;
+                   } elsif ($id eq 'bridge_vlan_aware') {
+                       $d->{$id} = 1;
                    } elsif ($id eq 'bond_miimon') {
                        $d->{$id} = $value;
                    } elsif ($id eq 'bond_xmit_hash_policy') {
@@ -1059,6 +1061,11 @@ sub __interface_to_string {
        $v = defined($d->{bridge_fd}) ? $d->{bridge_fd} : 0;
        $raw .= "\tbridge_fd $v\n";
        $done->{bridge_fd} = 1;
+
+       if( defined($d->{bridge_vlan_aware})) {
+           $raw .= "\tbridge_vlan_aware yes\n";
+       }
+       $done->{bridge_vlan_aware} = 1;
     
     } elsif ($d->{type} eq 'bond') {
 
@@ -1216,6 +1223,7 @@ sub __write_etc_network_interfaces {
                my $n = $ifaces->{$p};
                die "OVS bridge '$iface' - unable to find port '$p'\n"
                    if !$n;
+               $n->{autostart} = 0;
                if ($n->{type} eq 'eth') {
                    $n->{type} = 'OVSPort';
                    $n->{ovs_bridge} = $iface;              
@@ -1229,6 +1237,19 @@ sub __write_etc_network_interfaces {
        }
     }
 
+    # Remove autostart from linux bridge ports
+    foreach my $iface (keys %$ifaces) {
+       my $d = $ifaces->{$iface};
+       if ($d->{type} eq 'bridge' && $d->{bridge_ports}) {
+           foreach my $p (split (/\s+/, $d->{bridge_ports})) {
+               my $n = $ifaces->{$p};
+               die "bridge '$iface' - unable to find port '$p'\n"
+                   if !$n;
+               $n->{autostart} = 0;
+           }
+       }
+    }
+
     # check OVS bond ports
     foreach my $iface (keys %$ifaces) {
        my $d = $ifaces->{$iface};