Use OS-agnostic socket error codes to allow tests run on different OSes (#1179)
SocketErrorCode is OS agnostic, ErrorCode is OS specific.
On Windows ErrorCode = (int) SocketErrorCode, but on Mac and Unix it is not.
For example ExitCode for HostNotFound (11001) on Windows is 11001, on Mac & Unix is -131073. So testing for ExitCode == 11001 fails on Mac & Unix.
Co-authored-by: Wojciech Nagórski <wojtpl2@gmail.com>