Repository navigation
Commit 9adc87b
crypto: harden X509Certificate state
Construct X509Certificate instances directly on the existing native
X.509 wrapper and keep lazy cached values in private state. Use a
non-throwing native brand check while preserving the existing
structured-clone behavior.
Preserve derived-constructor prototype semantics without rereading
new.target.prototype.
Add coverage for receiver validation, hidden state, prototype edge
cases, subclassing, and structured cloning through workers and message
ports.
Replace the key-only instanceof lint rule with a module-aware crypto
class guard and extend it to X509Certificate. Resolve references by
lexical binding so shadowed constructor names remain valid.
Signed-off-by: Filip Skokan <panva.ip@gmail.com>
PR-URL: #65518
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>1 parent c63aa33 commit 9adc87b
14 files changed
Lines changed: 1056 additions & 480 deletions
File tree
- lib
- internal/crypto
- src
- crypto
- test/parallel
- tools/eslint-rules
- typings/internalBinding
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
398 | 398 | | |
399 | 399 | | |
400 | 400 | | |
| 401 | + | |
401 | 402 | | |
402 | | - | |
403 | 403 | | |
404 | 404 | | |
405 | 405 | | |
| |||
0 commit comments