Differences From Artifact [9b225aa65d]:
- File
src/exceptions/OFAddressTranslationFailedException.m
— part of check-in
[8d2a5052fd]
at
2014-01-25 17:39:13
on branch trunk
— Generalize stream / socket related exceptions
This is in preparation for adding UDP sockets, as UDP sockets and TCP
sockets have no common superclass, as one is stream-oriented while the
other is packet-oriented.Read and write exceptions are for any object now, as they are useful for
a lot more than just for streams, while the others (bind, listen, etc.)
are for any socket now (the type is id in this case, though, as there is
no common superclass). (user: js, size: 2976) [annotate] [blame] [check-ins using]
To Artifact [978b1ac512]:
- File
src/exceptions/OFAddressTranslationFailedException.m
— part of check-in
[49b1989b63]
at
2014-01-26 22:38:28
on branch trunk
— Move resolving functionality to resolver.m
This is in preparation for UDP sockets, so that they can share the
resolving functionality with TCP sockets. (user: js, size: 1756) [annotate] [blame] [check-ins using] [more...]
︙ | ︙ | |||
19 20 21 22 23 24 25 | #import "OFAddressTranslationFailedException.h" #import "OFString.h" #import "common.h" #import "macros.h" @implementation OFAddressTranslationFailedException | < < < < < < < | < < < < < < < < < < < < < < < < < < < < < < | < | < | < < < < < < < < < < < < < < < < < < | 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | #import "OFAddressTranslationFailedException.h" #import "OFString.h" #import "common.h" #import "macros.h" @implementation OFAddressTranslationFailedException + (instancetype)exceptionWithHost: (OFString*)host { return [[[self alloc] initWithHost: host] autorelease]; } - initWithHost: (OFString*)host { self = [super init]; @try { _host = [host copy]; _errNo = GET_AT_ERRNO; } @catch (id e) { [self release]; @throw e; } return self; } - (void)dealloc { [_host release]; [super dealloc]; } - (OFString*)description { if (_host != nil) return [OFString stringWithFormat: @"The host %@ could not be translated to an address. This " @"means that either the host was not found, there was a " @"problem with the name server, there was a problem with " @"your network connection or you specified an invalid " @"host. " ERRFMT, _host, AT_ERRPARAM]; else return [OFString stringWithFormat: @"An address could not be translated! " ERRFMT, AT_ERRPARAM]; } - (OFString*)host { OF_GETTER(_host, true) } - (int)errNo { #ifdef _WIN32 return of_wsaerr_to_errno(_errNo); #else return _errNo; #endif } @end |