| Server IP : 173.209.174.21 / Your IP : 216.73.216.89 Web Server : Apache/2.4.58 (Ubuntu) System : Linux wcfs-server 6.8.0-124-generic #124-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 13:00:45 UTC 2026 x86_64 User : nodor ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/webmin/filemin/ |
Upload File : |
#!/usr/bin/perl
require './filemin-lib.pl';
use File::Basename;
use Cwd 'abs_path';
&ReadParse();
get_paths();
my $file = &resolve_links(&simplify_path($cwd.'/'.$in{'file'}));
my $error = 1;
for $allowed_path (@allowed_paths) {
if (&is_under_directory($allowed_path, $file)) {
$error = 0;
}
}
$error && &error(&text('notallowed', &html_escape($file),
&html_escape(join(" , ", @allowed_paths))));
my $size = -s "$file";
(my $name, my $dir, my $ext) = fileparse($file, qr/\.[^.]*/);
print "Content-Type: application/x-download\n";
print "Content-Disposition: attachment; filename=\"$name$ext\"\n";
print "Content-Length: $size\n\n";
open (FILE, "< $file") or die "can't open $file: $!";
binmode FILE;
local $/ = \&get_buffer_size_binary();
while (<FILE>) {
print $_;
}
close FILE;