Skip to content

Commit 4327326

Browse files
committed
doc: describe secureProtocol and CLI interaction
Cross-reference the secureProtocol docs and the CLI docs for --tls-v1.0 and --tls-v1.1 and describe relationship. Make clear that --tls-v1.0 enables TLSv1.0 and TLSv1.1. PR-URL: #24386 Reviewed-By: Vse Mozhet Byt <[email protected]> Reviewed-By: Daniel Bevenius <[email protected]> Reviewed-By: Ujjwal Sharma <[email protected]>
1 parent 54b4beb commit 4327326

File tree

4 files changed

+20
-14
lines changed

4 files changed

+20
-14
lines changed

doc/api/cli.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -347,16 +347,16 @@ with crypto support (default).
347347
added: REPLACEME
348348
-->
349349

350-
Enable TLSv1.0. This should only be used for compatibility with old TLS
351-
clients or servers.
350+
Enable TLSv1.0 and greater in default [secureProtocol][]. Use for compatibility
351+
with old TLS clients or servers.
352352

353353
### `--tls-v1.1`
354354
<!-- YAML
355355
added: REPLACEME
356356
-->
357357

358-
Enable TLSv1.1. This should only be used for compatibility with old TLS
359-
clients or servers.
358+
Enable TLSv1.1 and greater in default [secureProtocol][]. Use for compatibility
359+
with old TLS clients or servers.
360360

361361
### `--trace-deprecation`
362362
<!-- YAML
@@ -787,3 +787,4 @@ greater than `4` (its current default value). For more information, see the
787787
[experimental ECMAScript Module]: esm.html#esm_loader_hooks
788788
[libuv threadpool documentation]: http://docs.libuv.org/en/latest/threadpool.html
789789
[remote code execution]: https://www.owasp.org/index.php/Code_Injection
790+
[secureProtocol]: tls.html#tls_tls_createsecurecontext_options

doc/api/tls.md

+9-4
Original file line numberDiff line numberDiff line change
@@ -1118,10 +1118,15 @@ changes:
11181118
which is not usually necessary. This should be used carefully if at all!
11191119
Value is a numeric bitmask of the `SSL_OP_*` options from
11201120
[OpenSSL Options][].
1121-
* `secureProtocol` {string} SSL method to use. The possible values are listed
1122-
as [SSL_METHODS][], use the function names as strings. For example,
1123-
`'TLSv1_2_method'` to force TLS version 1.2.
1124-
**Default:** `'TLSv1_2_method'`.
1121+
* `secureProtocol` {string} The TLS protocol version to use. The possible
1122+
values are listed as [SSL_METHODS][], use the function names as strings. For
1123+
example, use `'TLSv1_1_method'` to force TLS version 1.1, or `'TLS_method'`
1124+
to allow any TLS protocol version. It is not recommended to use TLS versions
1125+
less than 1.2, but it may be required for interoperability. **Default:**
1126+
`'TLSv1_2_method'`, unless changed using CLI options. Using the `--tlsv1.0`
1127+
CLI option is like `'TLS_method'` except protocols earlier than TLSv1.0 are
1128+
not allowed, and using the `--tlsv1.1` CLI option is like `'TLS_method'`
1129+
except that protocols earlier than TLSv1.1 are not allowed.
11251130
* `sessionIdContext` {string} Opaque identifier used by servers to ensure
11261131
session state is not shared between applications. Unused by clients.
11271132

doc/node.1

+4-4
Original file line numberDiff line numberDiff line change
@@ -184,12 +184,12 @@ Specify an alternative default TLS cipher list.
184184
Requires Node.js to be built with crypto support. (Default)
185185
.
186186
.It Fl -tls-v1.0
187-
Enable TLSv1.0. This should only be used for compatibility with old TLS
188-
clients or servers.
187+
Enable TLSv1.0 and greater in default secureProtocol. Use for compatibility
188+
with old TLS clients or servers.
189189
.
190190
.It Fl -tls-v1.1
191-
Enable TLSv1.1. This should only be used for compatibility with old TLS
192-
clients or servers.
191+
Enable TLSv1.1 and greater in default secureProtocol. Use for compatibility
192+
with old TLS clients or servers.
193193
.
194194
.It Fl -trace-deprecation
195195
Print stack traces for deprecations.

src/node_options.cc

+2-2
Original file line numberDiff line numberDiff line change
@@ -191,11 +191,11 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
191191

192192
#if HAVE_OPENSSL
193193
AddOption("--tls-v1.0",
194-
"enable TLSv1.0",
194+
"enable TLSv1.0 and greater by default",
195195
&EnvironmentOptions::tls_v1_0,
196196
kAllowedInEnvironment);
197197
AddOption("--tls-v1.1",
198-
"enable TLSv1.1",
198+
"enable TLSv1.1 and greater by default",
199199
&EnvironmentOptions::tls_v1_1,
200200
kAllowedInEnvironment);
201201
#endif

0 commit comments

Comments
 (0)