non-_WIN32 platforms don't consider EWOULDBLOCK in ERRNO_IS_EAGAIN()

#if defined(_WIN32)
...
#define ERRNO_IS_EAGAIN(e)           ((e) == EAGAIN || (e) == WSAEWOULDBLOCK)
...
#else
...
#define ERRNO_IS_EAGAIN(e)           ((e) == EAGAIN)

EAGAIN and EWOULDBLOCK have the same errno in most platforms, but there are some cases where it's not the same: http://stackoverflow.com/questions/7003234/which-systems-define-eagain-and-ewouldblock-as-different-values

Reported by oftc_must_be_destroyed.