if ($@) { die unless $@ eq "alarm\n"; # propagate unexpected errors # handle the timed out operation }