| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 5aa4010 commit 18365d8
3 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -2472,6 +2472,9 @@ added: v15.6.0 | |||
| 2472 | 2472 | <!-- YAML | |
| 2473 | 2473 | added: v15.6.0 | |
| 2474 | 2474 | changes: | |
| 2475 | + - version: REPLACEME | ||
| 2476 | + pr-url: https://github.com/nodejs/node/pull/41600 | ||
| 2477 | + description: The subject option now defaults to `'default'`. | ||
| 2475 | 2478 | - version: REPLACEME | |
| 2476 | 2479 | pr-url: https://github.com/nodejs/node/pull/41599 | |
| 2477 | 2480 | description: The `wildcards`, `partialWildcards`, `multiLabelWildcards`, and | |
@@ -2485,20 +2488,20 @@ changes: | |||
| 2485 | 2488 | * `email` {string} | |
| 2486 | 2489 | * `options` {Object} | |
| 2487 | 2490 | * `subject` {string} `'default'`, `'always'`, or `'never'`. | |
| 2488 | - **Default:** `'always'`. | ||
| 2491 | + **Default:** `'default'`. | ||
| 2489 | 2492 | * Returns: {string|undefined} Returns `email` if the certificate matches, | |
| 2490 | 2493 | `undefined` if it does not. | |
| 2491 | 2494 | ||
| 2492 | 2495 | Checks whether the certificate matches the given email address. | |
| 2493 | 2496 | ||
| 2497 | + If the `'subject'` option is undefined or set to `'default'`, the certificate | ||
| 2498 | + subject is only considered if the subject alternative name extension either does | ||
| 2499 | + not exist or does not contain any email addresses. | ||
| 2500 | + | ||
| 2494 | 2501 | If the `'subject'` option is set to `'always'` and if the subject alternative | |
| 2495 | 2502 | name extension either does not exist or does not contain a matching email | |
| 2496 | 2503 | address, the certificate subject is considered. | |
| 2497 | 2504 | ||
| 2498 | - If the `'subject'` option is set to `'default'`, the certificate subject is only | ||
| 2499 | - considered if the subject alternative name extension either does not exist or | ||
| 2500 | - does not contain any email addresses. | ||
| 2501 | - | ||
| 2502 | 2505 | If the `'subject'` option is set to `'never'`, the certificate subject is never | |
| 2503 | 2506 | considered, even if the certificate contains no subject alternative names. | |
| 2504 | 2507 | ||
@@ -2507,6 +2510,9 @@ considered, even if the certificate contains no subject alternative names. | |||
| 2507 | 2510 | <!-- YAML | |
| 2508 | 2511 | added: v15.6.0 | |
| 2509 | 2512 | changes: | |
| 2513 | + - version: REPLACEME | ||
| 2514 | + pr-url: https://github.com/nodejs/node/pull/41600 | ||
| 2515 | + description: The subject option now defaults to `'default'`. | ||
| 2510 | 2516 | - version: REPLACEME | |
| 2511 | 2517 | pr-url: https://github.com/nodejs/node/pull/41569 | |
| 2512 | 2518 | description: The subject option can now be set to `'default'`. | |
@@ -2515,7 +2521,7 @@ changes: | |||
| 2515 | 2521 | * `name` {string} | |
| 2516 | 2522 | * `options` {Object} | |
| 2517 | 2523 | * `subject` {string} `'default'`, `'always'`, or `'never'`. | |
| 2518 | - **Default:** `'always'`. | ||
| 2524 | + **Default:** `'default'`. | ||
| 2519 | 2525 | * `wildcards` {boolean} **Default:** `true`. | |
| 2520 | 2526 | * `partialWildcards` {boolean} **Default:** `true`. | |
| 2521 | 2527 | * `multiLabelWildcards` {boolean} **Default:** `false`. | |
@@ -2531,15 +2537,15 @@ or it might contain wildcards (e.g., `*.example.com`). Because host name | |||
| 2531 | 2537 | comparisons are case-insensitive, the returned subject name might also differ | |
| 2532 | 2538 | from the given `name` in capitalization. | |
| 2533 | 2539 | ||
| 2540 | + If the `'subject'` option is undefined or set to `'default'`, the certificate | ||
| 2541 | + subject is only considered if the subject alternative name extension either does | ||
| 2542 | + not exist or does not contain any DNS names. This behavior is consistent with | ||
| 2543 | + [RFC 2818][] ("HTTP Over TLS"). | ||
| 2544 | + | ||
| 2534 | 2545 | If the `'subject'` option is set to `'always'` and if the subject alternative | |
| 2535 | 2546 | name extension either does not exist or does not contain a matching DNS name, | |
| 2536 | 2547 | the certificate subject is considered. | |
| 2537 | 2548 | ||
| 2538 | - If the `'subject'` option is set to `'default'`, the certificate subject is only | ||
| 2539 | - considered if the subject alternative name extension either does not exist or | ||
| 2540 | - does not contain any DNS names. This behavior is consistent with [RFC 2818][] | ||
| 2541 | - ("HTTP Over TLS"). | ||
| 2542 | - | ||
| 2543 | 2549 | If the `'subject'` option is set to `'never'`, the certificate subject is never | |
| 2544 | 2550 | considered, even if the certificate contains no subject alternative names. | |
| 2545 | 2551 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -65,8 +65,7 @@ function isX509Certificate(value) { | |||
| 65 | 65 | function getFlags(options = {}) { | |
| 66 | 66 | validateObject(options, 'options'); | |
| 67 | 67 | const { | |
| 68 | - // TODO(tniessen): change the default to 'default' | ||
| 69 | - subject = 'always', // Can be 'default', 'always', or 'never' | ||
| 68 | + subject = 'default', // Can be 'default', 'always', or 'never' | ||
| 70 | 69 | wildcards = true, | |
| 71 | 70 | partialWildcards = true, | |
| 72 | 71 | multiLabelWildcards = false, | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -425,7 +425,7 @@ const { hasOpenSSL3 } = common; | |||
| 425 | 425 | assert.strictEqual(certX509.subjectAltName, 'DNS:evil.example.com'); | |
| 426 | 426 | ||
| 427 | 427 | // The newer X509Certificate API allows customizing this behavior: | |
| 428 | - assert.strictEqual(certX509.checkHost(servername), servername); | ||
| 428 | + assert.strictEqual(certX509.checkHost(servername), undefined); | ||
| 429 | 429 | assert.strictEqual(certX509.checkHost(servername, { subject: 'default' }), | |
| 430 | 430 | undefined); | |
| 431 | 431 | assert.strictEqual(certX509.checkHost(servername, { subject: 'always' }), | |
| Back | FazBrowse Home | New Git URL |
0 commit comments