#!/usr/bin/perl &page_header; &read_form; # Read form $user = "$FORM{'username'}" if $FORM{'username'}; $pass = "$FORM{'password'}" if $FORM{'password'}; print "

$user       $pass

"; $userpass = "$user$pass"; print "

"; $data_file = "up.txt"; open(UPD, "<$data_file") or die "Cannot open $data_file (5Z)."; flock UPD,2; seek(UPD,0,0); @upd = ; close(UPD); chomp(@upd); foreach $line (@upd) { ($d_line) = split (/\n/, $line); ($username, $password, $user_pass, $active) = split (/\|/, $d_line); print "

$username       $password

"; next if $username ne $user; $good = 1 if $username eq $user and $password eq $pass; } if($good) { &do_enter; }else { &do_trap; } ################################### # # # S U B R O U T I N E S # # # ################################### # READ FORM DATA sub read_form { read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); if ($ENV{'QUERY_STRING'}) { $buffer = "$buffer\&$ENV{'QUERY_STRING'}" } @pairs = split(/&/,$buffer); foreach $pair (@pairs) { ($name,$value) = split(/=/,$pair); $value =~ tr/+/ /; #$value =~ s/%0a/\n/gi; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; $value =~ s/([;<>\*\|\`\$#\[\]\{\}])/'&#' . ord($1) . ';'/eg; $value =~ s/\r//g; $FORM{$name} = $value; } } # CREATE META FOR PAGE HEADER sub page_header { print "Content-type: text/html\n\n"; print "\n\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } sub do_enter { print "
\n"; print "
\n"; print "
\n"; print "
\n"; print "
\n"; } sub do_trap { print "
Username or Password is incorrect.
\n"; $name = ""; $password = ""; $user = ""; $pass = ""; print "
\n"; print "

\n"; print "
\n"; }