better error handling for istat nonblocking socket operations, restart istatd listen process