Skip to content

Commit

Permalink
OpenSSL 3 (#371)
Browse files Browse the repository at this point in the history
* Upgrade OpenSSL to 3.2.1 in the conanfile
* Update OpenSSL to 3.2.1 in the Dependencies documentation
  • Loading branch information
garethsb authored Feb 15, 2024
1 parent 253fec2 commit d1ee2ca
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 7 deletions.
2 changes: 1 addition & 1 deletion Development/conanfile.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
boost/1.83.0
cpprestsdk/2.10.19
websocketpp/0.8.2
openssl/1.1.1s
openssl/3.2.1
json-schema-validator/2.3.0
nlohmann_json/3.11.3
zlib/1.2.13
Expand Down
14 changes: 8 additions & 6 deletions Documents/Dependencies.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ By default nmos-cpp uses [Conan](https://conan.io) to download most of its depen

1. Install Python 3 if necessary
Note: The Python scripts directory needs to be added to the `PATH`, so the Conan executable can be found
2. Install or upgrade Conan using `pip install --upgrade conan~=1.47`
2. Install or upgrade Conan using `pip install --upgrade conan~=1.47`
Notes:
- On some platforms with Python 2 and Python 3 both installed this may need to be `pip3 install --upgrade conan~=1.47`
- Currently, Conan 1.47 or higher (and lower than version 2.0) is required by the nmos-cpp recipe; dependencies may require a higher version; version 1.59.0 has been tested
Expand Down Expand Up @@ -235,15 +235,17 @@ If using Conan, this section can be skipped.
<summary>If not using Conan...</summary>

The C++ REST SDK depends on [OpenSSL](https://www.openssl.org/) (to implement secure HTTP and/or secure WebSockets).
It is compatible with the OpenSSL 1.1 API, so the 1.1.1 Long Term Support (LTS) release is recommended.
It is also possible to use OpenSSL 1.0, but the OpenSSL team announced that [users of that release are strongly advised to upgrade to OpenSSL 1.1.1](https://www.openssl.org/blog/blog/2018/09/11/release111/).
The nmos-cpp codebase also uses OpenSSL directly to implement the specific requirements of [AMWA BCP-003-01 Secure Communication in NMOS Systems](https://specs.amwa.tv/bcp-003-01/) and [AMWA BCP-003-02 Authorization in NMOS Systems](https://specs.amwa.tv/bcp-003-02/).

1. Download and install a recent release
OpenSSL version 3 is recommended, and version 3.2.1 (latest release at the time) has been tested.
It is currently also possible to use OpenSSL v1.1.1, although [this OpenSSL release is now end of life](https://www.openssl.org/blog/blog/2023/09/11/eol-111/index.html).

1. Download and install a recent release
Notes:
- On Windows, an installer can be downloaded from [Shining Light Productions - Win32 OpenSSL](https://slproweb.com/products/Win32OpenSSL.html)
The Win64 OpenSSL v1.1.1s installer (latest release at the time) has been tested
The Win64 OpenSSL v3.2.1 installer (latest release at the time) has been tested
- On Linux distributions, an OpenSSL package may already be available
The Ubuntu team announced an [OpenSSL 1.1.1 stable release update (SRU) for Ubuntu 18.04 LTS](https://lists.ubuntu.com/archives/ubuntu-devel/2018-December/040567.html)
For example, Ubuntu 22.04 LTS includes OpenSSL v3.0.2

</details>

Expand Down

0 comments on commit d1ee2ca

Please sign in to comment.