To focus the search input from anywhere on the page, press the 'S' key.
in-package search v0.1.0
Charrua DHCP - a DHCP client, server and wire frame encoder and decoder
charrua is an
ISC-licensed DHCP library implementation in OCaml.
It provides three packages:
charrua-core: a library that handles wire traffic parsing and a server implementation
charrua-client: a library for handling DHCP client state and messages
charrua-client-lwt: a DHCP client library with timeouts and network read/write
charrua-client-mirage: a MirageOS-compatible set of interfaces to charrua-client-lwt
charrua-unix: a Unix DHCP server implementation
Charrua-core consists of two modules, a
Dhcp_wire responsible for parsing and
constructing DHCP messages and a
Dhcp_server module used for constructing DHCP
You can browse the API for charrua-core at
is a Mirage DHCP unikernel server based on charrua-core.
Dhcp_serversupports a stripped down ISC dhcpd.conf, so you can probably just
use your old
dhcpd.conf, it also supports manual configuration building in
Logic/sequencing is agnostic of IO and platform, so it can run on Unix as a
process, as a Mirage unikernel or anything else.
Dhcp_wireprovides marshalling and unmarshalling utilities for DHCP, it is the
All DHCP options are supported at the time of this writing.
Code is purely applicative.
It's in OCaml, so it's pretty cool.
charrua is a reference to the, now extinct, semi-nomadic people of
southern South America.
charrua-client is a DHCP client powered by charrua-core.
The base library exposes a simple state machine in
for use in acquiring a DHCP lease.
charrua-client with a functor
using the provided modules for timing and networking logic,
for convenient use by a program which might wish to implement a full client.
charrua-client-mirage exposes an additional
Dhcp_client_mirage for direct use
with the MirageOS library operating system.
charrua-unix is an ISC-licensed Unix DHCP daemon based on
Supports a stripped down ISC dhcpd.conf. A configuration sample can be found
Priviledge dropping, the daemon doesn't run as root.
Almost purely-functional code.
Support for multiple interfaces/subnets.
charruad --help for options.
This project became one of the Mirage Pioneer