my %lookup;
while (<$LDIF>) {
my ($dn) = /^dn: (.*)$/m;
my ($samACCOUNTNAME) = /^samACCOUNTNAME: (.*)$/m;
$lookup{$dn} = $samACCOUNTNAME
if defined $dn and defined $samACCOUNTNAME; # only if both are found
}
####
if($lookup{$current_dn}) { ... }
####
push @{$lookup{$dn}}, $samACCOUNTNAME;
####
$lookup{$current_dn}[0]