mirror of
https://github.com/webmin/webmin.git
synced 2026-02-06 15:32:20 +00:00
30 lines
711 B
Perl
Executable File
30 lines
711 B
Perl
Executable File
#!/usr/local/bin/perl
|
|
|
|
require './filemin-lib.pl';
|
|
&ReadParse();
|
|
|
|
get_paths();
|
|
|
|
my @errors;
|
|
|
|
# Validate inputs
|
|
my $file = &simplify_path($cwd.'/'.$in{'file'});
|
|
&check_allowed_path($file);
|
|
$data = $in{'data'};
|
|
$data =~ s/\r\n/\n/g;
|
|
|
|
if ( $in{'encoding'} && lc( $in{'encoding'} ) ne "utf-8" ) {
|
|
eval { $data = Encode::encode( $in{'encoding'}, Encode::decode( 'utf-8', $data ) ) };
|
|
}
|
|
&open_tempfile(SAVE, ">$file") ||
|
|
&error($text{'error_saving_file'}." : ".&html_escape("$!"));
|
|
&print_tempfile(SAVE, $data);
|
|
&close_tempfile(SAVE);
|
|
|
|
if ($in{'save_close'}) {
|
|
&redirect("index.cgi?path=".&urlize($path));
|
|
} else {
|
|
&redirect("edit_file.cgi?path=".&urlize($path).
|
|
"&file=".&urlize($in{'file'}));
|
|
}
|