[ Avaa Bypassed ]




Upload:

Command:

www-data@18.216.248.35: ~ $
#!/usr/bin/perl
# Create, update or delete a scheduled backup

use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
require './backup-config-lib.pl';
our (%in, %text, $cron_cmd, $module_name);
&ReadParse();

# Find the backup job
my ($job, $backup);
if (!$in{'new'}) {
	$backup = &get_backup($in{'id'});
	$job = &find_cron_job($backup);
	}
else {
	$backup = { };
	}

if ($in{'delete'}) {
	# Delete the backup
	&delete_backup($backup);
	if ($job) {
		&lock_file(&cron::cron_file($job));
		&cron::delete_cron_job($job);
		&unlock_file(&cron::cron_file($job));
		}
	}
else {
	# Validate inputs
	&error_setup($text{'save_err'});
	my @mods = split(/\0/, $in{'mods'});
	$backup->{'mods'} = join(" ", @mods);
	$backup->{'dest'} = &parse_backup_destination("dest", \%in);
	&cron::parse_times_input($backup, \%in);
	$backup->{'emode'} = $in{'emode'};
	$backup->{'email'} = $in{'email'};
	$backup->{'pre'} = $in{'pre'};
	$backup->{'post'} = $in{'post'};
	$backup->{'sched'} = $in{'sched'};
	($backup->{'configfile'}, $backup->{'nofiles'}, $backup->{'others'}) =
		&parse_backup_what("what", \%in);
	@mods || ($backup->{'nofiles'} && !$backup->{'configfile'}) ||
		&error($text{'save_emods'});

	# Save or create
	&save_backup($backup);
	if ($job) {
		&lock_file(&cron::cron_file($job));
		&cron::delete_cron_job($job);
		}
	if ($in{'sched'}) {
		&cron::create_wrapper($cron_cmd, $module_name, "backup.pl");
		$job = { 'user' => 'root',
			 'command' => "$cron_cmd $backup->{'id'}",
			 'active' => 1,
			 'mins' => $backup->{'mins'},
			 'hours' => $backup->{'hours'},
			 'days' => $backup->{'days'},
			 'months' => $backup->{'months'},
			 'weekdays' => $backup->{'weekdays'},
			 'special' => $backup->{'special'} };
		&lock_file(&cron::cron_file($job));
		&cron::create_cron_job($job);
		}
	&unlock_file(&cron::cron_file($job)) if ($job);
	}
&webmin_log($in{'new'} ? 'create' : $in{'delete'} ? 'delete' : 'modify',
	    'backup', $backup->{'dest'}, $backup);

if ($in{'run'}) {
	# Execute the backup now
	&ui_print_unbuffered_header(undef, $text{'run_title'}, "");

	# Run the pre-backup command, if any
	my $err;
	if ($backup->{'pre'} =~ /\S/) {
		my $preout = &backquote_command(
			"($backup->{'pre'}) 2>&1 </dev/null");
		print &text('email_pre',
			"<tt>".&html_escape($backup->{'pre'})."</tt>")."<br>\n".
			"<pre>".&html_escape($preout)."</pre>\n";
		if ($?) {
			$err = $text{'email_prefailed'};
			}
		}

	my @mods = split(/\s+/, $backup->{'mods'});
	my $nice = &nice_dest($backup->{'dest'}, 1);
	if (!$err) {
		print &text('run_doing', scalar(@mods),
			    "<tt>$nice</tt>"),"<br>\n";
		my $size;
		$err = &execute_backup(
			\@mods, $backup->{'dest'}, \$size, undef,
			$backup->{'configfile'}, $backup->{'nofiles'},
			[ split(/\t+/, $backup->{'others'}) ]);
		}
	if ($err) {
		print "<pre>$err</pre>";
		print "$text{'run_failed'}<p>\n";
		}
	else {
		print "$text{'run_ok'}<p>\n";
		}

	# Run the post-backup command, if any
	if (!$err && $backup->{'post'} =~ /\S/) {
		my $postout = &backquote_command(
			"($backup->{'post'}) 2>&1 </dev/null");
		print &text('email_post',
		      "<tt>".&html_escape($backup->{'post'})."</tt>")."<br>\n".
		      "<pre>".&html_escape($postout)."</pre>\n";
		}

	&webmin_log("run", "backup", $backup->{'dest'}, $backup);
	&ui_print_footer("edit.cgi?id=$in{'id'}", $text{'edit_return'},
			 "index.cgi?mode=sched", $text{'index_return'});
	}
else {
	&redirect("index.cgi?mode=sched");
	}



