Private
Server IP : 195.201.23.43  /  Your IP : 3.143.254.11
Web Server : Apache
System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64
User : kdecoratie ( 1041)
PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/webmin/updown/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/webmin/updown//download.pl
#!/usr/bin/perl
# download.pl
# Start downloading some file, and update the .down file with its progress

$no_acl_check++;
require './updown-lib.pl';

$down = &get_download($ARGV[0]);
$down || die "Download ID $ARGV[0] does not exist!";
&can_write_file($down->{'dir'}) || die "Cannot download files to $down->{'dir'}";

# Do the download, updating the config file with progress
$down->{'pid'} = $$;
&save_download($down);
$error = &do_download($down, \&download_callback, \@paths);
$down->{'complete'} = 1;
$down->{'error'} = $error if ($error);
&save_download($down);

sub download_callback
{
if ($_[0] == 1) {
	# Started ok
	delete($down->{'size'});
	delete($down->{'got'});
	delete($down->{'finished'});
	$lastupdate = 0;
	$lastpercent = 0;
	}
elsif ($_[0] == 2) {
	# Got size
	$down->{'size'} = $_[1];
	}
elsif ($_[0] == 3) {
	# Got some data. Only update the status file every 10 seconds or when
	# a percent of data is received
	$down->{'got'} = $_[1];
	if ($down->{'size'}) {
		$percent = int($down->{'got'}*100/$down->{'size'});
		$now = time();
		return if ($percent <= $lastpercent &&
			   $now < $lastupdate + 10);
		$lastupdate = $now;
		$lastpercent = $percent;
		}
	}
elsif ($_[0] == 4) {
	# All done
	$down->{'finished'} = 1;
	$down->{'total'} += $down->{'got'};
	}
elsif ($_[0] == 5) {
	# Redirecting to new URL
	}
&switch_uid_back();
&save_download($down);
&switch_uid_to($down->{'uid'}, $down->{'gid'});
}

Private