17 #import "OFDNSQuery.h" 19 #import "OFDNSResponse.h" 23 OF_ASSUME_NONNULL_BEGIN
25 #define OFDNSResolverBufferLength 512 27 @class OFArray OF_GENERIC(ObjectType);
29 @class OFDNSResolverContext;
30 @class OFDNSResolverSettings;
45 OFDNSResolverErrorCodeUnknown,
47 OFDNSResolverErrorCodeTimeout,
49 OFDNSResolverErrorCodeCanceled,
56 OFDNSResolverErrorCodeNoResult,
58 OFDNSResolverErrorCodeServerInvalidFormat,
60 OFDNSResolverErrorCodeServerFailure,
62 OFDNSResolverErrorCodeServerNameError,
64 OFDNSResolverErrorCodeServerNotImplemented,
66 OFDNSResolverErrorCodeServerRefused,
68 OFDNSResolverErrorCodeNoNameServer
69 } OFDNSResolverErrorCode;
89 exception: (nullable
id)exception;
97 @protocol OFDNSResolverHostDelegate <
OFObject>
110 addresses: (nullable
OFData *)addresses
111 exception: (nullable
id)exception;
124 OF_SUBCLASSING_RESTRICTED
127 OFDNSResolverSettings *_settings;
132 char _buffer[OFDNSResolverBufferLength];
175 @property (nonatomic)
unsigned int maxAttempts;
180 @property (nonatomic)
unsigned int minNumberOfDotsInAbsoluteName;
185 @property (nonatomic)
bool forcesTCP;
197 + (instancetype)resolver;
202 - (instancetype)init;
210 - (void)asyncPerformQuery: (
OFDNSQuery *)query
220 - (void)asyncPerformQuery: (
OFDNSQuery *)query
230 - (void)asyncResolveAddressesForHost: (
OFString *)host
231 delegate: (
id <OFDNSResolverHostDelegate>)delegate;
240 - (void)asyncResolveAddressesForHost: (
OFString *)host
242 delegate: (
id <OFDNSResolverHostDelegate>)delegate;
252 - (void)asyncResolveAddressesForHost: (
OFString *)host
255 delegate: (
id <OFDNSResolverHostDelegate>)delegate;
275 OF_ASSUME_NONNULL_END
A class which provides methods to create and use UDP sockets.
Definition: OFUDPSocket.h:50
An abstract class for storing objects in an array.
Definition: OFArray.h:103
A class for storing, accessing and comparing dates.
Definition: OFDate.h:29
A class for storing constant strings using the @"" literal.
Definition: OFConstantString.h:37
The root class for all other classes inside ObjFW.
Definition: OFObject.h:686
OFArray * nameServers
An array of name servers to use.
Definition: OFDNSResolver.h:152
A class for handling strings.
Definition: OFString.h:134
An abstract class for storing objects in a dictionary.
Definition: OFDictionary.h:78
OFString * localDomain
The local domain.
Definition: OFDNSResolver.h:157
OFArray * searchDomains
The domains to search for queries for short names.
Definition: OFDNSResolver.h:162
A class for resolving DNS names.
Definition: OFDNSResolver.h:125
A class which provides methods to create and use TCP sockets.
Definition: OFTCPSocket.h:66
double OFTimeInterval
A time interval in seconds.
Definition: OFObject.h:150
An abstract class for storing and changing objects in a dictionary.
Definition: OFMutableDictionary.h:42
Provides a way to store a number in an object.
Definition: OFNumber.h:42
A delegate for performed DNS queries.
OFSocketAddressFamily
A socket address family.
Definition: OFSocket.h:103
A class for storing arbitrary data in an array.
Definition: OFData.h:41
A class storing a response from OFDNSResolver.
Definition: OFDNSResponse.h:33
A class representing a DNS query.
Definition: OFDNSQuery.h:29