in_forward/out_forward: rescues Errno::EWOULDBLOCK as well as EAGAIN; EWOULDBLOCK is always defined regardless of system environment, where the actual value depends on the system