package dnssd

  1. Overview
  2. Docs
DNS Service Discovery for macOS

Install

Dune Dependency

Authors

Maintainers

Sources

dnssd-0.5.0.tbz
md5=8208d2ee22d572ea42da2a1e258c5d5a

Description

This library contains bindings to the functions in dns_sd.h, which are used to perform generic DNS queries using the macOS resolver. This is the best way to ensure that the query results match the results obtained by other apps on OSX.

Usage example

In a toplevel:

Dnssd.query "dave.recoil.org" Dns.Packet.Q_A;;
- : (Dns.Packet.rr list, Dnssd.error) result =
Ok
  [{Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.A <abstr>};
   {Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.CNAME <abstr>};
   {Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.CNAME <abstr>}]

Tags

org:mirage

Published: 25 Jul 2017

README

OCaml DNS Service Discovery for macOS

This library contains bindings to the functions in dns_sd.h, which are used to perform generic DNS queries using the macOS resolver. This is the best way to ensure that the query results match the results obtained by other apps on OSX.

Usage example

In a toplevel:

Dnssd.query "dave.recoil.org" Dns.Packet.Q_A;;
- : (Dns.Packet.rr list, Dnssd.error) result =
Ok
  [{Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.A <abstr>};
   {Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.CNAME <abstr>};
   {Dns.Packet.name = <abstr>; cls = Dns.Packet.RR_IN; flush = false; ttl = 187l; rdata = Dns.Packet.CNAME <abstr>}]

Dependencies (7)

  1. jbuilder >= "1.0+beta10"
  2. cstruct >= "2.3.0"
  3. fmt
  4. logs
  5. lwt
  6. dns < "2.0.0"
  7. ocaml >= "4.03.0"

Dev Dependencies (1)

  1. alcotest with-test

Used by (1)

  1. vpnkit >= "0.1.1"

Conflicts

None