Filemanager

Name Type Size Permission Actions
help Folder 0755
images Folder 0755
lang Folder 0755
CHANGELOG File 1.59 KB 0644
backup-config-lib.pl File 19.49 KB 0755
backup.cgi File 1.88 KB 0755
backup.pl File 2.11 KB 0755
cgi_args.pl File 284 B 0755
config File 34 B 0644
config-syno-linux File 111 B 0644
config.info File 223 B 0644
config.info.ar File 326 B 0644
config.info.ca File 256 B 0644
config.info.cs File 137 B 0644
config.info.de File 204 B 0644
config.info.es File 175 B 0644
config.info.fr File 171 B 0644
config.info.hr File 0 B 0644
config.info.hu File 166 B 0644
config.info.it File 188 B 0644
config.info.ja File 181 B 0644
config.info.ko File 164 B 0644
config.info.ms File 228 B 0644
config.info.nl File 231 B 0644
config.info.no File 248 B 0644
config.info.pl File 252 B 0644
config.info.ru File 292 B 0644
config.info.sk File 139 B 0644
config.info.sv File 0 B 0644
config.info.tr File 174 B 0644
edit.cgi File 2.66 KB 0755
index.cgi File 3.34 KB 0755
log_parser.pl File 730 B 0755
module.info File 210 B 0644
module.info.af File 0 B 0644
module.info.af.auto File 166 B 0644
module.info.ar File 224 B 0644
module.info.be File 0 B 0644
module.info.be.auto File 303 B 0644
module.info.bg File 0 B 0644
module.info.bg.auto File 303 B 0644
module.info.ca File 194 B 0644
module.info.cs File 42 B 0644
module.info.cs.auto File 131 B 0644
module.info.da File 0 B 0644
module.info.da.auto File 180 B 0644
module.info.de File 125 B 0644
module.info.el File 0 B 0644
module.info.el.auto File 368 B 0644
module.info.es File 48 B 0644
module.info.es.auto File 145 B 0644
module.info.eu File 0 B 0644
module.info.eu.auto File 176 B 0644
module.info.fa File 0 B 0644
module.info.fa.auto File 272 B 0644
module.info.fi File 0 B 0644
module.info.fi.auto File 168 B 0644
module.info.fr File 50 B 0644
module.info.fr.auto File 146 B 0644
module.info.he File 0 B 0644
module.info.he.auto File 196 B 0644
module.info.hr File 0 B 0644
module.info.hr.auto File 180 B 0644
module.info.hu File 32 B 0644
module.info.hu.auto File 152 B 0644
module.info.it File 42 B 0644
module.info.it.auto File 117 B 0644
module.info.ja File 48 B 0644
module.info.ja.auto File 172 B 0644
module.info.ko File 29 B 0644
module.info.ko.auto File 124 B 0644
module.info.lt File 0 B 0644
module.info.lt.auto File 195 B 0644
module.info.lv File 0 B 0644
module.info.lv.auto File 171 B 0644
module.info.ms File 158 B 0644
module.info.mt File 0 B 0644
module.info.mt.auto File 169 B 0644
module.info.nl File 34 B 0644
module.info.nl.auto File 131 B 0644
module.info.no File 38 B 0644
module.info.no.auto File 135 B 0644
module.info.pl File 181 B 0644
module.info.pt File 0 B 0644
module.info.pt.auto File 170 B 0644
module.info.pt_BR File 0 B 0644
module.info.pt_BR.auto File 176 B 0644
module.info.ro File 0 B 0644
module.info.ro.auto File 179 B 0644
module.info.ru File 96 B 0644
module.info.ru.auto File 244 B 0644
module.info.sk File 42 B 0644
module.info.sk.auto File 133 B 0644
module.info.sl File 0 B 0644
module.info.sl.auto File 182 B 0644
module.info.sv File 38 B 0644
module.info.sv.auto File 140 B 0644
module.info.th File 0 B 0644
module.info.th.auto File 341 B 0644
module.info.tr File 45 B 0644
module.info.tr.auto File 162 B 0644
module.info.uk File 0 B 0644
module.info.uk.auto File 302 B 0644
module.info.ur File 0 B 0644
module.info.ur.auto File 220 B 0644
module.info.vi File 0 B 0644
module.info.vi.auto File 200 B 0644
module.info.zh File 99 B 0644
module.info.zh_TW File 0 B 0644
module.info.zh_TW.auto File 124 B 0644
restore.cgi File 1.55 KB 0755
save.cgi File 3.38 KB 0755
uninstall.pl File 321 B 0755