Age | Commit message (Collapse) | Author |
|
|
|
|
|
We temporarily committed this file while working on the 0.21 branch, so
we could lock a specific commit of the upstream rustls. Now we go back
to our default stance as a library, which is to not lock our
dependencies.
|
|
Change the rustls dependency to a `git` repository.
Temporarily remove Cargo.lock from .gitignore and commit it. This allows
us to fix a specific rustls commit for this branch, and periodically and
explicitly updated it with `cargo update`. Before merging to main we
will:
- remove Cargo.lock
- restore Cargo.lock to .gitignore.
- change the rustls dependency to a released Cargo version
|
|
This adds a cross-platform CMake build system, which supports basic
building and testing on Linux, macOS and Windows. (It does not
yet have parity on Linux/macOS debug builds, sanitizer builds, or
running test harnesses, but those could be added in the future with
CMAKE_BUILD_TYPE conditionals and CTest. It also doesn't cover the
install step yet.) I also rewrote the bash test harnesses in Python,
as a cross-platform substitute, and fixed a couple portability issues
with the test programs.
* Added CMake projects.
* Added Python versions of shell scripts.
* Moved Windows compatibility defines to common.h, so common.c would
see them. (Prior to this, read_cb was checking `errno` rather than
`WSAGetLastError()`, failing to properly handle `WSAEWOULDBLOCK`,
and reporting an EOF too early.
* Added a forward declaration of `ws_strerror()`. Without this declaration,
the compiler would assume it returned an `int` rather than a pointer, which
resulted in the pointer getting truncated, and a later `fprintf` call performing
a wild read. (In retrospect, this was foretold in #235)
* Added CMake CI jobs on Windows, macOS, and Linux.
Fixes #192, fixes #121
|
|
Previously, crustls.h was only generated at build time. However, this
made it hard for visitors to the repo to see what the C API looks like.
Now, crustls.h is checked in, with a CI test to verify the current
version matches what `make` produces.
|
|
Add Makefile.Windows (thanks @gvanem!).
Update Makefile to know about crustls.h header name in more places.
Add crustls.h to .gitignore.
Configure cbindgen to create header guards.
|
|
|