@@ -4,28 +4,6 @@ OpenSSL is automatically updated by the [update-openssl-action][].
44There is also a script in ` tools/dep_updaters `  that can be used to update it.
55This document describes how to manually update ` deps/openssl/ ` .
66
7- If you need to provide updates across all active release lines you will
8- currently need to generate four PRs as follows:
9- 
10- *  a PR for ` main `  which is generated following the instructions
11-   below for OpenSSL 3.x.x.
12- *  a PR for 18.x following the instructions in the v18.x-staging version
13-   of this guide.
14- *  a PR for 16.x following the instructions in the v16.x-staging version
15-   of this guide.
16- 
17- ## Use of the quictls/openssl fork  
18- 
19- Node.js currently uses the quictls/openssl fork, which closely tracks
20- the main openssl/openssl releases with the addition of APIs to support
21- the QUIC protocol.
22- 
23- Details on the fork, as well as the latest sources, can be found at
24- < https://github.com/quictls/openssl > .
25- 
26- Branches are used per OpenSSL version (for instance,
27- < https://github.com/quictls/openssl/tree/OpenSSL_1_1_1j+quic > ).
28- 
297## Requirements  
308
319*  Linux environment.
@@ -52,35 +30,33 @@ NASM version 2.11.08
5230
5331## 1. Obtain and extract new OpenSSL sources  
5432
55- Get a new source from < https://github.com/quictls /openssl/tree/openssl-3.0.5+quic  > 
33+ Get a new source from < https://github.com/openssl /openssl/tree/openssl-3.0.16  > 
5634and copy all files into ` deps/openssl/openssl ` . Then add all files and commit
5735them. (The link above, and the branch, will change with each new OpenSSL
5836release).
5937
60- ### OpenSSL 3.x.x  
61- 
6238``` bash 
63- git clone https://github.com/quictls /openssl
39+ git clone https://github.com/openssl /openssl
6440cd  openssl
6541cd  ../node/deps/openssl
6642rm -rf openssl
6743cp -R ../../../openssl openssl
68- rm -rf openssl/.git*  openssl/.travis * 
44+ rm -rf openssl/.git* 
6945git add --all openssl
7046git commit openssl
7147``` 
7248
7349``` text 
74- deps: upgrade openssl sources to quictls/ openssl-3.0.5+quic  
50+ deps: upgrade openssl sources to openssl-3.0.16  
7551
7652This updates all sources in deps/openssl/openssl by: 
77-     $ git clone [email protected] :quictls /openssl.git 53+     $ git clone [email protected] :openssl /openssl.git 7854    $ cd openssl 
79-     $ git checkout openssl-3.0.5+quic  
55+     $ git checkout openssl-3.0.16  
8056    $ cd ../node/deps/openssl 
8157    $ rm -rf openssl 
8258    $ cp -R ../../../openssl openssl 
83-     $ rm -rf openssl/.git* openssl/.travis*  
59+     $ rm -rf openssl/.git* 
8460    $ git add --all openssl 
8561    $ git commit openssl 
8662``` 
@@ -99,7 +75,8 @@ make -C deps/openssl/config clean
9975make -C deps/openssl/config
10076``` 
10177
102- ** Note** : If the 32-bit Windows is failing to compile run this workflow instead:
78+ Fix up 32-bit Windows assembler directives. This will allow the commits to be
79+ cherry-picked to older release lines that still provide binaries on 32-bit Windows.
10380
10481``` bash 
10582make -C deps/openssl/config clean
@@ -140,10 +117,8 @@ git commit
140117The commit message can be written as (with the openssl version set
141118to the relevant value):
142119
143- ### OpenSSL 3.x.x  
144- 
145120``` text 
146- deps: update archs files for quictls/ openssl-3.0.5+quic  
121+ deps: update archs files for openssl-3.0.16  
147122
148123After an OpenSSL source update, all the config files need to be 
149124regenerated and committed by: 
0 commit comments