diff --git a/fhem/FHEM/99_Utils.pm b/fhem/FHEM/99_Utils.pm index c6695e9e9..f1977eec9 100644 --- a/fhem/FHEM/99_Utils.pm +++ b/fhem/FHEM/99_Utils.pm @@ -271,7 +271,7 @@ Svn_GetFile($$;$) require HttpUtils; return "Missing argument from or to" if(!$from || !$to); return "Forbidden characters in from/to" - if($from =~ m/\.\./ || $to =~ m/\.\./); + if($from =~ m/\.\./ || $to =~ m/\.\./ || $to =~ m,^/,); HttpUtils_NonblockingGet({ url=>"https://svn.fhem.de/trac/browser/trunk/fhem/$from?format=txt", callback=>sub($$$){ @@ -292,6 +292,20 @@ Svn_GetFile($$;$) return "Download started, check the FHEM-log"; } +sub +WriteFile($$) +{ + my ($filename, $data) = @_; + return "Forbidden characters in filename" + if($filename =~ m/\.\./ || $filename =~ m,^/,); + if(!open(FH,">$filename")) { + Log 1, "ERROR WriteFile $filename: $!"; + return; + } + print FH $data; + close(FH); +} + 1; =pod @@ -396,6 +410,16 @@ Svn_GetFile($$;$)
+
  • WriteFile(file, content)
    + Write a file in/below the curent directory. + Example: + +

  • + =end html