$ compendium/cli

The dnsd CLI

A single APE binary that reads a config and serves UDP.

Usage

// dnsd.com --config <file> [--port n] [--address ip]
dnsd.com --config config.example.dhall
dnsd.com -c config.example.dhall -p 5353 -a 127.0.0.1
  • -c, --config <file> — Dhall config (required).
  • -p, --port <n> — listen port (default 5353).
  • -a, --address <ip> — listen address (default 127.0.0.1).

Build

// Makefile · cosmocc
# fetch the dhall-c interpreter core (once after clone)
$ git submodule update --init
# build dnsd.com + dnsd.com.dbg
$ make
# run the full suite (config/lookup/query/wire/rl + live UDP)
$ make test

Requires cosmocc (Cosmopolitan toolchain). The dhall-c interpreter core is a git submodule at ./dhall-c (override with DHALL_C=<path>).