package ipaddr
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=2e8f35b1ddf3f5b9847f59fccdd61475e7771f34d693fa69271b41ff9119c7ac
sha512=b2a250e96ad10376f592c38df7f5d2d849d58252dad787176d24f8d41c3c5f8420dfe215f50fee32046f84a45d8327ff2a317b50ce96266094d8df34bda5ab73
Description
Features:
- Depends only on sexplib (conditionalization under consideration)
- 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 printers (requires compiler-libs default since OCaml 4.0)- IP 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
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.
Contact
API Documentation: http://docs.mirage.io/ipaddr/
Discussion: https://discuss.ocaml.org with the
mirageos
tag.
Dependencies (5)
-
domain-name
>= "0.3.0"
- stdlib-shims
-
macaddr
= version
-
dune
>= "1.9"
-
ocaml
>= "4.04.0"
Dev Dependencies (2)
-
ppx_sexp_conv
with-test & >= "v0.9.0"
-
ounit
with-test
Used by (87)
-
albatross
< "1.4.3"
-
arp
>= "2.1.0"
- builder-web
-
caqti
>= "2.0.1"
-
caqti-async
>= "2.1.1"
-
caqti-driver-pgx
>= "2.1.1"
-
caqti-lwt
>= "2.1.1"
-
caqti-mirage
>= "2.1.1"
-
charrua
>= "1.2.2"
-
charrua-client
>= "1.1.0"
-
charrua-client-lwt
>= "0.11.1"
- charrua-client-mirage
-
charrua-server
< "1.1.0" | >= "1.2.2"
-
charrua-unix
= "0.6"
-
cohttp-async
>= "3.0.0"
- colombe
-
conduit
>= "1.5.0"
-
conduit-async
>= "1.4.0" & != "3.0.0"
-
conduit-lwt-unix
>= "1.5.0"
-
conduit-mirage
!= "3.0.0"
- corosync
-
dkim
>= "0.2.0"
-
dns
>= "0.8.0" & < "0.10.0" | >= "1.1.3" & < "6.0.0"
- dns-cli
-
dns-client
< "6.2.0"
-
dns-mirage
< "6.0.0"
-
eliom
>= "4.0.0"
- emile
-
frenetic
>= "3.2.0" & < "5.0.5"
- git-paf
-
happy-eyeballs
< "0.0.4"
- happy-eyeballs-lwt
- happy-eyeballs-mirage
- ip2location
-
ipaddr-cstruct
= "5.0.0"
-
ipaddr-sexp
= "5.0.0"
- irmin-client
- jitsu
-
learn-ocaml
>= "0.12" & < "0.14.0"
-
learn-ocaml-client
< "0.13.0"
-
mbr-format
< "1.0.0"
- metrics-mirage
- miou
-
mirage
>= "0.10.0" & < "2.9.0" | >= "3.8.0"
-
mirage-block-xen
>= "1.1.0" & < "2.0.0"
-
mirage-bootvar-xen
< "0.4.0"
-
mirage-conduit
>= "3.2.0"
- mirage-console-xen-cli
-
mirage-entropy-unix
< "0.2.0"
-
mirage-entropy-xen
< "0.2.0"
-
mirage-nat
< "1.2.0" | >= "2.2.2"
- mirage-net-fd
-
mirage-net-xen
>= "2.1.4"
-
mirage-protocols
>= "4.0.0"
-
mirage-protocols-lwt
>= "1.4.1"
-
mirage-qubes-ipv4
>= "0.6.1"
-
mirage-runtime
>= "3.8.0" & < "4.5.0"
- mirage-stack-lwt
-
mirage-types-lwt
< "3.7.1"
-
mirage-unix
>= "0.9.4" & < "0.9.9"
-
mirage-vnetif
>= "0.4.1"
- mirage-vnetif-stack
-
mirage-www
>= "1.1.0"
-
mirage-xen
>= "0.9.5" & < "0.9.9"
-
mirari
>= "0.9.6"
- mrmime
-
mrt-format
>= "0.3.0"
- nanomsg
-
netchannel
>= "1.8.1"
-
ocsigenserver
>= "2.4.0"
- paf-cohttp
-
pcap-format
= "0.4.0"
- pf-qubes
-
pgx
>= "1.0"
-
piaf
>= "0.2.0"
-
sendmail-lwt
>= "0.10.0"
-
tcpip
>= "3.6.0" & < "8.1.0"
-
tezos-base
>= "8.0"
- tezos-stdlib-unix
-
tls
>= "0.15.0"
-
tuntap
>= "2.0.0"
-
vchan
>= "0.9.6" & < "2.0.0"
-
vhd-format
>= "0.7.0" & < "0.9.1"
- vpnkit
- websocket-lwt
-
x509
= "0.7.0"
- xentropyd
Conflicts
None