Overview
| Comment: | OFDNSResolver: Rename usesTCP -> forcesTCP |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
1e62dc40eba2b436529d10292dc910f7 |
| User & Date: | js on 2023-04-10 18:51:52 |
| Other Links: | manifest | tags |
Context
|
2023-04-10
| ||
| 19:22 | Remove OFSerialization (check-in: 6ce0093f8d user: js tags: trunk) | |
| 18:51 | OFDNSResolver: Rename usesTCP -> forcesTCP (check-in: 1e62dc40eb user: js tags: trunk) | |
| 18:20 | Set OS name on Nintendo Switch and Wii U (check-in: be422e156d user: js tags: trunk) | |
Changes
Modified src/OFDNSResolver.h from [5db6332123] to [511ca7b000].
| ︙ | ︙ | |||
176 177 178 179 180 181 182 | /** * @brief The minimum number of dots for a name to be considered absolute. */ @property (nonatomic) unsigned int minNumberOfDotsInAbsoluteName; /** | | | | 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 | /** * @brief The minimum number of dots for a name to be considered absolute. */ @property (nonatomic) unsigned int minNumberOfDotsInAbsoluteName; /** * @brief Whether the resolver forces TCP to talk to a name server. */ @property (nonatomic) bool forcesTCP; /** * @brief The interval in seconds in which the config should be reloaded. * * Setting this to 0 disables config reloading. */ @property (nonatomic) OFTimeInterval configReloadInterval; |
| ︙ | ︙ |
Modified src/OFDNSResolver.m from [3af99bcca7] to [476e39eb2a].
| ︙ | ︙ | |||
674 675 676 677 678 679 680 |
- (void)setMinNumberOfDotsInAbsoluteName:
(unsigned int)minNumberOfDotsInAbsoluteName
{
_settings->_minNumberOfDotsInAbsoluteName =
minNumberOfDotsInAbsoluteName;
}
| | | | | | 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 |
- (void)setMinNumberOfDotsInAbsoluteName:
(unsigned int)minNumberOfDotsInAbsoluteName
{
_settings->_minNumberOfDotsInAbsoluteName =
minNumberOfDotsInAbsoluteName;
}
- (bool)forcesTCP
{
return _settings->_forcesTCP;
}
- (void)setForcesTCP: (bool)forcesTCP
{
_settings->_forcesTCP = forcesTCP;
}
- (OFTimeInterval)configReloadInterval
{
return _settings->_configReloadInterval;
}
|
| ︙ | ︙ | |||
719 720 721 722 723 724 725 | repeats: false]; [[OFRunLoop currentRunLoop] addTimer: context->_cancelTimer forMode: runLoopMode]; nameServer = [context->_settings->_nameServers objectAtIndex: context->_nameServersIndex]; | | | 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 |
repeats: false];
[[OFRunLoop currentRunLoop] addTimer: context->_cancelTimer
forMode: runLoopMode];
nameServer = [context->_settings->_nameServers
objectAtIndex: context->_nameServersIndex];
if (context->_settings->_forcesTCP) {
OFEnsure(context->_TCPSocket == nil);
context->_TCPSocket = [[OFTCPSocket alloc] init];
[_TCPQueries setObject: context forKey: context->_TCPSocket];
context->_TCPSocket.delegate = self;
[context->_TCPSocket asyncConnectToHost: nameServer
|
| ︙ | ︙ | |||
944 945 946 947 948 949 950 |
if ((buffer[2] & 0x78) != (queryDataBuffer[2] & 0x78))
@throw [OFInvalidServerResponseException exception];
/* TC */
if (buffer[2] & 0x02) {
OFRunLoopMode runLoopMode;
| | | | 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 |
if ((buffer[2] & 0x78) != (queryDataBuffer[2] & 0x78))
@throw [OFInvalidServerResponseException exception];
/* TC */
if (buffer[2] & 0x02) {
OFRunLoopMode runLoopMode;
if (context->_settings->_forcesTCP)
@throw [OFTruncatedDataException exception];
context->_settings->_forcesTCP = true;
runLoopMode = [OFRunLoop currentRunLoop].currentMode;
[self of_sendQueryForContext: context
runLoopMode: runLoopMode];
return false;
}
/* RCODE */
|
| ︙ | ︙ |
Modified src/OFDNSResolverSettings.h from [a54f672717] to [59a97ffd04].
| ︙ | ︙ | |||
27 28 29 30 31 32 33 | OFDictionary OF_GENERIC(OFString *, OFArray OF_GENERIC(OFString *) *) *_staticHosts; OFArray OF_GENERIC(OFString *) *_nameServers; OFString *_Nullable _localDomain; OFArray OF_GENERIC(OFString *) *_searchDomains; OFTimeInterval _timeout; unsigned int _maxAttempts, _minNumberOfDotsInAbsoluteName; | | | 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | OFDictionary OF_GENERIC(OFString *, OFArray OF_GENERIC(OFString *) *) *_staticHosts; OFArray OF_GENERIC(OFString *) *_nameServers; OFString *_Nullable _localDomain; OFArray OF_GENERIC(OFString *) *_searchDomains; OFTimeInterval _timeout; unsigned int _maxAttempts, _minNumberOfDotsInAbsoluteName; bool _forcesTCP; OFTimeInterval _configReloadInterval; @protected OFDate *_lastConfigReload; } - (void)reload; @end OF_ASSUME_NONNULL_END |
Modified src/OFDNSResolverSettings.m from [f996c78e87] to [efbcc5cf61].
| ︙ | ︙ | |||
213 214 215 216 217 218 219 | copy->_nameServers = [_nameServers copy]; copy->_localDomain = [_localDomain copy]; copy->_searchDomains = [_searchDomains copy]; copy->_timeout = _timeout; copy->_maxAttempts = _maxAttempts; copy->_minNumberOfDotsInAbsoluteName = _minNumberOfDotsInAbsoluteName; | | | 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
copy->_nameServers = [_nameServers copy];
copy->_localDomain = [_localDomain copy];
copy->_searchDomains = [_searchDomains copy];
copy->_timeout = _timeout;
copy->_maxAttempts = _maxAttempts;
copy->_minNumberOfDotsInAbsoluteName =
_minNumberOfDotsInAbsoluteName;
copy->_forcesTCP = _forcesTCP;
copy->_configReloadInterval = _configReloadInterval;
copy->_lastConfigReload = [_lastConfigReload copy];
} @catch (id e) {
[copy release];
@throw e;
}
|
| ︙ | ︙ | |||
241 242 243 244 245 246 247 | [_searchDomains release]; _searchDomains = nil; _timeout = 2; _maxAttempts = 3; _minNumberOfDotsInAbsoluteName = 1; | | | 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 | [_searchDomains release]; _searchDomains = nil; _timeout = 2; _maxAttempts = 3; _minNumberOfDotsInAbsoluteName = 1; _forcesTCP = false; #ifndef OF_NINTENDO_3DS _configReloadInterval = 2; #else _configReloadInterval = 0; #endif } |
| ︙ | ︙ | |||
343 344 345 346 347 348 349 |
_maxAttempts = (unsigned int)number;
} else if ([option hasPrefix: @"reload-period:"]) {
option = [option substringFromIndex: 14];
_configReloadInterval = option.unsignedLongLongValue;
} else if ([option isEqual: @"tcp"])
| | | 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 |
_maxAttempts = (unsigned int)number;
} else if ([option hasPrefix: @"reload-period:"]) {
option = [option substringFromIndex: 14];
_configReloadInterval = option.unsignedLongLongValue;
} else if ([option isEqual: @"tcp"])
_forcesTCP = true;
} @catch (OFInvalidFormatException *e) {
}
}
- (void)parseResolvConf: (OFString *)path
{
void *pool = objc_autoreleasePoolPush();
|
| ︙ | ︙ |
Modified tests/OFDNSResolverTests.m from [18f93dc1e7] to [90e052eb2c].
| ︙ | ︙ | |||
55 56 57 58 59 60 61 | [OFStdOut writeFormat: @"[OFDNSResolver] Max attempts: %u\n", resolver.maxAttempts]; [OFStdOut writeFormat: @"[OFDNSResolver] Min number of dots in absolute name: %u\n", resolver.minNumberOfDotsInAbsoluteName]; | | | | 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | [OFStdOut writeFormat: @"[OFDNSResolver] Max attempts: %u\n", resolver.maxAttempts]; [OFStdOut writeFormat: @"[OFDNSResolver] Min number of dots in absolute name: %u\n", resolver.minNumberOfDotsInAbsoluteName]; [OFStdOut writeFormat: @"[OFDNSResolver] Forces TCP: %u\n", resolver.forcesTCP]; [OFStdOut writeFormat: @"[OFDNSResolver] Config reload interval: %lf\n", resolver.configReloadInterval]; objc_autoreleasePoolPop(pool); } @end |