use strict; sub RLS_ropen($) { (@_ == 1) || die "RLS_ropen called w/ invalid argument list: ".scalar(@_)." params instead of 1"; my $name = $_[0]; unless ( $name ) { # invalid - null or empty file name return ""; } unless ( -e $name && -r $name ) { # file doesn't exits or is unreadable return ""; } open( my $dbh, "< $name"); return $dbh; } # end RLS_ropen my $fh = RLS_ropen "test.tmp"; #### open( my $dbh, "< $name") or die "Couldn't open database file '$name': $!";