package tcpip
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=86ba5d92f9078bddc65312f63b5f4ce34fd2570d765433b23a226ab84d75a9c0
    
    
  sha512=a348a597cf4ba1e19f7fc97d6d1cb980711d09b6944efacba91d23daf419fc8cb8a83a2d263bcc7b96ff5d37ad5dbfa4a3879db9ac4c0b35528b80acb87cf8f7
    
    
  Description
mirage-tcpip provides a networking stack for the Mirage operating
system. It provides implementations for the following module types
(which correspond with the similarly-named protocols):
- IP (via the IPv4 and IPv6 modules)
- ICMP
- UDP
- TCP
README
mirage-tcpip - an OCaml TCP/IP networking stack
mirage-tcpip provides a networking stack for the Mirage operating system. It provides implementations for the following module types (which correspond with the similarly-named protocols):
- IP (via the IPv4 and IPv6 modules)
- ICMP
- UDP
- TCP
Implementations
There are two implementations of the IP, ICMP, UDP, and TCP module types - the socket stack, and the direct stack.
The socket stack
The socket stack uses socket calls to a traditional operating system to provide the functionality described in the module types.
See the src/stack-unix/ directory for the modules used as implementations of the socket stack.
The socket stack is used for testing or other applications which do not expect to run as unikernels.
The direct stack
The direct stack expects to write to a device implementing the NETIF module type defined for MirageOS.
See the src/ directory for the modules used as implementations of the direct stack, which is the expected stack for most MirageOS applications.
The direct stack is the only usable set of implementations for applications which will run as unikernels on a hypervisor target.
Community
- WWW: https://mirage.io
- E-mail: mirageos-devel@lists.xenproject.org
- Issues: https://github.com/mirage/mirage-tcpip/issues
- API docs: http://docs.mirage.io/tcpip/index.html
License
mirage-tcpip is distributed under the ISC license.
Dependencies (25)
- 
  
    cmdliner
  
  
    >= "1.1.0"
- metrics
- 
  
    lru
  
  
    >= "0.3.0"
- macaddr-cstruct
- ipaddr-cstruct
- 
  
    mirage-flow
  
  
    >= "4.0.0"
- 
  
    arp
  
  
    >= "3.0.0" & < "4.0.0"
- 
  
    ethernet
  
  
    >= "3.0.0"
- 
  
    randomconv
  
  
    < "0.2.0"
- duration
- 
  
    logs
  
  
    >= "0.6.0"
- lwt-dllist
- 
  
    lwt
  
  
    >= "4.0.0"
- 
  
    fmt
  
  
    >= "0.8.7"
- macaddr-cstruct
- 
  
    macaddr
  
  
    >= "4.0.0"
- 
  
    ipaddr
  
  
    >= "5.6.0"
- 
  
    mirage-time
  
  
    >= "2.0.0"
- 
  
    mirage-random
  
  
    >= "2.0.0" & < "4.0.0"
- 
  
    mirage-clock
  
  
    >= "3.0.0"
- 
  
    mirage-net
  
  
    >= "3.0.0"
- cstruct-lwt
- 
  
    cstruct
  
  
    >= "6.0.0"
- 
  
    ocaml
  
  
    >= "4.08.0"
- 
  
    dune
  
  
    >= "2.7.0"
Dev Dependencies (6)
- 
  
    mirage-crypto-rng
  
  
    with-test & >= "0.11.0" & < "1.0.0"
- 
  
    mirage-clock-unix
  
  
    with-test & >= "3.0.0"
- 
  
    pcap-format
  
  
    with-test
- 
  
    alcotest
  
  
    with-test & >= "1.5.0"
- 
  
    mirage-vnetif
  
  
    with-test & >= "0.6.2"
- 
  
    bisect_ppx
  
  
    dev & >= "2.5.0"
Used by (32)
- caldav
- caqti-mirage
- 
  
    charrua
  
  
    < "2.0.0"
- 
  
    charrua-client
  
  
    < "2.0.0"
- 
  
    charrua-server
  
  
    < "2.0.0"
- 
  
    charrua-unix
  
  
    < "2.0.0"
- 
  
    conduit-mirage
  
  
    >= "6.2.2"
- 
  
    dkim-mirage
  
  
    < "0.8.0"
- 
  
    dns-certify
  
  
    < "9.1.0"
- 
  
    dns-client
  
  
    >= "6.3.0" & < "7.0.3"
- 
  
    dns-client-mirage
  
  
    < "9.1.0"
- 
  
    dns-mirage
  
  
    < "9.1.0"
- 
  
    dns-resolver
  
  
    < "9.1.0"
- 
  
    dns-server
  
  
    < "9.1.0"
- 
  
    dns-stub
  
  
    < "9.1.0"
- git-mirage
- git-net
- git-paf
- 
  
    git-unix
  
  
    >= "3.2.0"
- happy-eyeballs-mirage
- http-mirage-client
- letsencrypt-mirage
- mehari-lwt-unix
- mehari-mirage
- mirage-monitoring
- mirage-nat
- 
  
    mirage-qubes-ipv4
  
  
    < "1.0.0"
- paf
- paf-cohttp
- 
  
    pgx_lwt_mirage
  
  
    >= "2.1"
- spoke
- vpnkit
Conflicts (3)
- 
  
    result
  
  
    < "1.5"
- ocaml-freestanding
- 
  
    mirage-xen
  
  
    < "6.0.0"