From 98e9de7db930e505884ca8d0ca6588afbe43f127 Mon Sep 17 00:00:00 2001 From: Fedor Indutny Date: Fri, 19 Apr 2019 15:51:24 -0400 Subject: http: `servername === false` should disable SNI There is no way to disable SNI extension when sending a request to HTTPS server. Setting `options.servername` to a falsy value would make Node.js core override it with either hostname or ip address. This change introduces a way to disable SNI completely if this is required for user's application. Setting `options.servername` to `` in `https.request` would disable overrides and thus disable the extension. PR-URL: https://github.com/nodejs/node/pull/27316 Reviewed-By: Steven R Loomis Reviewed-By: Luigi Pinca Reviewed-By: Ruben Bridgewater Reviewed-By: Anatoli Papirovski Reviewed-By: Ben Noordhuis Reviewed-By: Rich Trott Reviewed-By: Sam Roberts Reviewed-By: Trivikram Kamat --- doc/api/https.md | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'doc/api/https.md') diff --git a/doc/api/https.md b/doc/api/https.md index 95e7e715c3..9b6ec83a6e 100644 --- a/doc/api/https.md +++ b/doc/api/https.md @@ -29,6 +29,10 @@ An [`Agent`][] object for HTTPS similar to [`http.Agent`][]. See Can have the same fields as for [`http.Agent(options)`][], and * `maxCachedSessions` {number} maximum number of TLS cached sessions. Use `0` to disable TLS session caching. **Default:** `100`. + * `servername` {string} the value of + [Server Name Indication extension][sni wiki] to be sent to the server. Use + empty string `''` to disable sending the extension. + **Default:** hostname or IP address of the target server. See [`Session Resumption`][] for infomation about TLS session reuse. @@ -406,3 +410,4 @@ headers: max-age=0; pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18="; p [`tls.createSecureContext()`]: tls.html#tls_tls_createsecurecontext_options [`tls.createServer()`]: tls.html#tls_tls_createserver_options_secureconnectionlistener [`Session Resumption`]: tls.html#tls_session_resumption +[sni wiki]: https://en.wikipedia.org/wiki/Server_Name_Indication -- cgit v1.2.3