package mirage-conduit
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=2b3c74998af84fb6ac1e0f81d8881401adf14b64fa54e7717e797bb2ccc3d1cc
md5=4656f150b9f98603c21d00c8f0aa1a9b
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.
### Modules
Source code is in lib/
.
Conduit_lwt_unix
has the Lwt UNIX modules.Conduit_async
has the Core/Async modules.
There are also resolvers that map URIs to Conduit endpoints.
See http://mirage.github.io/ocaml-conduit/ for the online ocamldoc
for more details.
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
- WWW: https://github.com/mirage/ocaml-conduit
- E-mail: mirageos-devel@lists.xenproject.org
- Bugs: https://github.com/mirage/ocaml-conduit/issues
README
README.md
OCaml network conduit 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 mainConduit
moduleconduit-lwt
: the portable Lwt implementationconduit-lwt-unix
: the Lwt/Unix implementationconduit-async
the Jane Street Async implementationmirage-conduit
: 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: http://docs.mirage.io/
WWW: https://github.com/mirage/ocaml-conduit
Bugs: https://github.com/mirage/ocaml-conduit/issues
Dependencies (11)
-
tls
>= "0.8.0" & < "0.11.0"
-
vchan
>= "3.0.0"
-
ipaddr
< "3.0.0"
- conduit-lwt
-
mirage-dns
>= "3.0.0" & < "4.0.0"
-
mirage-flow-lwt
>= "1.2.0"
-
mirage-types-lwt
>= "3.0.0" & < "3.7.0"
-
cstruct
>= "3.0.0"
- ppx_sexp_conv
-
jbuilder
>= "1.0+beta10"
-
ocaml
>= "4.03.0"
Dev Dependencies
None
Used by (4)
-
cohttp-mirage
< "2.3.0"
-
git-mirage
>= "1.11.2" & < "2.1.1"
-
h2-mirage
< "0.4.0"
-
mirage-http
>= "2.3.0"
Conflicts
None