| Server IP : 127.0.0.1 / Your IP : 216.73.216.109 Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10 System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64 User : SERVERWEB ( 0) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/cygwin64/home/SERVERWEB/webmin-2.105/proftpd/ |
Upload File : |
#!/usr/bin/perl
# find_ftpaccess.cgi
# Finds all per-directory options files under the all the document roots
require './proftpd-lib.pl';
&ReadParse();
@rv = grep { -r $_ } @ftpaccess_files;
&error_setup($text{'find_err'});
if ($in{'from'}) {
# Look under the given directory
@dirs = ( $in{'dir'} );
}
else {
# Look in Anonymous sections
$conf = &get_config();
$anon = &find_directive("Anonymous", $conf);
push(@dirs, $anon) if ($anon);
foreach $v (&find_directive_struct("VirtualHost", $conf)) {
$anon = &find_directive("Anonymous", $v->{'members'});
push(@dirs, $anon) if ($anon);
}
&error($text{'find_eanon'}) if (!@dirs);
}
foreach $d (@dirs) {
if ($d =~ /^~(\S+)$/) {
local @u = getpwnam($1);
$d = $u[7];
next if (!$u[7]);
}
open(FIND, "find ".quotemeta($d)." -name .ftpaccess -print |");
while(<FIND>) {
s/\r|\n//g;
push(@rv, $_);
}
close(FIND);
}
# save results
$site{'ftpaccess'} = join(' ', &unique(@rv));
&write_file("$module_config_directory/site", \%site);
&redirect("ftpaccess.cgi");