--- netdump-0.7.16/netdumpclient.c.orig 2007-02-26 14:44:48.000000000 -0500 +++ netdump-0.7.16/netdumpclient.c 2007-02-26 14:55:42.000000000 -0500 @@ -2471,8 +2471,15 @@ status_timeout (NetdumpClient *client, status_request (client, FALSE); else { - syslog (LOG_WARNING, "Got too many timeouts waiting for SHOW_STATUS for client %s, rebooting it\n", client->ip_addr); - netdump_client_destroy (client, TRUE); + if (client->got_log_packet) { + /* keep trying if we are getting log messages */ + client->got_log_packet = FALSE; + client->process_packet = status_packet; /* may not be necessary */ + client->timeout = status_timeout; /* may not be necessary */ + } else { + syslog (LOG_WARNING, "Got too many timeouts waiting for SHOW_STATUS for client %s, rebooting it\n", client->ip_addr); + netdump_client_destroy (client, TRUE); + } } }