Server IP : 195.201.23.43 / Your IP : 3.141.35.52 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/proftpd/ |
Upload File : |
#!/usr/bin/perl # manual.cgi # Display a text box for manually editing directives require './proftpd-lib.pl'; &ReadParse(); if ($in{'global'}) { $conf = &get_config(); $global = &find_directive_struct("Global", $conf); $conf = $global->{'members'}; if (defined($in{'limit'})) { # limit within the global section if ($in{'idx'}) { $d = $conf->[$in{'idx'}]; $l = $d->{'members'}->[$in{'limit'}]; $title = &text('limit_header4', $l->{'value'}, $d->{'words'}->[0]); } else { $l = $conf->[$in{'limit'}]; $title = &text('limit_header7', $l->{'value'}); } $return = "limit_index.cgi"; $rmsg = $text{'limit_return'}; $file = $l->{'file'}; $start = $l->{'line'}+1; $end = $l->{'eline'}-1; } else { # directory in the global section $d = $conf->[$in{'idx'}]; $title = &text('dir_header5', $d->{'words'}->[0]); $return = "dir_index.cgi"; $rmsg = $text{'dir_return'}; $file = $d->{'file'}; $start = $d->{'line'}+1; $end = $d->{'eline'}-1; } } elsif (defined($in{'virt'})) { if (defined($in{'limit'})) { # limit, maybe within a directory ($conf, $v) = &get_virtual_config($in{'virt'}); if ($in{'anon'}) { $anon = &find_directive_struct("Anonymous", $conf); $conf = $anon->{'members'}; } if ($in{'idx'} ne '') { $dir = $conf->[$in{'idx'}]; $conf = $dir->{'members'}; } $l = $conf->[$in{'limit'}]; $ln = $l->{'value'}; $title = $dir ? &text('limit_header4', $ln, $dir->{'words'}->[0]) : $in{'virt'} ? &text('limit_header1', $ln, $v->{'words'}->[0]) : &text('limit_header2', $ln); $return = "limit_index.cgi"; $rmsg = $text{'limit_return'}; $file = $l->{'file'}; $start = $l->{'line'}+1; $end = $l->{'eline'}-1; } elsif (defined($in{'idx'})) { # directory within virtual server ($vconf, $v) = &get_virtual_config($in{'virt'}); if ($in{'anon'}) { $anon = &find_directive_struct("Anonymous", $vconf); $vconf = $anon->{'members'}; } $d = $vconf->[$in{'idx'}]; $dn = $d->{'words'}->[0]; $title = $in{'anon'} ? &text('dir_header4', $dn) : $in{'virt'} ? &text('dir_header1', $dn, $v->{'words'}->[0]) : &text('dir_header2', $dn); $return = "dir_index.cgi"; $rmsg = $text{'dir_return'}; $file = $d->{'file'}; $start = $d->{'line'}+1; $end = $d->{'eline'}-1; } else { # virtual server ($conf, $v) = &get_virtual_config($in{'virt'}); $title = $in{'virt'} eq '' ? $text{'virt_header2'} : &text('virt_header1', $v->{'value'}); $return = "virt_index.cgi"; $rmsg = $text{'virt_return'}; $file = $v->{'file'}; $start = $v->{'line'}+1; $end = $v->{'eline'}-1; } } else { # Something in a .ftpaccess file if (defined($in{'limit'})) { # limit within .ftpaccess file $hconf = &get_ftpaccess_config($in{'file'}); $l = $hconf->[$in{'limit'}]; $file = $in{'file'}; $start = $l->{'line'}+1; $end = $l->{'eline'}-1; $title = &text('limit_header6', $l->{'value'}, "<tt>$in{'file'}</tt>"); $return = "limit_index.cgi"; $rmsg = $text{'limit_return'}; } else { # .ftpaccess file $file = $in{'file'}; $title = &text('ftpindex_header', "<tt>$in{'file'}</tt>"); $return = "ftpaccess_index.cgi"; $rmsg = $text{'ftpindex_return'}; } } &ui_print_header($title, $text{'manual_title'}, "", undef, undef, undef, undef, &restart_button()); print &text('manual_header', "<tt>$file</tt>"),"<p>\n"; print &ui_form_start("manual_save.cgi", "form-data"); foreach $h ('virt', 'idx', 'file', 'limit', 'anon', 'global') { if (defined($in{$h})) { print &ui_hidden($h, $in{$h}); push(@args, "$h=$in{$h}"); } } $args = join('&', @args); $lref = &read_file_lines($file); if (!defined($start)) { $start = 0; $end = @$lref - 1; } for($i=$start; $i<=$end; $i++) { $data .= $lref->[$i]."\n"; } print &ui_table_start(undef, undef, 2); print &ui_table_row(undef, &ui_textarea("directives", $data, 20, 80), 2); print &ui_table_end(); print &ui_form_end([ [ undef, $text{'save'} ] ]); &ui_print_footer("$return?$args", $rmsg);Private