package arp

  1. Overview
  2. Docs
Address Resolution Protocol purely in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

arp-0.2.2.tbz
md5=8d67c2cd2fecf82b10e7189c3760260f

Description

ARP is an implementation of the address resolution protocol (RFC826) purely in OCaml. It handles IPv4 protocol addresses and Ethernet hardware addresses only.

A MirageOS Mirage_protocols.ARP implementation is in the mirage subdirectory.

Motivation for this implementation is written up.

Published: 27 Aug 2018

README

ARP - Address Resolution Protocol purely in OCaml

0.2.2

ARP is an implementation of the address resolution protocol (RFC826) purely in OCaml. It handles IPv4 protocol addresses and Ethernet hardware addresses only.

A MirageOS Mirage_protocols.ARP implementation is in the mirage subdirectory.

Motivation for this implementation is written up.

Documentation

API documentation is available online, also a test suite and a coverage report.

Installation

opam install arp will install this library, once you have installed OCaml (>= 4.02.0) and opam (>= 1.2.2).

The Mirage interface depends on changes in the not yet released tcpip library, in order to get the latest, you'll need to opam repo add mirage-dev https://github.com/mirage/mirage-dev.git.

Benchmarks require more opam libraries, namely mirage-vnetif mirage-clock-unix mirage-unix nocrypto. Use ./bench/build.sh to build, it will produce a bench.native, which uses this implementation, and a mbench.native which uses the ARPv4 implementation of mirage-tcpip.

Dependencies (7)

  1. logs
  2. ipaddr >= "2.2.0" & < "3.0.0"
  3. cstruct >= "2.2.0" & < "6.1.0"
  4. topkg build
  5. ocamlbuild build
  6. ocamlfind build
  7. ocaml >= "4.04.2"

Dev Dependencies (2)

  1. nocrypto with-test
  2. alcotest with-test

Used by (1)

  1. mirage-nat >= "1.1.0" & < "2.1.0"

Conflicts (4)

  1. mirage-protocols >= "4.0.0"
  2. mirage-clock >= "3.0.0"
  3. mirage-types-lwt < "3.0.0"
  4. tcpip < "2.8.0"