Files
webmin/jabber/save_file.cgi
2007-04-12 20:24:50 +00:00

30 lines
642 B
Perl
Executable File

#!/usr/local/bin/perl
# save_file.cgi
# Save the jabber config file, with verification
require './jabber-lib.pl';
&ReadParseMime();
&error_setup($text{'file_err'});
# Write to a temp file and check it
$temp = &transname();
$in{'file'} =~ s/\r//g;
open(TEMP, ">$temp");
print TEMP $in{'file'};
close(TEMP);
local $xml = new XML::Parser('Style' => 'Tree');
eval { $xml->parsefile($temp); };
unlink($temp);
if ($@) {
$err = $@;
$err =~ s/\s+at\s+(\S+)\s+line\s+(\d+)$//;
&error($err);
}
# Write to the real file
&open_tempfile(FILE, ">$config{'jabber_config'}");
&print_tempfile(FILE, $in{'file'});
&close_tempfile(FILE);
&redirect("");