[BACK]Return to Hash.pm CVS log [TXT][DIR] Up to [local] / botnow

Annotation of botnow/Hash.pm, Revision 1.1

1.1     ! bountyht    1: #!/usr/bin/perl
        !             2:
        !             3: package Hash;
        !             4:
        !             5: use strict;
        !             6: use warnings;
        !             7: use OpenBSD::Pledge;
        !             8: use OpenBSD::Unveil;
        !             9: use Data::Dumper;
        !            10:
        !            11: my %conf = %main::conf;
        !            12: my @words;
        !            13: my $wordspath = "words";
        !            14: my $passlength = $conf{passlength};
        !            15: # dictionary words for passwords
        !            16: @words = main::readarray("words");
        !            17:
        !            18: sub init {
        !            19:        unveil($wordspath, "r") or die "Unable to unveil $!";
        !            20: }
        !            21:
        !            22: sub newpass {
        !            23:        my $len = scalar @words;
        !            24:        my $pass;
        !            25:        for (my $i=0; $i < $passlength; $i++) {
        !            26:                my $word = $words[int(rand($len))];
        !            27:                $word =~ s/(\w+)/\u$1/g;
        !            28:                $pass .= $word;
        !            29:        }
        !            30:        return $pass;
        !            31: }
        !            32: #dependencies for blowfish
        !            33: #unveil("./blowfish.o", "rx") or die "Unable to unveil $!";
        !            34: #      } elsif ($reply =~ /^!identify\s*(.*)?\s+(.*)$/i) {
        !            35: #              my $hash = getkeyval($hostmask, "password");
        !            36: #              #print "result = ".`./blowfish.o $2 '$hash'`;
        !            37: #              if(system("./blowfish.o $2 '$hash' > /dev/null")) {
        !            38: #                      print "login failed\r\n";
        !            39: #              } else {
        !            40: #                      print "logged in\r\n";
        !            41: #              }
        !            42:
        !            43:
        !            44: 1; # MUST BE LAST STATEMENT IN FILE

CVSweb