@@ -17,33 +17,34 @@ #include "config.h" #import "OFListenFailedException.h" #import "OFString.h" -#import "common.h" - @implementation OFListenFailedException + (instancetype)exceptionWithSocket: (id)socket backLog: (int)backLog + errNo: (int)errNo { return [[[self alloc] initWithSocket: socket - backLog: backLog] autorelease]; + backLog: backLog + errNo: errNo] autorelease]; } - init { OF_INVALID_INIT_METHOD } - initWithSocket: (id)socket backLog: (int)backLog + errNo: (int)errNo { self = [super init]; - _socket = [socket retain]; + _socket = [socket retain]; _backLog = backLog; - _errNo = GET_SOCK_ERRNO; + _errNo = errNo; return self; } - (void)dealloc @@ -54,12 +55,12 @@ } - (OFString*)description { return [OFString stringWithFormat: - @"Failed to listen in socket of type %@ with a back log of %d! " - ERRFMT, [_socket class], _backLog, ERRPARAM]; + @"Failed to listen in socket of type %@ with a back log of %d: %@", + [_socket class], _backLog, of_strerror(_errNo)]; } - (id)socket { OF_GETTER(_socket, true) @@ -70,12 +71,8 @@ return _backLog; } - (int)errNo { -#ifdef _WIN32 - return of_wsaerr_to_errno(_errNo); -#else return _errNo; -#endif } @end