[pve-devel] [PATCH common] Fix #2711: inotify: Allow 'v' as VLAN separator
Fabian Grünbichler
f.gruenbichler at proxmox.com
Wed Apr 14 13:26:00 CEST 2021
On April 14, 2021 11:53 am, Dominic Jäger wrote:
> VLANs with a name like vmbr0v5 had type UNKNOWN unless vlan-raw-device was set.
> This way we return type VLAN for them as we do for vmbr0.5
as indicated in the corresponding bug - vmbr0v5 is not a VLAN device,
but a bridge with a VLAN device as port. this patch is thus going in the
wrong direction ;)
>
> Signed-off-by: Dominic Jäger <d.jaeger at proxmox.com>
> ---
> src/PVE/INotify.pm | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/PVE/INotify.pm b/src/PVE/INotify.pm
> index 2bb87bb..adcc91a 100644
> --- a/src/PVE/INotify.pm
> +++ b/src/PVE/INotify.pm
> @@ -27,6 +27,8 @@ use base 'Exporter';
>
> our @EXPORT_OK = qw(read_file write_file register_file);
>
> +my $VLAN_RE = qr!^(\S+)[v\.](\d+)$!;
> +
> my $ccache;
> my $ccachemap;
> my $ccacheregex;
> @@ -1077,7 +1079,7 @@ sub __read_etc_network_interfaces {
> $ifaces->{$1}->{exists} = 0;
> $d->{exists} = 0;
> }
> - } elsif ($iface =~ m/^(\S+)\.\d+$/ || $d->{'vlan-raw-device'}) {
> + } elsif ($iface =~ $VLAN_RE || $d->{'vlan-raw-device'}) {
> $d->{type} = 'vlan';
>
> my $raw_iface = $d->{'vlan-raw-device'} ? $d->{'vlan-raw-device'} : $1;
> @@ -1550,7 +1552,7 @@ sub __write_etc_network_interfaces {
> my $p = undef;
> my $vlanid = undef;
>
> - if ($iface =~ m/^(\S+)\.(\d+)$/) {
> + if ($iface =~ $VLAN_RE) {
> $p = $1;
> $vlanid = $2;
> delete $d->{'vlan-raw-device'} if $d->{'vlan-raw-device'};
> --
> 2.20.1
>
>
> _______________________________________________
> pve-devel mailing list
> pve-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>
More information about the pve-devel
mailing list