I wonder if this would solve also the problem? Please can you test?

diff --git a/data/PVE/Network.pm b/data/PVE/Network.pm
index 9ad34f1..458a2da 100644
--- a/data/PVE/Network.pm
+++ b/data/PVE/Network.pm
@@ -114,8 +114,7 @@ sub copy_bridge_config {
            my $v0 = 
PVE::Tools::file_read_firstline("/sys/class/net/$br0/bridge/$sysname");
            my $v1 = 
PVE::Tools::file_read_firstline("/sys/class/net/$br1/bridge/$sysname");
            if ($v0 ne $v1) {
-               system("echo \"$v0\" > /sys/class/net/$br1/bridge/$sysname") == 
0 ||
-                   warn "unable to set bridge config '$sysname'\n";
+               write_proc_entry("/sys/class/net/$br1/bridge/$sysname", $v0);
            }
        };
        warn $@ if $@;
diff --git a/data/PVE/ProcFSTools.pm b/data/PVE/ProcFSTools.pm
index 79d8cfd..e0a8828 100644
--- a/data/PVE/ProcFSTools.pm
+++ b/data/PVE/ProcFSTools.pm
@@ -246,4 +246,14 @@ sub read_proc_net_dev {
     return $res;
 }
 
+sub write_proc_entry {
+    my ($filename, $data) = @_;#
+
+    my $fh = IO::File->new($filename,  O_WRONLY);
+    die "unable to open file '$filename' - $!\n" if !$fh;
+    die "unable to write '$filename' - $!\n" unless print $fh $data;
+    die "closing file '$filename' failed - $!\n" unless close $fh;
+    $fh->close();
+}
+
 1;


> -----Original Message-----
> From: [email protected] [mailto:pve-devel-
> [email protected]] On Behalf Of Alexandre Derumier
> Sent: Dienstag, 25. Februar 2014 06:15
> To: [email protected]
> Subject: [pve-devel] [PATCH] copy_bridge_config : parse values
> 
> fix bug
> 
> WARNING: Insecure dependency in system while running with -T switch at
> /usr/share/perl5/PVE/Network.pm line 175.
> 
> Signed-off-by: Alexandre Derumier <[email protected]>
> ---
>  data/PVE/Network.pm |    9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/data/PVE/Network.pm b/data/PVE/Network.pm index
> 98ef18e..99350cb 100644
> --- a/data/PVE/Network.pm
> +++ b/data/PVE/Network.pm
> @@ -168,6 +168,15 @@ sub copy_bridge_config {
>       eval {
>           my $v0 =
> PVE::Tools::file_read_firstline("/sys/class/net/$br0/bridge/$sysname");
>           my $v1 =
> PVE::Tools::file_read_firstline("/sys/class/net/$br1/bridge/$sysname");
> +
> +         if($v0 =~ m/^(\S+)/){
> +             $v0 = $1;
> +         }
> +
> +         if($v1 =~ m/^(\S+)/){
> +             $v1 = $1;
> +         }
> +
>           if ($v0 ne $v1) {
>               system("echo \"$v0\" >
> /sys/class/net/$br1/bridge/$sysname") == 0 ||
>                   warn "unable to set bridge config '$sysname'\n";
> --
> 1.7.10.4
> 
> _______________________________________________
> pve-devel mailing list
> [email protected]
> http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


_______________________________________________
pve-devel mailing list
[email protected]
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to