Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ocaml-tls support #215

Open
copy opened this issue Dec 23, 2024 · 3 comments
Open

ocaml-tls support #215

copy opened this issue Dec 23, 2024 · 3 comments

Comments

@copy
Copy link

copy commented Dec 23, 2024

Note that there's a tls-eio bridge already on opam: https://github.com/mirleft/ocaml-tls/blob/main/eio/tls_eio.mli

@anmonteiro
Copy link
Owner

what's the value proposition of ocaml-tls for you in piaf?

I wasn't planning on adding support for OCaml-TLS, but if it's not too intrusive (read, no/minimal functors) I may merge it if someone else does the work.

@copy
Copy link
Author

copy commented Dec 23, 2024

what's the value proposition of ocaml-tls for you in piaf?

  1. Compiling OpenSSL is a pain. This affects me, because I want to compile statically on a platform that doesn't provide libssl.a. It may also be easier for people who want to cross-compile.
  2. Generally, avoid big C dependencies with poor security tracks
  3. Support MirageOS, which, as far as I know, only supports ocaml-tls

I wasn't planning on adding support for OCaml-TLS, but if it's not too intrusive (read, no/minimal functors) I may merge it if someone else does the work.

I will look into this. Would you be open to splitting the piaf package into piaf, piaf-ssl and piaf-tls?

@anmonteiro
Copy link
Owner

Support MirageOS, which, as far as I know, only supports ocaml-tls

I believe even after porting to ocaml-tls this won't support mirageOS right away: IIRC MirageOS currently has no EIO story, and Piaf will still depend on unix.

Would you be open to splitting the piaf package into piaf, piaf-ssl and piaf-tls?

I think I'd rather not do this, but won't say no right away. In the past I've gotten around functorization by using dune's select field (example)

The compilation / C-language footprint arguments make sense to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants