Ocaml Dns Versions Save

OCaml implementation of the DNS protocol

v8.0.0

2 weeks ago

CHANGES:

  • dns-client (lwt, mirage): depend on happy-eyeballs-{lwt,mirage} instead of duplicating the code. This requires happy-eyeballs 1.1.0, and now the same Happy_eyeballs_{lwt,mirage}.t is used for DNS (connecting to the nameserver) and for the application (connecting to a remote host) (@dinosaure @hannesm #346)
  • server: improve API documentation (@hannesm 1a80bd4080e597687152cf351d035ef5f00c5946 000ae02dfc477d91c05891e3891a447328ae448a)
  • server: add a packet_callback to handle_packet and handle_buf (@RyanGibb #349)
  • server: expose update_data (@RyanGibb #350)
  • resolver: b root name server IP change (@hannesm #348)
  • secondary server [mirage]: avoid infinite loop in connect (avoids SYN floods) (@hannesm @reynir #347)
  • resolver, dns_zone: use consistently Log instead of Logs (@palainp #342)

v7.0.3

11 months ago

CHANGES:

  • dns-client-lwt, dns-client-mirage: adapt to happy-eyeballs 0.6 changes, also avoid unnecessary recursion (#340 @hannesm, @reynir)

v7.0.2

1 year ago

CHANGES:

  • dns-server: for secondary servers use the right zone transfers and keys, fixed in #339 by @hannesm
  • dns: add support for null record (arbitrary binary data) (#338 @RyanGibb)

v7.0.1

1 year ago

CHANGES:

  • dns-server.zone: fix parsing of zone files that contain tokens such as N S E W -<number> <number>m DS CAA TYPE<number>. There was an inconsistency in the Dns_zone_parser.keyword_or_number rule. Test cases have been added, a comment has been added to the Dns_zone_lexer.kw_or_cs function. Discovered while updating the primary NS with an entry of "e.ns", fixed in #336 @hannesm Broken since the early days of this development

v7.0.0

1 year ago

CHANGES:

  • BREAKING: dns-client is split into 3 packages: dns-client-lwt, dns-client-mirage. If your dune file contains dns-client.lwt, use dns-client-lwt now. If your dune file contains dns-client.mirage, use dns-client-mirage now (#331 @hannesm)
  • update to mirage-crypto 0.11.0 API changes and tls 0.16.0 packaging changes (#331 @hannesm)
  • dns-client.resolvconf: add line number to parser (#334 @hannesm, inspired by #328 @bikallem)
  • dns-client.resolvconf: allow zone idx (RFC 4007) for IPv6 entries (#334 @hannesm, inspired by #328 @bikallem)
  • dns-server.zone: allow zone files without final newline (add a newline to the buffer if the last character is not \n) (#333 @hannesm)
  • dns-client-{lwt,mirage}: do not log when the resolver closed the connection, but there are no pending requests (#332 @reynir)
  • dns-certify: in Dns_certify_mirage use X509.Private_key.of_string, the behaviour when both key_data and key_seed is provided changed, and leads to an exception now (#330 @hannesm)

v6.4.1

1 year ago

CHANGES:

  • dns-client: adapt to happy eyeballs 0.4.0 (#329 @reynir @hannesm)
  • dns-resolver: dnssec validation is optional via a labeled parameter ~dnssec passed to Dns_resolver.create (#325 @hannesm)
  • upgrade to dune 2 (#327 @reynir)

v6.4.0

1 year ago

CHANGES:

  • dns-client: demote log level of response to debug (#317 @hannesm)
  • dns-client: use DNS-over-TLS for uncensoreddns.org only (#320 @hannesm)
  • API: dns-client: connect returns the protocol (UDP/TCP), allowing mixed UDP and TCP namerservers being used (#322 @hannesm)
  • dns-client-mirage: allow hostname in authenticator, improve error message and documentation (#319 #322 @hannesm)
  • dns-client-mirage: support UDP nameservers as "udp:<IP>" in nameserver_of_string (#322 @reynir @hannesm)
  • API: dns-client, dns-stub, dns-resolver: ?size is now ?cache_size (#322 @hannesm, suggested by @reynir)

v6.3.0

1 year ago

CHANGES:

  • dns-server: demote log level for various messages (#309 @hannesm)
  • dns-zone: add additional glue: only add if authoritative for nameserver domain (#309 @hannesm)
  • BUGFIX: dns-trie: fix lookup when delegations are present, add tests (#309 @hannesm)
  • ozone: be more explicit when showing errors (#311 @psafont)
  • dns: avoid polymorphic comparison (#314 @hannesm, reported by @RyanGibb)
  • FEATURE: dns: add LOC resource records (RFC 1876) (#310 @RyanGibb)

v6.2.2

2 years ago

CHANGES:

  • BUGFIX dns-trie: the collect_entries function jumped over zone boundaries. This lead dns-primary-git to detect changes in zones with subdomains delegated to the same name servers, leading to dropping of zones (#308 @hannesm, reported by @reynir)
  • BUGFIX dns-server.text: add address glue records for name servers out of the authority of this server. This is crucial since dns-primary-git supports such glue records to notify these about zone updates (#307 @hannesm)
  • New functionality in dns-zone (dns-server.zone): decode_keys, decode_zones, and decode_zones_keys copied from dns-primary-git for reusing in other projects (#307 @hannesm)

v6.2.1

2 years ago

CHANGES:

  • BUGFIX dns: RTYPE is 16 bit, previously 15 bit were accepted, also check for being positive (#304, @hannesm @reynir)
  • dns-server: dns-trie zone check no longer enforces that the nameserver is in the nameserve set of the zone, this enables hidden primary setups (fixes #303, @hannesm)