package arp

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

Install

Dune Dependency

Authors

Maintainers

Sources

arp-0.2.0.tbz
sha256=9721c9d90bf71085f1c7d73a3dde68a333501601a1632523fb45dba161d4cb09
md5=ee5ab7b8393217edd93533268f7ff8cf

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: 23 Feb 2017

README

ARP - Address Resolution Protocol purely in OCaml

0.2.0

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 (10)

  1. logs
  2. ipaddr >= "2.2.0" & < "3.0.0"
  3. ppx_cstruct < "3.4.0"
  4. cstruct >= "2.2.0" & < "3.4.0"
  5. result
  6. ppx_tools
  7. topkg build
  8. ocamlbuild build
  9. ocamlfind build
  10. ocaml >= "4.02.0"

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"
OCaml

Innovation. Community. Security.