Commit Diff
- Commit:
9b63e6ee01c403d243745f88f6a657637ac89f3e
- From:
- Omar Polo <op@omarpolo.com>
- Date:
- Message:
- don't die on ECONNABORTED ECONNABORTED is returned if a connections gets aborted after being queued before the accept(2). I had some cases of accept: Software caused connection abort on FreeBSD, this should avoid that.
- Actions:
- Patch | Tree
--- server.c +++ server.c @@ -1157,7 +1157,8 @@ do_accept(int sock, short et, void *d) saddr = (struct sockaddr*)&addr; len = sizeof(addr); if ((fd = accept(sock, saddr, &len)) == -1) { - if (errno == EWOULDBLOCK || errno == EAGAIN) + if (errno == EWOULDBLOCK || errno == EAGAIN || + errno == ECONNABORTED) return; fatal("accept: %s", strerror(errno)); }