Files
webmin/squid/squid-auth.pl
2022-06-30 13:08:38 +03:00

29 lines
452 B
Perl
Executable File

#!/usr/local/bin/perl
# squid-auth.pl
# A basic squid authentication program
use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
my %auth;
open(my $fh, "<".$ARGV[0]);
while(<$fh>) {
s/\r|\n//g;
s/#.*$//;
if (/^(\S+):(\S+)/) {
$auth{$1} = $2;
}
}
close($fh);
$| = 1;
while(<STDIN>) {
s/\r|\n//g;
my ($u, $p) = split(/\s+/, $_);
print $auth{$u} &&
$auth{$u} eq crypt($p, $auth{$u}) ? "OK\n" : "ERR\n";
}