package ipaddr-sexp
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=f98d237cc1f783a0ba7dff0c6c69b5f519fec056950e3e3e7c15e5511ee5b7ec
sha512=28c8c4d525c2ab13e8561de5dfdb8922227ce652cd3c02e78c60daf2ba6844960864027c803f11fc3d1991a18ef864d8a0b95cd99e5f5d8452d3f66541367bd2
Description
Sexp convertions for ipaddr
README
ipaddr: IP and MAC address manipulation
A library for manipulation of IP and MAC address representations.
Features:
oUnit-based tests
IPv4 and IPv6 support
IPv4 and IPv6 CIDR prefix support
IPv4 and IPv6 CIDR-scoped address support
Ipaddr.V4
andIpaddr.V4.Prefix
modules areMap.OrderedType
Ipaddr.V6
andIpaddr.V6.Prefix
modules areMap.OrderedType
Ipaddr
andIpaddr.Prefix
modules areMap.OrderedType
Ipaddr_unix
in findlib subpackageipaddr.unix
provides compatibility with the standard libraryUnix
moduleIpaddr_top
in findlib subpackageipaddr.top
provides top-level pretty printersIP address scope classification
IPv4-mapped addresses in IPv6 (::ffff:0:0/96) are an embedding of IPv4
MAC-48 (Ethernet) address support
Macaddr
is aMap.OrderedType
All types have sexplib serializers/deserializers optionally via the
Ipaddr_sexp
andMacaddr_sexp
libraries.
Usage
There are the following opam packages included:
ipaddr
: theIpaddr
and associated modulesipaddr-sexp
ipaddr-cstruct
macaddr
: theMacaddr
and associated modules.macaddr-sexp
macaddr-cstruct
There are the following ocamlfind libraries included as part of this repository, included as part of the respective opam packages.
ipaddr
: TheIpaddr
module for IPv4/6 manipulation.ipaddr.top
: Toplevel printers for Ipaddr.ipaddr-cstruct
: TheIpaddr_cstruct
modulemacaddr
: TheMacaddr
module for MAC address manipulation.macaddr.top
: Toplevel printers for Macaddr.macaddr-cstruct
: TheMacaddr_cstruct
moduleipaddr-sexp
: S-expression converters for Ipaddr.macaddr-sexp
: S-expression converters for Macaddr.
Installation and development
The packages are released to the opam-repository. An opam install ipaddr
(or any other above mentioned package) will install it. If you want to install the latest development commit, opam pin add ipaddr --dev
will do this.
A local build, after a git clone
can be done with dune build
, a dune runtest
compiles and executes the testsuite. If dependencies are missing, opam install (-t) --deps-only .
in the cloned directory will install them.
The auto-formatter ocamlformat
is used, please execute dune build @fmt --auto-promote
before submitting a pull request.
Contact
API Documentation: http://docs.mirage.io/ipaddr/
Discussion: https://discuss.ocaml.org with the
mirageos
tag.
Dependencies (5)
- sexplib0
-
ppx_sexp_conv
>= "v0.9.0"
-
ipaddr
= version
-
dune
>= "1.9.0"
-
ocaml
>= "4.04.0"
Dev Dependencies (2)
-
ounit
with-test
-
ipaddr-cstruct
with-test & = version
Used by (8)
-
charrua
>= "1.1.0"
-
charrua-server
>= "1.1.0"
-
conduit
>= "1.5.0" & != "3.0.0"
-
conduit-async
>= "4.0.1"
-
conduit-lwt-unix
>= "1.5.0"
-
conduit-mirage
!= "3.0.0"
-
mirage-conduit
>= "3.2.0"
-
tls
>= "0.15.0" & < "0.17.0"
Conflicts
None