Read are now using NIO. The errno is propagated up from read()