@@ -2471,11 +2471,16 @@ added: v15.6.0
2471
2471
2472
2472
<!-- YAML
2473
2473
added: v15.6.0
2474
+ changes:
2475
+ - version: REPLACEME
2476
+ pr-url: https://github.com/nodejs-private/node-private/pull/00000
2477
+ description: The subject option can now be set to `'default'`.
2474
2478
-->
2475
2479
2476
2480
* ` email ` {string}
2477
2481
* ` options ` {Object}
2478
- * ` subject ` {string} ` 'always' ` or ` 'never' ` . ** Default:** ` 'always' ` .
2482
+ * ` subject ` {string} ` 'default' ` , ` 'always' ` , or ` 'never' ` .
2483
+ ** Default:** ` 'always' ` .
2479
2484
* ` wildcards ` {boolean} ** Default:** ` true ` .
2480
2485
* ` partialWildcards ` {boolean} ** Default:** ` true ` .
2481
2486
* ` multiLabelWildcards ` {boolean} ** Default:** ` false ` .
@@ -2485,15 +2490,31 @@ added: v15.6.0
2485
2490
2486
2491
Checks whether the certificate matches the given email address.
2487
2492
2493
+ If the ` 'subject' ` option is set to '` always ` ' and if the subject alternative
2494
+ name extension either does not exist or does not contain a matching email
2495
+ address, the certificate subject is considered.
2496
+
2497
+ If the ` 'subject' ` option is set to ` 'default ` ', the certificate subject is only
2498
+ considered if the subject alternative name extension either does not exist or
2499
+ does not contain any email addresses.
2500
+
2501
+ If the ` 'subject' ` option is set to ` 'never' ` , the certificate subject is never
2502
+ considered, even if the certificate contains no subject alternative names.
2503
+
2488
2504
### ` x509.checkHost(name[, options]) `
2489
2505
2490
2506
<!-- YAML
2491
2507
added: v15.6.0
2508
+ changes:
2509
+ - version: REPLACEME
2510
+ pr-url: https://github.com/nodejs-private/node-private/pull/00000
2511
+ description: The subject option can now be set to `'default'`.
2492
2512
-->
2493
2513
2494
2514
* ` name ` {string}
2495
2515
* ` options ` {Object}
2496
- * ` subject ` {string} ` 'always' ` or ` 'never' ` . ** Default:** ` 'always' ` .
2516
+ * ` subject ` {string} ` 'default' ` , ` 'always' ` , or ` 'never' ` .
2517
+ ** Default:** ` 'always' ` .
2497
2518
* ` wildcards ` {boolean} ** Default:** ` true ` .
2498
2519
* ` partialWildcards ` {boolean} ** Default:** ` true ` .
2499
2520
* ` multiLabelWildcards ` {boolean} ** Default:** ` false ` .
@@ -2509,6 +2530,18 @@ or it might contain wildcards (e.g., `*.example.com`). Because host name
2509
2530
comparisons are case-insensitive, the returned subject name might also differ
2510
2531
from the given ` name ` in capitalization.
2511
2532
2533
+ If the ` 'subject' ` option is set to '` always ` ' and if the subject alternative
2534
+ name extension either does not exist or does not contain a matching DNS name,
2535
+ the certificate subject is considered.
2536
+
2537
+ If the ` 'subject' ` option is set to ` 'default ` ', the certificate subject is only
2538
+ considered if the subject alternative name extension either does not exist or
2539
+ does not contain any DNS names. This behavior is consistent with [ RFC 2818] [ ]
2540
+ ("HTTP Over TLS").
2541
+
2542
+ If the ` 'subject' ` option is set to ` 'never' ` , the certificate subject is never
2543
+ considered, even if the certificate contains no subject alternative names.
2544
+
2512
2545
### ` x509.checkIP(ip[, options]) `
2513
2546
2514
2547
<!-- YAML
@@ -5937,6 +5970,7 @@ See the [list of SSL OP Flags][] for details.
5937
5970
[ OpenSSL's SPKAC implementation ] : https://www.openssl.org/docs/man1.1.0/apps/openssl-spkac.html
5938
5971
[ RFC 1421 ] : https://www.rfc-editor.org/rfc/rfc1421.txt
5939
5972
[ RFC 2412 ] : https://www.rfc-editor.org/rfc/rfc2412.txt
5973
+ [ RFC 2818 ] : https://www.rfc-editor.org/rfc/rfc2818.txt
5940
5974
[ RFC 3526 ] : https://www.rfc-editor.org/rfc/rfc3526.txt
5941
5975
[ RFC 3610 ] : https://www.rfc-editor.org/rfc/rfc3610.txt
5942
5976
[ RFC 4055 ] : https://www.rfc-editor.org/rfc/rfc4055.txt
0 commit comments