opam-version: "2.0"
maintainer: "anil@recoil.org"
authors: [
  "Anil Madhavapeddy"
  "Tim Deegan"
  "Richard Mortier"
  "Haris Rotsos"
  "David Sheets"
  "Thomas Gazagnaire"
  "Luke Dunstan"
  "David Scott"
]
license: "ISC"
synopsis: "DNS client and server implementation in pure OCaml"
description: """
This is a pure OCaml implementation of the DNS protocol.  It is intended to be
a reasonably high-performance implementation, but clarity is preferred rather
than low-level performance hacks.

There are several concrete implementations using this package that you probably
want to use for practical purposes:

- dns-lwt for the Lwt concurrency library
- dns-lwt-unix using the Lwt_unix bindings
- dns-async using the Jane Street Async library
- mirage-dns for the MirageOS unikernel framework
"""
tags: ["org:mirage" "org:xapi-project"]
homepage: "https://github.com/mirage/ocaml-dns"
doc: "https://mirage.github.io/ocaml-dns/"
bug-reports: "https://github.com/mirage/ocaml-dns/issues"
depends: [
  "ocaml" {>= "4.03.0"}
  "dune"
  "cstruct" {>= "3.0.2" & < "6.0.0"}
  "ppx_cstruct"
  "re" {>= "1.7.2"}
  "domain-name" {<"0.3.0"}
  "ipaddr" {>= "2.6.0" & < "4.0.0"}
  "uri" {>= "1.7.0"}
  "base64" {>= "3.0.0"}
  "hashcons"
  "result"
]
build: [
  ["dune" "subst"] {pinned}
  ["dune" "build" "-p" name "-j" jobs]
]
dev-repo: "git+https://github.com/mirage/ocaml-dns.git"
url {
  src:
    "https://github.com/mirage/ocaml-dns/releases/download/v1.1.1/dns-v1.1.1.tbz"
  checksum: "md5=42a49a41d3b53567e074b864926d4411"
}
