diff --git a/.github/workflows/libssl.yaml b/.github/workflows/libssl.yaml index 0b5211e..1563233 100644 --- a/.github/workflows/libssl.yaml +++ b/.github/workflows/libssl.yaml @@ -10,10 +10,6 @@ on: schedule: - cron: '15 12 * * 3' -defaults: - run: - working-directory: rustls-libssl - jobs: build: name: Build+test @@ -263,5 +259,5 @@ jobs: uses: actions/upload-artifact@v4 with: name: ${{ matrix.package }} package built on ${{ matrix.container }} ${{ matrix.version }} - path: rustls-libssl/target/dist/*.${{ matrix.package }} + path: target/dist/*.${{ matrix.package }} if-no-files-found: error diff --git a/rustls-libssl/Cargo.lock b/Cargo.lock similarity index 100% rename from rustls-libssl/Cargo.lock rename to Cargo.lock diff --git a/rustls-libssl/Cargo.toml b/Cargo.toml similarity index 100% rename from rustls-libssl/Cargo.toml rename to Cargo.toml diff --git a/rustls-libssl/LICENSE b/LICENSE similarity index 100% rename from rustls-libssl/LICENSE rename to LICENSE diff --git a/rustls-libssl/MATRIX.md b/MATRIX.md similarity index 100% rename from rustls-libssl/MATRIX.md rename to MATRIX.md diff --git a/rustls-libssl/Makefile b/Makefile similarity index 100% rename from rustls-libssl/Makefile rename to Makefile diff --git a/README.md b/README.md index 2f82420..d324bad 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,64 @@ -# rustls-openssl-compat +

+ +

-This is the planned home of several rustls to OpenSSL compatibility layers. -Currently here: +rustls-libssl is a partial reimplementation of the OpenSSL 3 libssl ABI. +It is written in rust and uses rustls. It does not replace libcrypto: +this is still required. -- **[rustls-libssl](rustls-libssl/)**: an implementation of the OpenSSL libssl ABI in terms of rustls. +[![rustls-libssl](https://github.com/rustls/rustls-openssl-compat/actions/workflows/libssl.yaml/badge.svg)](https://github.com/rustls/rustls-openssl-compat/actions/workflows/libssl.yaml) -Not yet here: +# Status -- **rustls-libcrypto**: an implementation of rustls `CryptoProvider` in terms of OpenSSL's libcrypto. +This project is experimental. We have aimed for the subset of libssl +used by: + +- curl on Ubuntu 22.04 LTS +- nginx on Ubuntu 22.04 LTS and 24.04 LTS +- nginx on Fedora 40 + +We have a [compatibility matrix](MATRIX.md) and +[known issues](https://github.com/rustls/rustls-openssl-compat/issues). + +# Usage + +## Installation +Ubuntu/Debian users: + +```shell +$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl_amd64.deb +$ sudo dpkg -i rustls-libssl_amd64.deb +``` + +or Fedora/Redhat users: + +```shell +$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl.x86_64.rpm +$ sudo yum localinstall -y rustls-libssl.x86_64.rpm +``` + +Using curl: + +```shell +$ with-rustls-libssl curl https://google.com/ +``` + +`with-rustls-libssl` just sets `LD_LIBRARY_PATH` and executes the given process. + +Using nginx: + +```shell +$ sudo rustls-libssl-nginx enable +$ sudo systemctl daemon-reload +$ sudo service nginx restart +``` + +`rustls-libssl-nginx enable` installs a systemd drop-in in `/etc/systemd/system/nginx.service.d/`. +`rustls-libssl-nginx disable` undoes that. + +# Changelog +The detailed list of changes in each release can be found at +https://github.com/rustls/rustls-openssl-compat/releases. + +# License +rustls-libssl is distributed under the Apache-2.0 license. See [LICENSE](LICENSE). diff --git a/rustls-libssl/admin/format b/admin/format similarity index 100% rename from rustls-libssl/admin/format rename to admin/format diff --git a/rustls-libssl/admin/libssl.num b/admin/libssl.num similarity index 100% rename from rustls-libssl/admin/libssl.num rename to admin/libssl.num diff --git a/rustls-libssl/admin/matrix.py b/admin/matrix.py similarity index 100% rename from rustls-libssl/admin/matrix.py rename to admin/matrix.py diff --git a/rustls-libssl/admin/sort-entrypoints.py b/admin/sort-entrypoints.py similarity index 100% rename from rustls-libssl/admin/sort-entrypoints.py rename to admin/sort-entrypoints.py diff --git a/rustls-libssl/build.rs b/build.rs similarity index 100% rename from rustls-libssl/build.rs rename to build.rs diff --git a/rustls-libssl/dist/bin/rustls-libssl-nginx b/dist/bin/rustls-libssl-nginx similarity index 100% rename from rustls-libssl/dist/bin/rustls-libssl-nginx rename to dist/bin/rustls-libssl-nginx diff --git a/rustls-libssl/dist/bin/with-rustls-libssl b/dist/bin/with-rustls-libssl similarity index 100% rename from rustls-libssl/dist/bin/with-rustls-libssl rename to dist/bin/with-rustls-libssl diff --git a/rustls-libssl/dist/nfpm.yaml b/dist/nfpm.yaml similarity index 100% rename from rustls-libssl/dist/nfpm.yaml rename to dist/nfpm.yaml diff --git a/rustls-libssl/dist/share/50-rustls-libssl.conf b/dist/share/50-rustls-libssl.conf similarity index 100% rename from rustls-libssl/dist/share/50-rustls-libssl.conf rename to dist/share/50-rustls-libssl.conf diff --git a/rustls-libssl/dist/test/deb-ubuntu-22/Dockerfile b/dist/test/deb-ubuntu-22/Dockerfile similarity index 100% rename from rustls-libssl/dist/test/deb-ubuntu-22/Dockerfile rename to dist/test/deb-ubuntu-22/Dockerfile diff --git a/rustls-libssl/dist/test/deb-ubuntu-22/nginx.conf b/dist/test/deb-ubuntu-22/nginx.conf similarity index 100% rename from rustls-libssl/dist/test/deb-ubuntu-22/nginx.conf rename to dist/test/deb-ubuntu-22/nginx.conf diff --git a/rustls-libssl/dist/test/deb-ubuntu-22/run-test.sh b/dist/test/deb-ubuntu-22/run-test.sh similarity index 100% rename from rustls-libssl/dist/test/deb-ubuntu-22/run-test.sh rename to dist/test/deb-ubuntu-22/run-test.sh diff --git a/rustls-libssl/dist/test/deb-ubuntu-24/Dockerfile b/dist/test/deb-ubuntu-24/Dockerfile similarity index 100% rename from rustls-libssl/dist/test/deb-ubuntu-24/Dockerfile rename to dist/test/deb-ubuntu-24/Dockerfile diff --git a/rustls-libssl/dist/test/rpm-fedora-40/Dockerfile b/dist/test/rpm-fedora-40/Dockerfile similarity index 100% rename from rustls-libssl/dist/test/rpm-fedora-40/Dockerfile rename to dist/test/rpm-fedora-40/Dockerfile diff --git a/rustls-libssl/dist/test/rpm-fedora-40/nginx.conf b/dist/test/rpm-fedora-40/nginx.conf similarity index 100% rename from rustls-libssl/dist/test/rpm-fedora-40/nginx.conf rename to dist/test/rpm-fedora-40/nginx.conf diff --git a/rustls-libssl/README.md b/rustls-libssl/README.md deleted file mode 100644 index d324bad..0000000 --- a/rustls-libssl/README.md +++ /dev/null @@ -1,64 +0,0 @@ -

- -

- -rustls-libssl is a partial reimplementation of the OpenSSL 3 libssl ABI. -It is written in rust and uses rustls. It does not replace libcrypto: -this is still required. - -[![rustls-libssl](https://github.com/rustls/rustls-openssl-compat/actions/workflows/libssl.yaml/badge.svg)](https://github.com/rustls/rustls-openssl-compat/actions/workflows/libssl.yaml) - -# Status - -This project is experimental. We have aimed for the subset of libssl -used by: - -- curl on Ubuntu 22.04 LTS -- nginx on Ubuntu 22.04 LTS and 24.04 LTS -- nginx on Fedora 40 - -We have a [compatibility matrix](MATRIX.md) and -[known issues](https://github.com/rustls/rustls-openssl-compat/issues). - -# Usage - -## Installation -Ubuntu/Debian users: - -```shell -$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl_amd64.deb -$ sudo dpkg -i rustls-libssl_amd64.deb -``` - -or Fedora/Redhat users: - -```shell -$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl.x86_64.rpm -$ sudo yum localinstall -y rustls-libssl.x86_64.rpm -``` - -Using curl: - -```shell -$ with-rustls-libssl curl https://google.com/ -``` - -`with-rustls-libssl` just sets `LD_LIBRARY_PATH` and executes the given process. - -Using nginx: - -```shell -$ sudo rustls-libssl-nginx enable -$ sudo systemctl daemon-reload -$ sudo service nginx restart -``` - -`rustls-libssl-nginx enable` installs a systemd drop-in in `/etc/systemd/system/nginx.service.d/`. -`rustls-libssl-nginx disable` undoes that. - -# Changelog -The detailed list of changes in each release can be found at -https://github.com/rustls/rustls-openssl-compat/releases. - -# License -rustls-libssl is distributed under the Apache-2.0 license. See [LICENSE](LICENSE). diff --git a/rustls-libssl/src/bio.rs b/src/bio.rs similarity index 100% rename from rustls-libssl/src/bio.rs rename to src/bio.rs diff --git a/rustls-libssl/src/cache.rs b/src/cache.rs similarity index 100% rename from rustls-libssl/src/cache.rs rename to src/cache.rs diff --git a/rustls-libssl/src/callbacks.rs b/src/callbacks.rs similarity index 100% rename from rustls-libssl/src/callbacks.rs rename to src/callbacks.rs diff --git a/rustls-libssl/src/conf.rs b/src/conf.rs similarity index 100% rename from rustls-libssl/src/conf.rs rename to src/conf.rs diff --git a/rustls-libssl/src/constants.rs b/src/constants.rs similarity index 100% rename from rustls-libssl/src/constants.rs rename to src/constants.rs diff --git a/rustls-libssl/src/entry.rs b/src/entry.rs similarity index 100% rename from rustls-libssl/src/entry.rs rename to src/entry.rs diff --git a/rustls-libssl/src/error.rs b/src/error.rs similarity index 100% rename from rustls-libssl/src/error.rs rename to src/error.rs diff --git a/rustls-libssl/src/evp_pkey.rs b/src/evp_pkey.rs similarity index 100% rename from rustls-libssl/src/evp_pkey.rs rename to src/evp_pkey.rs diff --git a/rustls-libssl/src/ex_data.rs b/src/ex_data.rs similarity index 100% rename from rustls-libssl/src/ex_data.rs rename to src/ex_data.rs diff --git a/rustls-libssl/src/ffi.rs b/src/ffi.rs similarity index 100% rename from rustls-libssl/src/ffi.rs rename to src/ffi.rs diff --git a/rustls-libssl/src/lib.rs b/src/lib.rs similarity index 100% rename from rustls-libssl/src/lib.rs rename to src/lib.rs diff --git a/rustls-libssl/src/miri.rs b/src/miri.rs similarity index 100% rename from rustls-libssl/src/miri.rs rename to src/miri.rs diff --git a/rustls-libssl/src/not_thread_safe.rs b/src/not_thread_safe.rs similarity index 100% rename from rustls-libssl/src/not_thread_safe.rs rename to src/not_thread_safe.rs diff --git a/rustls-libssl/src/sign.rs b/src/sign.rs similarity index 100% rename from rustls-libssl/src/sign.rs rename to src/sign.rs diff --git a/rustls-libssl/src/verifier.rs b/src/verifier.rs similarity index 100% rename from rustls-libssl/src/verifier.rs rename to src/verifier.rs diff --git a/rustls-libssl/src/x509.rs b/src/x509.rs similarity index 100% rename from rustls-libssl/src/x509.rs rename to src/x509.rs diff --git a/rustls-libssl/test-ca/ecdsa-p256/ca.cert b/test-ca/ecdsa-p256/ca.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p256/ca.cert rename to test-ca/ecdsa-p256/ca.cert diff --git a/rustls-libssl/test-ca/ecdsa-p256/server.cert b/test-ca/ecdsa-p256/server.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p256/server.cert rename to test-ca/ecdsa-p256/server.cert diff --git a/rustls-libssl/test-ca/ecdsa-p256/server.key b/test-ca/ecdsa-p256/server.key similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p256/server.key rename to test-ca/ecdsa-p256/server.key diff --git a/rustls-libssl/test-ca/ecdsa-p384/ca.cert b/test-ca/ecdsa-p384/ca.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p384/ca.cert rename to test-ca/ecdsa-p384/ca.cert diff --git a/rustls-libssl/test-ca/ecdsa-p384/server.cert b/test-ca/ecdsa-p384/server.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p384/server.cert rename to test-ca/ecdsa-p384/server.cert diff --git a/rustls-libssl/test-ca/ecdsa-p384/server.key b/test-ca/ecdsa-p384/server.key similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p384/server.key rename to test-ca/ecdsa-p384/server.key diff --git a/rustls-libssl/test-ca/ecdsa-p521/ca.cert b/test-ca/ecdsa-p521/ca.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p521/ca.cert rename to test-ca/ecdsa-p521/ca.cert diff --git a/rustls-libssl/test-ca/ecdsa-p521/server.cert b/test-ca/ecdsa-p521/server.cert similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p521/server.cert rename to test-ca/ecdsa-p521/server.cert diff --git a/rustls-libssl/test-ca/ecdsa-p521/server.key b/test-ca/ecdsa-p521/server.key similarity index 100% rename from rustls-libssl/test-ca/ecdsa-p521/server.key rename to test-ca/ecdsa-p521/server.key diff --git a/rustls-libssl/test-ca/ed25519/ca.cert b/test-ca/ed25519/ca.cert similarity index 100% rename from rustls-libssl/test-ca/ed25519/ca.cert rename to test-ca/ed25519/ca.cert diff --git a/rustls-libssl/test-ca/ed25519/server.cert b/test-ca/ed25519/server.cert similarity index 100% rename from rustls-libssl/test-ca/ed25519/server.cert rename to test-ca/ed25519/server.cert diff --git a/rustls-libssl/test-ca/ed25519/server.key b/test-ca/ed25519/server.key similarity index 100% rename from rustls-libssl/test-ca/ed25519/server.key rename to test-ca/ed25519/server.key diff --git a/rustls-libssl/test-ca/rsa/ca.cert b/test-ca/rsa/ca.cert similarity index 100% rename from rustls-libssl/test-ca/rsa/ca.cert rename to test-ca/rsa/ca.cert diff --git a/rustls-libssl/test-ca/rsa/client.cert b/test-ca/rsa/client.cert similarity index 100% rename from rustls-libssl/test-ca/rsa/client.cert rename to test-ca/rsa/client.cert diff --git a/rustls-libssl/test-ca/rsa/client.key b/test-ca/rsa/client.key similarity index 100% rename from rustls-libssl/test-ca/rsa/client.key rename to test-ca/rsa/client.key diff --git a/rustls-libssl/test-ca/rsa/end.cert b/test-ca/rsa/end.cert similarity index 100% rename from rustls-libssl/test-ca/rsa/end.cert rename to test-ca/rsa/end.cert diff --git a/rustls-libssl/test-ca/rsa/end.key b/test-ca/rsa/end.key similarity index 100% rename from rustls-libssl/test-ca/rsa/end.key rename to test-ca/rsa/end.key diff --git a/rustls-libssl/test-ca/rsa/inter.cert b/test-ca/rsa/inter.cert similarity index 100% rename from rustls-libssl/test-ca/rsa/inter.cert rename to test-ca/rsa/inter.cert diff --git a/rustls-libssl/test-ca/rsa/server.cert b/test-ca/rsa/server.cert similarity index 100% rename from rustls-libssl/test-ca/rsa/server.cert rename to test-ca/rsa/server.cert diff --git a/rustls-libssl/test-ca/rsa/server.key b/test-ca/rsa/server.key similarity index 100% rename from rustls-libssl/test-ca/rsa/server.key rename to test-ca/rsa/server.key diff --git a/rustls-libssl/tests/ciphers.c b/tests/ciphers.c similarity index 100% rename from rustls-libssl/tests/ciphers.c rename to tests/ciphers.c diff --git a/rustls-libssl/tests/client.c b/tests/client.c similarity index 100% rename from rustls-libssl/tests/client.c rename to tests/client.c diff --git a/rustls-libssl/tests/config.c b/tests/config.c similarity index 100% rename from rustls-libssl/tests/config.c rename to tests/config.c diff --git a/rustls-libssl/tests/constants.c b/tests/constants.c similarity index 100% rename from rustls-libssl/tests/constants.c rename to tests/constants.c diff --git a/rustls-libssl/tests/helpers.h b/tests/helpers.h similarity index 100% rename from rustls-libssl/tests/helpers.h rename to tests/helpers.h diff --git a/rustls-libssl/tests/maybe-valgrind.sh b/tests/maybe-valgrind.sh similarity index 100% rename from rustls-libssl/tests/maybe-valgrind.sh rename to tests/maybe-valgrind.sh diff --git a/rustls-libssl/tests/nginx.conf b/tests/nginx.conf similarity index 100% rename from rustls-libssl/tests/nginx.conf rename to tests/nginx.conf diff --git a/rustls-libssl/tests/nginx_1_24.conf b/tests/nginx_1_24.conf similarity index 100% rename from rustls-libssl/tests/nginx_1_24.conf rename to tests/nginx_1_24.conf diff --git a/rustls-libssl/tests/runner.rs b/tests/runner.rs similarity index 100% rename from rustls-libssl/tests/runner.rs rename to tests/runner.rs diff --git a/rustls-libssl/tests/server.c b/tests/server.c similarity index 100% rename from rustls-libssl/tests/server.c rename to tests/server.c