ObjFW  History of src/OFDNSResolver.m of 3f9e0e0f0717f7eb

History of file src/OFDNSResolver.m at check-in 3f9e0e0f0717f7eb

2024-08-21
20:14
Make ObjFW compile on macOS/PowerPC 64 file: [632303a834] check-in: [7b0cd744dc] user: js, branch: trunk, size: 37288 [annotate] [blame] [check-ins using] [diff]
2024-08-17
17:30
Delay socket initialization as long as possible

On game consoles, initializing sockets takes a significant amount of
time. When not delaying socket initializing, that time is spent during
startup even when the application might never use sockets.

Worse yet, on Amiga, sockets might not be available at all and the
application will fail to start up, even when the application might never
use sockets. file: [d30e19048e] check-in: [7460d2ccd8] user: js, branch: trunk, size: 37266 [annotate] [blame] [check-ins using] [diff]

09:51
Move private functions into private headers file: [152a6730bc] check-in: [b829f3e798] user: js, branch: trunk, size: 37352 [annotate] [blame] [check-ins using] [diff]
2024-04-29
21:42
Properly hide private symbols file: [8787fec7e7] check-in: [f16bccc7b3] user: js, branch: trunk, size: 37302 [annotate] [blame] [check-ins using] [diff]
2024-04-03
02:16
Change license to LGPLv3 only file: [ae23ada8bd] check-in: [7413a728a7] user: js, branch: trunk, size: 37301 [annotate] [blame] [check-ins using] [diff]
2024-02-24
19:40
Make everything work on macOS Leopard again file: [8ca1f870f4] check-in: [c3e83facc5] user: js, branch: trunk, size: 37093 [annotate] [blame] [check-ins using] [diff]
2024-02-03
11:41
Update copyright file: [c1395db642] check-in: [7324ec8590] user: js, branch: 1.0, size: 32860 [annotate] [blame] [check-ins using] [diff]
2024-01-20
21:40
Add support for LOC DNS resource records file: [294ed882f2] check-in: [d37c636a61] user: js, branch: trunk, size: 37083 [annotate] [blame] [check-ins using] [diff]
2024-01-15
02:26
Merge support for URI DNS resource records file: [1cf3f921a3] check-in: [e051d7d487] user: js, branch: trunk, size: 36089 [annotate] [blame] [check-ins using] [diff]
02:24
Fix parsing of URI resource records file: [a8a046f98e] check-in: [2b7bc4c106] user: js, branch: uri-resource-record, size: 36092 [annotate] [blame] [check-ins using] [diff]
02:08
OFDNSResolver: Fix wrong shifts file: [4b03d5ec64] check-in: [e7210cdbfd] user: js, branch: 1.0, size: 32860 [annotate] [blame] [check-ins using] [diff]
02:07
OFDNSResolver: Fix wrong shifts file: [c017e2232c] check-in: [328252420b] user: js, branch: trunk, size: 35533 [annotate] [blame] [check-ins using] [diff]
2024-01-14
22:47
Add support for URI DNS resource records file: [7df5d5c8bd] check-in: [16d99685ae] user: js, branch: uri-resource-record, size: 36088 [annotate] [blame] [check-ins using] [diff]
2024-01-06
15:36
OFDNSResolver: Use correct run loop mode for cache file: [b89d5a3a8f] check-in: [c13f9f78f1] user: js, branch: trunk, size: 35536 [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
Update copyright file: [fc8783c17e] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 35261 [annotate] [blame] [check-ins using] [diff]
17:14
OFDNSResolver: Invalidate cache on config changes file: [002fb3b586] check-in: [3f27f9cfbd] user: js, branch: trunk, size: 35261 [annotate] [blame] [check-ins using] [diff]
2023-12-29
23:47
Make GCC happy again file: [033477a200] check-in: [f538f5fb70] user: js, branch: trunk, size: 35044 [annotate] [blame] [check-ins using] [diff]
16:25
OFDNSResolver: Clean up expired cache entries file: [f3aa0cd47b] check-in: [219aa9cf65] user: js, branch: trunk, size: 35042 [annotate] [blame] [check-ins using] [diff]
15:53
OFDNSResolver: Cache responses file: [8da319df43] check-in: [252f11c431] user: js, branch: trunk, size: 34101 [annotate] [blame] [check-ins using] [diff]
2023-04-17
11:56
Always make DNS names lowercase

This avoids problems when comparing them. file: [1f222a13ca] check-in: [ce2b268163] user: js, branch: trunk, size: 32863 [annotate] [blame] [check-ins using] [diff]

2023-04-10
18:51
OFDNSResolver: Rename usesTCP -> forcesTCP file: [476e39eb2a] check-in: [1e62dc40eb] user: js, branch: trunk, size: 32847 [annotate] [blame] [check-ins using] [diff]
2023-01-06
09:04
Update copyright file: [3af99bcca7] check-in: [8939cbdb52] user: js, branch: trunk, size: 32829 [annotate] [blame] [check-ins using] [diff]
2022-11-06
20:31
OFDatagramSocket: Make sender nullable file: [9048cbfc52] check-in: [6ed8be900e] user: js, branch: trunk, size: 32829 [annotate] [blame] [check-ins using] [diff]
2022-09-23
14:01
Rename OFInvalidServer{Reply -> Response}Exception file: [982d647b8f] check-in: [60ebc06824] user: js, branch: trunk, size: 32806 [annotate] [blame] [check-ins using] [diff]
2022-03-24
17:18
OFDNSResolver: Make canBlock = false opportunistic

Some platforms just don't support non-blocking UDP sockets, but it
should still be possible to resolve DNS names on those. file: [6722a88381] check-in: [ec07db28ed] user: js, branch: trunk, size: 32743 [annotate] [blame] [check-ins using] [diff]

2022-02-12
07:46
Update copyright file: [8bdba8e0dc] check-in: [1a86b8175b] user: js, branch: trunk, size: 32503 [annotate] [blame] [check-ins using] [diff]
2021-04-19
21:54
Rename a few more constants file: [9a8423f14c] check-in: [458420998c] user: js, branch: new-naming-convention, size: 32503 [annotate] [blame] [check-ins using] [diff]
2021-04-18
22:56
Rename all symbols marked extern file: [2c62153187] check-in: [e73c65a849] user: js, branch: new-naming-convention, size: 32520 [annotate] [blame] [check-ins using] [diff]
15:55
Rename all functions in macros.h file: [52dce07be7] check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 32522 [annotate] [blame] [check-ins using] [diff]
13:24
Rename remaining functions in OFObject.h file: [ff5044c80c] check-in: [d9f8960fc5] user: js, branch: new-naming-convention, size: 32533 [annotate] [blame] [check-ins using] [diff]
2021-04-17
22:45
Rename of_(re)alloc and add OFFreeMemory file: [8ca7344c81] check-in: [498074dab9] user: js, branch: new-naming-convention, size: 32534 [annotate] [blame] [check-ins using] [diff]
14:59
Rename of_dns_* file: [2af65d33f1] check-in: [4badf3f127] user: js, branch: new-naming-convention, size: 32521 [annotate] [blame] [check-ins using] [diff]
13:58
of_socket_address_t -> OFSocketAddress file: [33f15c9fa5] check-in: [e3c5bb70dd] user: js, branch: new-naming-convention, size: 32543 [annotate] [blame] [check-ins using] [diff]
12:32
Rename of_socket_address_family_t file: [38aa9ebc9e] check-in: [d3fb3e902d] user: js, branch: new-naming-convention, size: 32602 [annotate] [blame] [check-ins using] [diff]
03:37
of_run_loop_mode_t -> OFRunLoopMode file: [ad1a046297] check-in: [b480ef54db] user: js, branch: new-naming-convention, size: 32617 [annotate] [blame] [check-ins using] [diff]
00:51
of_time_interval_t -> OFTimeInterval file: [082cdf22b7] check-in: [8c0d76f782] user: js, branch: new-naming-convention, size: 32659 [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
*.m: Fold methods into one line where it fits file: [536c83ec11] check-in: [1b82d3bf4f] user: js, branch: trunk, size: 32675 [annotate] [blame] [check-ins using] [diff]
02:36
Style change: Allow more than 1 argument per line

This is only migrating some places, others will be migrated as they are
touched. file: [46f2a3f0a5] check-in: [a0fd103a0b] user: js, branch: trunk, size: 32793 [annotate] [blame] [check-ins using] [diff]

2021-01-02
22:04
Update copyright file: [9c1e2cde9e] check-in: [374e1a1bfa] user: js, branch: trunk, size: 32808 [annotate] [blame] [check-ins using] [diff]
2020-11-14
12:23
Rename of_malloc and of_calloc

The new names should be more accurate. file: [2df523d351] check-in: [627511b032] user: js, branch: trunk, size: 32897 [annotate] [blame] [check-ins using] [diff]

2020-11-05
02:27
Further reduce usage of -[allocMemoryWithSize:] file: [3373845de9] check-in: [da1fb6b21c] user: js, branch: trunk, size: 32898 [annotate] [blame] [check-ins using] [diff]
2020-08-25
00:11
OFNumber: Remove (u)int{8,16,32,64} methods

Since C guarantees minimum sizes for char, short, int, long and long
long, these can be used instead. file: [abd3a40827] check-in: [25c985fec1] user: js, branch: trunk, size: 32902 [annotate] [blame] [check-ins using] [diff]

2020-07-12
10:35
Split of_random() into of_random{16,32,64}() file: [6319b8ebc8] check-in: [14f05841a3] user: js, branch: trunk, size: 32881 [annotate] [blame] [check-ins using] [diff]
2020-06-28
15:03
Use OF_DIRECT(_MEMBERS) where appropriate file: [7061e87e9f] check-in: [b6cb3addd0] user: js, branch: trunk, size: 32889 [annotate] [blame] [check-ins using] [diff]
2020-06-21
17:53
Throw an exception when there is no name server file: [e0d24431d9] check-in: [f3573582e1] user: js, branch: trunk, size: 32871 [annotate] [blame] [check-ins using] [diff]
2020-05-06
00:32
Improve names of several properties file: [5d30f91158] check-in: [bc67e98833] user: js, branch: trunk, size: 32920 [annotate] [blame] [check-ins using] [diff]
2020-04-25
23:02
Add OFIPXSocket file: [dbbe2fd8c5] check-in: [4a5822e7c0] user: js, branch: trunk, size: 32920 [annotate] [blame] [check-ins using] [diff]
2020-04-24
00:21
Add OFIPStreamSocket

This is a new superclass for OFTCPSocket to allow sharing code with
other IP stream socket types, namely SCTP. file: [6dace51fe8] check-in: [3dfe642dd3] user: js, branch: trunk, size: 32920 [annotate] [blame] [check-ins using] [diff]

2020-04-18
20:43
OFDNSResolver: Retry with TCP if TC is set file: [ff93d36ccb] check-in: [321f4c67a4] user: js, branch: trunk, size: 32915 [annotate] [blame] [check-ins using] [diff]
19:36
OFDNSResolver: Add support for queries over TCP file: [6d3a9fb443] check-in: [45452562b7] user: js, branch: trunk, size: 32636 [annotate] [blame] [check-ins using] [diff]
01:39
Support for multiple strings in a TXT DNS record file: [1003885810] check-in: [78eb25bdc4] user: js, branch: trunk, size: 28214 [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
Update copyright file: [8f5030468c] check-in: [c7f0229795] user: js, branch: trunk, size: 27855 [annotate] [blame] [check-ins using] [diff]
2019-11-17
21:17
Fix incorrect indentation file: [dfbdc81c03] check-in: [abc9d84958] user: js, branch: trunk, size: 27852 [annotate] [blame] [check-ins using] [diff]
2019-10-20
01:13
Rename of_dns{_resource -> }_record_type_t file: [e2ce8a82a3] check-in: [7fa337b8a4] user: js, branch: trunk, size: 27858 [annotate] [blame] [check-ins using] [diff]
00:57
OFDNSResolver: Try all search domains

This functionality was temporarily removed by the refactor. file: [14032f9f21] check-in: [355da9743c] user: js, branch: trunk, size: 27980 [annotate] [blame] [check-ins using] [diff]

2019-10-07
20:32
Split OFDNSResolverDelegate into two delegates

These are different enough that it makes no sense to have them in one.
Having them in one means all methods are @optional and typos cannot be
caught by the compiler. file: [fbee61aa4a] check-in: [e3c911c7f5] user: js, branch: trunk, size: 27938 [annotate] [blame] [check-ins using] [diff]

01:20
Make GCC happy again file: [ae60f26781] check-in: [0e1d2f7b84] user: js, branch: trunk, size: 27901 [annotate] [blame] [check-ins using] [diff]
00:07
OFDNSResolver: Major refactor

This temporarily doesn't use the search domains anymore and makes CNAMEs
slightly more inefficient. The next commits will fix both. file: [4b225df12f] check-in: [ee592cf603] user: js, branch: trunk, size: 27897 [annotate] [blame] [check-ins using] [diff]

2019-10-06
17:05
OFDNSResolver: Improved error handling file: [3109b96d8a] check-in: [d31e244f55] user: js, branch: trunk, size: 45180 [annotate] [blame] [check-ins using] [diff]
16:27
Rename OFDNSRequest -> OFDNSQuery

This is now in alignment with the terminology of the RFC. file: [d5d7184bab] check-in: [d69f7bc1ff] user: js, branch: trunk, size: 44991 [annotate] [blame] [check-ins using] [diff]

2019-10-03
21:43
OFDNSResolver: Split out settings

This makes it easier to attach them to a query. file: [f3fddc6663] check-in: [4fd5a7086c] user: js, branch: trunk, size: 45160 [annotate] [blame] [check-ins using] [diff]

2019-10-01
00:40
Add OFDNSRequest file: [c5d465decc] check-in: [6b2fb27dca] user: js, branch: trunk, size: 58175 [annotate] [blame] [check-ins using] [diff]
2019-09-30
22:46
Add OFDNSResponse file: [8025fe1282] check-in: [da8eb2d43a] user: js, branch: trunk, size: 59365 [annotate] [blame] [check-ins using] [diff]
2019-09-01
15:20
Use u suffix on a few constants file: [77dfb36f29] check-in: [b7badc68a0] user: js, branch: trunk, size: 61130 [annotate] [blame] [check-ins using] [diff]
2019-08-11
18:56
Support sockets in multiple threads on AmigaOS file: [db347fdd7c] check-in: [a40f3fc829] user: js, branch: trunk, size: 61129 [annotate] [blame] [check-ins using] [diff]
2019-08-10
02:06
Clean up the AmigaOS 4 library mess file: [e6e0fe25fb] check-in: [3292a6fdbc] user: js, branch: trunk, size: 61182 [annotate] [blame] [check-ins using] [diff]
2019-08-09
23:44
Support sockets on AmigaOS 3 file: [2b5ef9baa7] check-in: [3dec8ecf2e] user: js, branch: trunk, size: 61235 [annotate] [blame] [check-ins using] [diff]
2019-06-19
00:45
OFEnumerator: Remove -[reset]

It's not very useful and is a problem for the Foundation bridge, as
NSEnumerator does not have it. file: [088c1eb5e1] check-in: [7214a2c7af] user: js, branch: trunk, size: 61758 [annotate] [blame] [check-ins using] [diff]

2019-06-17
02:33
Remove underscores from class names file: [a2fc2aa0b5] check-in: [17d57e01ff] user: js, branch: trunk, size: 61752 [annotate] [blame] [check-ins using] [diff]
2019-04-21
09:58
Fix compilation on AmigaOS 4 with 53.30 SDK file: [e622efd3e9] check-in: [50a6ffd4b1] user: js, branch: trunk, size: 61760 [annotate] [blame] [check-ins using] [diff]
2019-04-14
15:40
Use more const file: [d3f87f2f5a] check-in: [dfd61e781e] user: js, branch: trunk, size: 61740 [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
Use dot syntax file: [b26d10f3a6] check-in: [bceb7ed4c9] user: js, branch: trunk, size: 61730 [annotate] [blame] [check-ins using] [diff]
2019-02-10
23:58
OFWindowsRegistryKey: Support for binary values file: [2303b7b240] check-in: [65b31518fc] user: js, branch: trunk, size: 61807 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [037adc045f] check-in: [0509d7a844] user: js, branch: trunk, size: 61807 [annotate] [blame] [check-ins using] [diff]
19:05
OFDNSResolver: Call back from correct runLoopMode file: [672d41b078] check-in: [a74c5d6a2d] user: js, branch: trunk, size: 61801 [annotate] [blame] [check-ins using] [diff]
2018-12-22
18:13
Make GCC happy file: [7b4ba10f06] check-in: [214e46a10f] user: js, branch: trunk, size: 61699 [annotate] [blame] [check-ins using] [diff]
00:29
OFDNSResolver: Use a delegate for async operations

Because there is usually only one resolver per thread, having the
delegate as a property on the resolver would not work. It is therefore
passed as an argument.

This only changes the public API so far. Internally, the old target /
selector / context pattern is still being used. This will be changed
later. file: [2001e1cd19] check-in: [0afb04d93c] user: js, branch: trunk, size: 61695 [annotate] [blame] [check-ins using] [diff]

2018-12-18
21:17
Use OFData instead of a buffer for async UDP sends

This avoids the entire problem of keeping the buffer alive until the
send finished. file: [411a1eb381] check-in: [0f3ae90eef] user: js, branch: trunk, size: 60148 [annotate] [blame] [check-ins using] [diff]

2018-12-11
22:57
Include an exception in delegate methods

Otherwise, there would be two methods for every operation: One for
success and one for failure. It also makes it easy to forget about
handling failure, so it's better to always pass an optional exception. file: [15c765674a] check-in: [064dbe5127] user: js, branch: trunk, size: 60197 [annotate] [blame] [check-ins using] [diff]

2018-12-08
22:01
Minor fix for OFDNSResolver and OFRunLoop file: [c60b82a6b2] check-in: [6387b16864] user: js, branch: trunk, size: 60302 [annotate] [blame] [check-ins using] [diff]
18:55
OFUDPSocket: Use a delegate for async operations file: [55442709eb] check-in: [da2dd2dde5] user: js, branch: trunk, size: 60127 [annotate] [blame] [check-ins using] [diff]
2018-11-17
23:13
OFDNSResolver: Make sure queries live long enough file: [e676e364e2] check-in: [d062db6708] user: js, branch: trunk, size: 61017 [annotate] [blame] [check-ins using] [diff]
2018-11-04
18:40
Sandbox ofdns file: [5e69e0a1d6] check-in: [605634184d] user: js, branch: trunk, size: 60891 [annotate] [blame] [check-ins using] [diff]
2018-10-07
02:39
OFDNSResolver: Look at static hosts to get address file: [5597695463] check-in: [4d335e89d6] user: js, branch: trunk, size: 60865 [annotate] [blame] [check-ins using] [diff]
02:06
Remove resolver.m

Instead, OFDNSResolver is used for everything now. file: [f094c42133] check-in: [6e9ee122eb] user: js, branch: trunk, size: 59067 [annotate] [blame] [check-ins using] [diff]

2018-10-06
20:21
OFDNSResolver: Add sync resolve socket addresses file: [8f4fd230d2] check-in: [22700e6082] user: js, branch: trunk, size: 58216 [annotate] [blame] [check-ins using] [diff]
13:52
OFDNSResolver: Allow specifying the run loop mode file: [3ad875198a] check-in: [7efb3c590e] user: js, branch: trunk, size: 56264 [annotate] [blame] [check-ins using] [diff]
2018-09-15
23:35
OFDNSResolver: Send queries for unresolved CNAMEs file: [fc6f9bf825] check-in: [ae92690f92] user: js, branch: trunk, size: 54360 [annotate] [blame] [check-ins using] [diff]
20:04
OFDNSResolver: Fix compilation with GCC file: [c811322a6c] check-in: [c4836192b2] user: js, branch: trunk, size: 51589 [annotate] [blame] [check-ins using] [diff]
17:39
OFDNSResolver: Resolve CNAMEs for socket addresses

This only resolves them when they have been included in the answer.
Sending another query when they are not is the next step. file: [9407cece68] check-in: [25b05b7bce] user: js, branch: trunk, size: 50908 [annotate] [blame] [check-ins using] [diff]

13:45
OFDNSResolver: Group records by domain name file: [721e3310ec] check-in: [7ba597c52d] user: js, branch: trunk, size: 49332 [annotate] [blame] [check-ins using] [diff]
2018-09-10
20:44
OFDNSResolver: Method to resolve host to addresses

This provides more convenience when the goal is to connect a socket and
provides functionality similar to getaddrinfo().

No support for resolving CNAMEs yet - this will be the next step. file: [8914dd7f51] check-in: [8555d64ee6] user: js, branch: trunk, size: 48894 [annotate] [blame] [check-ins using] [diff]

2018-08-25
15:53
OFDNSResolver: Obtain name servers on Nintendo 3DS file: [f53bdeefa1] check-in: [81674093ac] user: js, branch: trunk, size: 42989 [annotate] [blame] [check-ins using] [diff]
2018-08-20
01:24
OFDNSResolver: Do not use gethostname() on Wii

It's in the headers, but the symbol is missing. file: [fc33672140] check-in: [40bf53792d] user: js, branch: trunk, size: 41668 [annotate] [blame] [check-ins using] [diff]

2018-08-19
23:50
OFDNSResolver: Do not allow IPs as local domain file: [90b01a441b] check-in: [7050b3a480] user: js, branch: trunk, size: 41624 [annotate] [blame] [check-ins using] [diff]
2018-08-18
17:01
OFDNSResolver: Obtain name servers on AmigaOS 4 file: [deccb8b1de] check-in: [3d67a890fb] user: js, branch: trunk, size: 41202 [annotate] [blame] [check-ins using] [diff]
2018-08-15
21:37
OFDNSResolver: Move settings into a single object

This allows easily passing around all settings rather than passing each
one individually. file: [3f193a223c] check-in: [4162178e50] user: js, branch: trunk, size: 39045 [annotate] [blame] [check-ins using] [diff]

00:21
OFDNSResolver: Try all search domains file: [c86401e34e] check-in: [fcbb1100da] user: js, branch: trunk, size: 38435 [annotate] [blame] [check-ins using] [diff]
2018-08-13
21:53
OFDNSResolver: Let the buffer belong to the query

This means the buffer automatically gets cleaned up when the query is
deallocated. file: [24a25534b2] check-in: [1e6bb58863] user: js, branch: trunk, size: 35580 [annotate] [blame] [check-ins using] [diff]

21:48
OFDNSResolver: Require sender == receiver file: [71348d0e6d] check-in: [b004db730a] user: js, branch: trunk, size: 35579 [annotate] [blame] [check-ins using] [diff]
21:37
OFDNSResolver: Parse more options file: [cebc2efbe7] check-in: [0dc20b4226] user: js, branch: trunk, size: 35320 [annotate] [blame] [check-ins using] [diff]
21:22
OFDNSResolver: Configurable timeout and retries file: [30c75fb63e] check-in: [fb6ff94c52] user: js, branch: trunk, size: 34690 [annotate] [blame] [check-ins using] [diff]
21:06
OFDNSResolver: Reduce code size file: [b4efbde4c5] check-in: [5d169b2f58] user: js, branch: trunk, size: 34299 [annotate] [blame] [check-ins using] [diff]
00:00
OFDNSResolver: Periodic config reload file: [221615e7cb] check-in: [507d999b53] user: js, branch: trunk, size: 35487 [annotate] [blame] [check-ins using] [diff]
2018-08-12
22:21
OFDNSResolver: Pass the FQDN to the callback file: [ec8c7e0a0c] check-in: [457f722d18] user: js, branch: trunk, size: 34416 [annotate] [blame] [check-ins using] [diff]
12:37
OFDNSResolver: Parse authority and additional RRs file: [3362d8ffb1] check-in: [6305a0c7a4] user: js, branch: trunk, size: 34132 [annotate] [blame] [check-ins using] [diff]
01:12
OFDNSResolver: Multiple attempts for resolving file: [f296db2c83] check-in: [42cb3d287c] user: js, branch: trunk, size: 33545 [annotate] [blame] [check-ins using] [diff]
2018-08-11
20:31
OFDNSResolver: Reorder methods and make GCC happy file: [4bcaef27d1] check-in: [eb2ccce976] user: js, branch: trunk, size: 33294 [annotate] [blame] [check-ins using] [diff]
20:10
OFDNSResolver: Try all available name servers file: [f4753b6d8f] check-in: [56f80f9e5a] user: js, branch: trunk, size: 32739 [annotate] [blame] [check-ins using] [diff]
14:29
OFDNSResourceRecord: Use of_socket_address_t

This avoids unnecessary string construction and parsing and removes
duplicate code to convert an address into a string. file: [9632f6597d] check-in: [75d2d3ba01] user: js, branch: trunk, size: 32496 [annotate] [blame] [check-ins using] [diff]

14:00
Change the layout of of_socket_address_t

Instead of containing a struct sockaddr_storage - which does not exist
on all supported platforms - it now contains a union of all struct
sockaddr_* types.

Additionally, if struct sockaddr_in6 does not exist, it is defined so
that an IPv6 can be stored even if the system does not support IPv6. file: [bcc41be191] check-in: [8f810ecb7e] user: js, branch: trunk, size: 33389 [annotate] [blame] [check-ins using] [diff]

11:58
OFDNSResolver: Minor refactoring file: [037c3906cf] check-in: [4afaa63320] user: js, branch: trunk, size: 33294 [annotate] [blame] [check-ins using] [diff]
2018-08-05
19:31
OFDNSResolver: Do not close the sockets

Instead, just release them. The reason for this is that -[close]
immediately closes the file descriptor, meaning the next run loop
iteration fails to remove them, as the file descriptor is no longer
valid. file: [5d4867eed8] check-in: [97ccd4a3e4] user: js, branch: trunk, size: 33788 [annotate] [blame] [check-ins using] [diff]

15:24
OFDNSResolver: Let queries time out file: [7ee76905cc] check-in: [452616df69] user: js, branch: trunk, size: 33832 [annotate] [blame] [check-ins using] [diff]
2018-08-04
23:43
OFDNSResolver: Improve error reporting file: [ef5cd89abc] check-in: [647ec47eda] user: js, branch: trunk, size: 32483 [annotate] [blame] [check-ins using] [diff]
16:49
OFDNSResolver: Set UDP sockets to non-blocking file: [bce70b2657] check-in: [2b72aa8c86] user: js, branch: trunk, size: 30454 [annotate] [blame] [check-ins using] [diff]
15:50
OFDNSResolver: Have one shared IPv4/IPv6 socket file: [ee463ccad3] check-in: [0b475d18d5] user: js, branch: trunk, size: 29766 [annotate] [blame] [check-ins using] [diff]
15:35
Use OF_HAVE_IPV6 instead of HAVE_IPV6

This has always been wrong. file: [bad70f4110] check-in: [e36455441d] user: js, branch: trunk, size: 29145 [annotate] [blame] [check-ins using] [diff]

15:27
OFDNSResolver: Add support for parsing SRV records file: [9a40ea3367] check-in: [462cb8a108] user: js, branch: trunk, size: 29139 [annotate] [blame] [check-ins using] [diff]
14:37
OFDNSResolver: Add support for parsing RP records file: [ad00966ce8] check-in: [b5d9bd2fd0] user: js, branch: trunk, size: 28391 [annotate] [blame] [check-ins using] [diff]
13:05
OFDNSResolver: Add support for parsing HINFOs file: [a787c24bb0] check-in: [86e9130742] user: js, branch: trunk, size: 27782 [annotate] [blame] [check-ins using] [diff]
00:06
OFDNSResolver: Add a fallback for localhost file: [785a05654f] check-in: [4671310302] user: js, branch: trunk, size: 26799 [annotate] [blame] [check-ins using] [diff]
2018-08-02
01:16
OFDNSResolver: Add support for parsing SOA records file: [d938f274bb] check-in: [c165d49455] user: js, branch: trunk, size: 26457 [annotate] [blame] [check-ins using] [diff]
2018-08-01
23:02
OFDNSResourceRecord: Cleaner subclass separation file: [4b3c509e3e] check-in: [17397bfad4] user: js, branch: trunk, size: 24951 [annotate] [blame] [check-ins using] [diff]
2018-07-31
23:48
OFDNSResolver: Add support for {NS,PTR,TXT} RRs file: [7f7fd809d0] check-in: [1124f7d4d4] user: js, branch: trunk, size: 25357 [annotate] [blame] [check-ins using] [diff]
00:41
OFDNSResolver: Add support for parsing MX records file: [1105a5a101] check-in: [650fdd14e3] user: js, branch: trunk, size: 24254 [annotate] [blame] [check-ins using] [diff]
2018-07-30
22:24
Create an OFDNSResourceRecord subclass per type file: [16d3a398be] check-in: [bd5e1e2014] user: js, branch: trunk, size: 23152 [annotate] [blame] [check-ins using] [diff]
00:07
OFDNSResolver: Add support for parsing AAAAs file: [9fbb4cad64] check-in: [589a3e0f13] user: js, branch: trunk, size: 22858 [annotate] [blame] [check-ins using] [diff]
2018-07-29
19:13
OFDNSResolver: Allow specifying query class & type file: [11b30d4761] check-in: [af30016cfb] user: js, branch: trunk, size: 21384 [annotate] [blame] [check-ins using] [diff]
18:38
OFDNSResolver: Add support for parsing CNAMEs file: [f87770019a] check-in: [3826822733] user: js, branch: trunk, size: 20975 [annotate] [blame] [check-ins using] [diff]
14:32
OFDNSResolver: Initial support for resolving file: [f68c605682] check-in: [af4b18903d] user: js, branch: trunk, size: 19884 [annotate] [blame] [check-ins using] [diff]
2018-07-28
18:45
Rename OFLocalization -> OFLocale file: [4be9a58852] check-in: [aa0384d1bf] user: js, branch: trunk, size: 9071 [annotate] [blame] [check-ins using] [diff]
14:33
OFDNSResolver: Add resolv.conf path for MorphOS file: [bcdb2d2012] check-in: [d0099ed8c9] user: js, branch: trunk, size: 9089 [annotate] [blame] [check-ins using] [diff]
2018-07-10
22:58
OFDNSResolver: Get name servers & domain on Win32 file: [231fa481e0] check-in: [42bee3f920] user: js, branch: trunk, size: 8998 [annotate] [blame] [check-ins using] [diff]
21:24
OFDNSResolver: Win32: Get hosts path from registry file: [452969d7b3] check-in: [4b20f0e12c] user: js, branch: trunk, size: 7588 [annotate] [blame] [check-ins using] [diff]
2018-07-08
19:42
OFDNSResolver: Paths for hosts file on more OSes file: [07800749f7] check-in: [418965bae3] user: js, branch: trunk, size: 7089 [annotate] [blame] [check-ins using] [diff]
12:07
Added: Initial code for OFDNSResolver

This does nothing more than parse /etc/hosts and /etc/resolv.conf so
far. file: [54daba6e99] check-in: [dd375b6d4e] user: js, branch: trunk, size: 6764 [annotate] [blame] [check-ins using]