aboutsummaryrefslogtreecommitdiffstats
path: root/net/resolvers/basic.lua
Commit message (Collapse)AuthorAgeFilesLines
* net: Prefix module imports with prosody namespaceKim Alvefur2023-03-171-6/+6
|
* net.resolvers.basic: Record hostname coming from secure SRV recordsKim Alvefur2022-12-221-0/+2
| | | | Will be useful even later...
* net.resolvers.basic: Add opt-out argument for DNSSEC security statusKim Alvefur2022-08-021-3/+5
| | | | | | | This makes explicit which lookups can accept an unsigned response. Insecure (unsigned, as before DNSSEC) A and AAAA records can be used as security would come from TLS, but an insecure TLSA record is worthless.
* net.resolvers.basic: Fix incorrect field name (thanks CI)Matthew Wild2022-03-181-1/+1
|
* net.resolvers.basic: Indicate to callback if we have more targets availableMatthew Wild2022-03-181-1/+1
|
* net.resolvers.basic: Alternate IP address family targets, per RFC 8305Matthew Wild2022-03-181-2/+10
|
* net.resolvers.basic: Refactor to remove code duplicationMatthew Wild2022-03-181-80/+72
| | | | ...and prepare for Happy Eyeballs
* net.resolvers: Report DNSSEC validation errors instead of NoErrorKim Alvefur2021-12-281-3/+9
| | | | Thanks Martin bringing this case to attention
* net.resolvers: Report when hostname fails IDNAKim Alvefur2021-12-071-1/+1
| | | | | Not a particularly user-friendly error message, but better than "unable to resolve service" and having no clue where it came from.
* net.connect: Propagate last error message from resolversKim Alvefur2021-11-121-3/+18
| | | | | | | | Previously it would only say "unable to resolve server" for all DNS problems. While "NoError in A lookup" might not make much sense to users, it should help in debugging more than the previous generic error. Friendlier errors will be future work.
* Revert 926d53af9a7a: Restore DANE supportKim Alvefur2021-07-181-4/+5
| | | | | Previous commit adds a workaround, so this doesn't mutate global state anymore, only per-connection 'extra' state as originally intended.
* net.resolvers.basic: Fix completion condition when IPv6 is disabledKim Alvefur2021-03-151-0/+2
| | | | | | | | | | Fixes mistake introduced in 5a71f14ab77c that made it so this ready() newer got called and thus it would be stuck waiting for it. Looks like the kind of thing that could have been introduced by a merge or rebase. Thanks MattJ
* net.resolvers.basic: Disable DANE for now, completely brokenKim Alvefur2021-03-031-5/+4
| | | | | Turns out 'extra' is, at least for mod_s2s, the same table for *all* connections.
* net.resolvers.basic: Don't enable DANE with zero TLSA recordsKim Alvefur2021-03-031-1/+1
| | | | Turns out it doesn't work with zero.
* net.connect: Add DANE supportKim Alvefur2021-03-021-1/+26
| | | | | | Disabled DANE by default, since it needs extra steps to be useful. The built-in DNS stub resolver does not support DNSSEC so having DANE enabled by default only leads to an extra wasted DNS request.
* Merge 0.11->trunkMatthew Wild2020-07-101-1/+2
|\
| * net.resolvers.basic: Default conn_type to 'tcp' consistently if unspecified ↵Matthew Wild2020-07-101-1/+2
| | | | | | | | | | | | (thanks marc0s) Fixes a traceback when passed an IP address with no conn_type.
* | net.resolvers: Remove FIXMEs obsoleted by switch to libunboundKim Alvefur2020-06-251-2/+0
| |
* | net.connect: Remove TODO about use_ipv4/6 done in 3bfb20be844cKim Alvefur2020-06-221-1/+0
| |
* | net.resolvers.basic: Fix continuing if IPv6 or Legacy IP is disabledKim Alvefur2020-01-261-0/+4
| | | | | | | | | | The code expects ready() to be called twice, but with IPv4 or v6 disabled it would only be called once.
* | net.resolvers.basic: Obey extra.use_ipv4/use_ipv6Matthew Wild2020-01-251-2/+2
| |
* | net.resolvers.basic: Obey use_ipv4/use_ipv6Matthew Wild2020-01-251-14/+19
| |
* | net.connect: Mention RFC 6724 regressionKim Alvefur2019-12-071-0/+1
| | | | | | | | | | Default Address Selection algorithm is not applied, resulting in a strong bias towards IPv4.
* | net.connect: Add some TODOs and FIXMEsKim Alvefur2019-12-071-0/+4
| | | | | | | | And mention issue numbers: #1246, #1428 and #1429
* | Merge 0.11->trunkKim Alvefur2019-11-241-0/+2
|\|
| * net.resolvers.basic: Normalise IP literals, ensures net.server is happyKim Alvefur2019-11-241-0/+2
| |
* | Merge 0.11->trunkKim Alvefur2019-11-241-11/+17
|\|
| * net.resolvers.basic: Fix resolution of IPv6 literals (in brackets) (fixes #1459)Kim Alvefur2019-11-241-0/+3
| |
| * net.resolvers.basic: Move IP literal check to constructorKim Alvefur2019-11-241-11/+14
| | | | | | | | | | This is to prepare for fixing #1459. An IPv6 literal in [ ] brackets does not pass IDNA and resolving it fails there.
* | Merge 0.11->trunkKim Alvefur2019-11-081-0/+1
|\|
| * net.resolvers: Fix traceback from hostname failing IDNAKim Alvefur2019-11-081-0/+1
| | | | | | | | Related to #1426
* | Merge 0.11->trunkKim Alvefur2019-11-021-1/+7
|\|
| * net.resolvers: Abort on hostnames not passing IDNA validationKim Alvefur2019-11-021-0/+5
| | | | | | | | | | | | Prevents error on trying to use nil. Needs better error reporting in the future.
| * net.resolvers: Apply IDNA conversion to ascii for DNS lookups (fixes #1426)Kim Alvefur2019-11-021-1/+2
| |
* | various: Don't rely on _G.unpack existingKim Alvefur2018-12-081-0/+1
|/
* net.resolvers.basic: Suffix IPv4 TCP socket types with '4' to match eg 'tcp6'Kim Alvefur2018-10-121-2/+2
|
* net.resolvers.basic: Support IP address literalsKim Alvefur2018-05-021-0/+11
|
* net.connect: New API for outgoing connections, based on 'service resolvers'Matthew Wild2018-02-231-0/+60