Skip to content

Commit 8adc5a9

Browse files
authored
dns-util: Allow running lookup with a given resolver (#1338)
This will allow us to rely on caching built into the DNS library.
1 parent e6316ac commit 8adc5a9

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

libs/dns-util/src/Wire/Network/DNS/Effect.hs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
module Wire.Network.DNS.Effect where
1919

2020
import Imports
21-
import Network.DNS (Domain)
21+
import Network.DNS (Domain, Resolver)
2222
import qualified Network.DNS as DNS
2323
import Polysemy
2424
import Wire.Network.DNS.SRV
@@ -34,3 +34,7 @@ runDNSLookupDefault =
3434
rs <- DNS.makeResolvSeed DNS.defaultResolvConf
3535
DNS.withResolver rs $ \resolver ->
3636
interpretResponse <$> DNS.lookupSRV resolver domain
37+
38+
runDNSLookupWithResolver :: Member (Embed IO) r => Resolver -> Sem (DNSLookup ': r) a -> Sem r a
39+
runDNSLookupWithResolver resolver =
40+
interpret $ \(LookupSRV domain) -> embed (interpretResponse <$> DNS.lookupSRV resolver domain)

0 commit comments

Comments
 (0)