package conduit

  1. Overview
  2. Docs
A network connection establishment library

Install

Dune Dependency

Authors

Maintainers

Sources

conduit-v4.0.1.tbz
sha256=500d95bf2a524f4851e94373e32d26b6e99ee04e5134db69fe6e151c3aad9b1f
sha512=449aa5d1c609adaa507791c3130eda634cba4f89f46d94e557a076a1add90f93b0db3b22c43e4cb67266a7f8a52d47f5aae49af8e60ef8d07e1ca9b1f2381186

Description

The conduit library takes care of establishing and listening for TCP and SSL/TLS connections for the Lwt and Async libraries.

The reason this library exists is to provide a degree of abstraction from the precise SSL library used, since there are a variety of ways to bind to a library (e.g. the C FFI, or the Ctypes library), as well as well as which library is used (just OpenSSL for now).

By default, OpenSSL is used as the preferred connection library, but you can force the use of the pure OCaml TLS stack by setting the environment variable CONDUIT_TLS=native when starting your program.

The useful opam packages available that extend this library are:

  • conduit: the main Conduit module
  • conduit-lwt: the portable Lwt implementation
  • conduit-lwt-unix: the Lwt/Unix implementation
  • conduit-async the Jane Street Async implementation
  • conduit-mirage: the MirageOS compatible implementation

Tags

org:mirage

Published: 08 Aug 2021

README

conduit -- an OCaml network connection establishment library

The conduit library takes care of establishing and listening for TCP and SSL/TLS connections for the Lwt and Async libraries.

The reason this library exists is to provide a degree of abstraction from the precise SSL library used, since there are a variety of ways to bind to a library (e.g. the C FFI, or the Ctypes library), as well as well as which library is used (just OpenSSL for now).

By default, OpenSSL is used as the preferred connection library, but you can force the use of the pure OCaml TLS stack by setting the environment variable CONDUIT_TLS=native when starting your program.

The opam packages available are:

  • conduit: the main Conduit module

  • conduit-lwt: the portable Lwt implementation

  • conduit-lwt-unix: the Lwt/Unix implementation

  • conduit-async the Jane Street Async implementation

  • conduit-mirage: the MirageOS compatible implementation

Debugging

Some of the Lwt_unix-based modules use a non-empty CONDUIT_DEBUG environment variable to output debugging information to standard error. Just set this variable when running the program to see what URIs are being resolved to.

Further Informartion

  • API Docs: https://mirage.github.io/ocaml-conduit/

  • WWW: https://github.com/mirage/ocaml-conduit

  • E-mail: mirageos-devel@lists.xenproject.org

  • Bugs: https://github.com/mirage/ocaml-conduit/issues

Dependencies (9)

  1. ipaddr-sexp
  2. ipaddr >= "4.0.0"
  3. logs >= "0.5.0"
  4. uri
  5. astring
  6. sexplib
  7. ppx_sexp_conv >= "v0.13.0"
  8. dune >= "2.0"
  9. ocaml >= "4.03.0"

Dev Dependencies

None

Used by (17)

  1. cohttp-lwt < "1.0.0"
  2. cohttp-mirage = "2.3.0" | >= "2.5.5"
  3. conduit-async = "4.0.1"
  4. conduit-lwt = "4.0.1"
  5. datakit < "0.9.0"
  6. datakit-bridge-github < "0.12.0"
  7. datakit-ci < "0.12.0"
  8. datakit-github < "0.9.0"
  9. git = "1.4.10" | >= "1.5.0" & < "1.10.0"
  10. git-unix < "1.11.1"
  11. irmin-cli
  12. irmin-unix >= "2.3.0"
  13. ketrew
  14. mirage-http >= "2.5.3"
  15. prof_spacetime
  16. websocket >= "2.0.0" & < "2.7" | >= "2.13" & < "2.15"
  17. yurt < "0.3"

Conflicts

None