Presently rustls-ffi takes a dependency on the libc crate for the following imports:
size_t
c_void
c_char
c_uint
c_int
EINVAL
EIO
It looks like the core::ffi module has many of these same defines, and could potentially let us drop an external dependency.
Blockers:
I propose we wait for c_size_t to stablize and then replace libc with core::ffi::* and manually defined EINVAL/EIO.
Presently rustls-ffi takes a dependency on the
libccrate for the following imports:size_tc_voidc_charc_uintc_intEINVALEIOIt looks like the
core::ffimodule has many of these same defines, and could potentially let us drop an external dependency.Blockers:
core::ffi::c_size_tis unstable (upstream tracking issue).EINVALandEIOaren't present; I think we would need our own platform-gated constants for these.I propose we wait for
c_size_tto stablize and then replacelibcwithcore::ffi::*and manually definedEINVAL/EIO.