Non mi intendo di autenticazioni, ma capisco qualcosa sulle RE.
Prova a modificare il tuo pezzo:
codice:
if($user =~/(.+)\@.+/) {
$user=$1;
}
in:
codice:
if($user =~/(.+)\@(.+?)\./) {
$user = $1;
my $domi = $2;
print "utente: $user == dominio: $domi \n";
}
Nota che ho dichiarato la variabile $domi dentro la routine, cosa che probabilmente non ti va bene (dovrai dichiararla fuori da qualche parte, altrimenti non riesci ad usarla)
Ho aggiunto il print per controllo, poi andra` tolto.
Non so come potrai usare $domi, ma credo dovrai avere una lista di domini ammessi (che deve essere scritta nel codice in modo che non possa venir modificata da altri) e verificare che sia uno di quelli.
PS: quando posti codice, usa il tag VB CODE, che puoi inserire anche tramite il bottone CODE sopra l'area di testo