App-Envdoctor
view release on metacpan or search on metacpan
lib/App/Envdoctor/Scanner.pm view on Meta::CPAN
# Compatibility group for a non-empty inferred type.
sub _type_group {
my ($t) = @_;
return 'numeric' if $t eq 'integer' || $t eq 'float';
return $t;
}
my $SECRET_NAME = qr/SECRET|TOKEN|PASSWORD|PASSWD|PRIVATE|CREDENTIAL|API_?KEY|ACCESS_?KEY|AUTH/i;
my $WEAK_VALUE
= qr/^(?:changeme|change_me|placeholder|x{3,}|todo|secret|password|passwd|test|example|sample|dummy|your[_-].*|<.*>|\$\{.*\})$/i;
sub _is_weak_secret {
my ($v) = @_;
return 1 if $v eq '' || length($v) < 8;
return $v =~ $WEAK_VALUE ? 1 : 0;
}
# Levenshtein edit distance.
sub levenshtein {
my ( $a, $b ) = @_;
( run in 1.210 second using v1.01-cache-2.11-cpan-4ef0a570458 )