Setting the vlan-id and vlan-raw-device value for vlan devices that follow the dot notaton (interface.vlan) aligns how dot notation vlan devices and vlan devices that use the explicit vlan-id and vlan-raw-device options, available with ifupdown2, are represented in API return values.
Previously the type for both was 'vlan' but only the latter showed more details. Setting these values here should not have any influence on how the interfaces file is being written as these two values are already filtered in __write_etc_network_interfaces for dot notation devices. Signed-off-by: Aaron Lauterer <a.laute...@proxmox.com> --- src/PVE/INotify.pm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/PVE/INotify.pm b/src/PVE/INotify.pm index 2bb87bb..a0281e2 100644 --- a/src/PVE/INotify.pm +++ b/src/PVE/INotify.pm @@ -1077,10 +1077,14 @@ sub __read_etc_network_interfaces { $ifaces->{$1}->{exists} = 0; $d->{exists} = 0; } - } elsif ($iface =~ m/^(\S+)\.\d+$/ || $d->{'vlan-raw-device'}) { + } elsif ($iface =~ m/^(\S+)\.(\d+)$/ || $d->{'vlan-raw-device'}) { $d->{type} = 'vlan'; - my $raw_iface = $d->{'vlan-raw-device'} ? $d->{'vlan-raw-device'} : $1; + $d->{'vlan-raw-device'} = $1 if $1 && !$d->{'vlan-raw-device'}; + $d->{'vlan-id'} = $2 if $2; + + my $raw_iface = $d->{'vlan-raw-device'}; + if (defined ($ifaces->{$raw_iface})) { $d->{exists} = $ifaces->{$raw_iface}->{exists}; } else { -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel