$SIG{HUP} = sub { $__server_should_run = 0; }; $__server_should_run = 1; while ($__server_should_run) { my $conn = $daemon->accept or next; # handle request }