Am 16.04.24 um 11:27 schrieb Filip Schauer: > Fix a bug that allows a device passthrough entry to be added to the > config despite the device path not pointing to a device. Previously, > adding an invalid device passthrough entry would throw an error, but the > entry would still be added to the config. This is fixed by moving the > respective checks from update_lxc_config to update_pct_config, which is > run before the entry is written to the config file. > > Signed-off-by: Filip Schauer <f.scha...@proxmox.com>
(...) > diff --git a/src/PVE/LXC/Config.pm b/src/PVE/LXC/Config.pm > index 5ac1446..408140f 100644 > --- a/src/PVE/LXC/Config.pm > +++ b/src/PVE/LXC/Config.pm > @@ -3,7 +3,8 @@ package PVE::LXC::Config; > use strict; > use warnings; > > -use Fcntl qw(O_RDONLY); > +use Errno qw(ENOENT); > +use Fcntl qw(O_RDONLY :mode); > > use PVE::AbstractConfig; > use PVE::Cluster qw(cfs_register_file); I dropped the above hunk, because it's a left-over from a previous version AFAICT. > @@ -1193,6 +1194,14 @@ sub update_pct_config { > die "$opt: MTU size '$mtu' is bigger than bridge MTU > '$bridge_mtu'\n" > if ($mtu > $bridge_mtu); > } > + } elsif ($opt =~ m/^dev(\d+)$/) { > + my $device = $class->parse_device($value); > + > + die "Path is not defined for passthrough device $opt" > + if !defined($device->{path}); > + > + # Validate device > + PVE::LXC::Tools::get_device_mode_and_rdev($device->{path}); > } > $conf->{pending}->{$opt} = $value; > $class->remove_from_pending_delete($conf, $opt); With that, applied, thanks! _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel