Tim Perry
5b940dd124
tls: drop hand-rolled TLS client hello parser
...
This existed for 'resumeSession', which needed to do an async lookup
though SSL_CTX_sess_set_get_cb is sync-only. Nowadays both OpenSSL &
BoringSSL have an early ClientHello callback for suspend/resume to
handle this properly, so it was redundant, in addition to being
complicated and generally a bit fragile & scary.
This PR switches to use the modern OpenSSL/BoringSSL mechanisms for this
and drops the client hello parser & related infrastructure completely.
In addition, there's a new test here, covering a fixed bug: the hello
parser silently dropped fragmented hellos, which we now do handle
correctly.
Signed-off-by: Tim Perry <pimterry@gmail.com >
PR-URL: https://github.com/nodejs/node/pull/64827
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Filip Skokan <panva.ip@gmail.com >
2026-08-04 12:33:00 +00:00
..
2026-07-31 15:59:18 -07:00
2026-07-29 02:25:05 +00:00
2026-07-27 19:04:04 +02:00
2026-07-24 14:00:18 +00:00
2026-07-26 20:10:12 +02:00
2026-07-19 20:38:29 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-03 11:44:02 +00:00
2026-08-01 20:34:38 +00:00
2026-07-21 15:46:08 +00:00
2026-07-25 19:30:24 +00:00
2026-08-01 20:34:41 +00:00
2026-08-02 20:18:09 +00:00
2026-08-02 20:18:09 +00:00
2026-08-01 20:34:39 +00:00
2026-08-03 11:44:02 +00:00
2026-08-02 20:18:09 +00:00
2026-07-21 15:46:12 +00:00
2026-07-18 12:59:37 -07:00
2026-08-03 12:49:21 +00:00
2026-07-18 18:17:49 +00:00
2026-07-22 03:40:02 +00:00
2026-07-22 03:40:02 +00:00
2026-07-26 20:10:12 +02:00
2026-07-22 08:44:48 +00:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-07-27 19:04:04 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-07-27 19:04:04 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 06:15:08 +00:00
2026-07-27 19:04:04 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-07-27 19:04:04 +02:00
2026-08-01 14:48:00 +02:00
2026-08-01 14:48:00 +02:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-08-01 14:51:11 +00:00
2026-07-29 10:41:09 -03:00
2026-07-23 10:22:10 +00:00
2026-07-18 12:27:51 +02:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-07-23 16:47:25 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-07-29 10:42:07 -03:00
2026-07-29 10:42:07 -03:00
2026-07-25 14:40:06 +00:00
2026-08-04 09:07:43 +00:00
2026-08-04 09:07:43 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-07-29 13:57:08 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-07-30 11:38:56 +00:00
2026-08-01 21:42:59 +00:00
2026-08-01 21:42:59 +00:00
2026-07-29 10:41:22 -03:00
2026-07-29 10:41:14 -03:00
2026-07-29 10:41:14 -03:00
2026-07-29 10:42:07 -03:00
2026-08-03 12:49:09 +00:00
2026-08-02 14:31:00 +00:00
2026-07-14 21:40:40 +00:00
2026-08-02 14:31:00 +00:00
2026-07-24 16:11:39 -07:00
2026-08-02 13:54:45 +00:00
2026-07-28 19:29:48 +00:00
2026-07-28 19:29:48 +00:00
2026-07-28 19:29:48 +00:00
2026-08-02 13:54:45 +00:00
2026-08-02 13:54:45 +00:00
2026-07-24 17:25:38 -07:00
2026-07-24 17:25:38 -07:00
2026-07-24 17:25:38 -07:00
2026-07-24 17:25:38 -07:00
2026-07-30 16:14:23 +00:00
2026-07-21 05:41:30 +00:00
2026-07-21 05:41:30 +00:00
2026-07-22 03:40:02 +00:00
2026-07-29 10:42:01 -03:00
2026-07-29 10:41:17 -03:00
2026-08-02 14:31:00 +00:00
2026-07-30 14:27:15 +00:00
2026-08-02 20:18:09 +00:00
2026-08-01 06:15:08 +00:00
2026-08-02 20:18:09 +00:00
2026-08-02 20:18:09 +00:00
2026-07-18 12:59:37 -07:00
2026-07-24 06:09:43 +00:00
2026-07-14 21:40:40 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-16 17:10:24 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-08-04 09:07:31 +00:00
2026-08-04 09:07:31 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-31 17:15:16 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-08-04 09:07:31 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-08-04 09:07:31 +00:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-27 19:04:04 +02:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-25 23:56:46 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-25 23:56:46 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-25 23:56:46 -07:00
2026-07-25 23:56:46 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-25 23:56:46 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-28 19:29:48 +00:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-28 19:29:48 +00:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-07-18 12:59:37 -07:00
2026-08-03 12:49:21 +00:00
2026-07-18 12:59:37 -07:00
2026-07-26 00:59:29 +00:00
2026-07-31 15:58:10 -07:00
2026-07-29 01:32:55 +00:00
2026-08-04 01:45:07 +00:00
2026-07-26 05:17:40 +00:00
2026-07-31 04:11:16 +00:00
2026-07-31 04:11:16 +00:00
2026-08-03 19:34:01 +00:00
2026-07-29 10:41:25 -03:00
2026-08-04 11:05:47 +00:00
2026-08-03 05:29:58 +00:00
2026-08-02 00:11:19 +00:00
2026-07-23 05:19:45 -07:00
2026-07-24 05:08:09 +00:00
2026-08-01 01:00:20 +00:00
2026-08-02 00:11:19 +00:00
2026-07-23 05:19:45 -07:00
2026-07-23 05:19:44 -07:00
2026-07-23 05:19:45 -07:00
2026-08-04 04:58:22 +00:00
2026-08-02 00:11:19 +00:00
2026-07-23 05:19:44 -07:00
2026-07-23 05:19:45 -07:00
2026-07-23 05:19:44 -07:00
2026-07-23 23:32:17 +00:00
2026-07-23 22:17:50 +00:00
2026-07-23 05:19:44 -07:00
2026-07-23 05:19:44 -07:00
2026-07-18 19:08:26 +00:00
2026-08-04 09:07:43 +00:00
2026-07-19 18:30:06 +00:00
2026-08-04 12:33:00 +00:00
2026-08-04 12:33:00 +00:00
2026-07-15 10:59:57 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-07-24 14:00:25 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-08-02 14:31:00 +00:00
2026-07-28 11:23:11 +00:00
2026-07-25 05:56:42 +00:00
2026-07-17 20:47:53 +00:00
2026-07-28 05:46:07 +00:00
2026-07-31 04:11:37 +00:00
2026-07-16 18:52:19 +00:00
2026-07-16 18:52:19 +00:00
2026-07-19 15:58:25 +00:00
2026-07-19 15:58:25 +00:00
2026-08-04 11:06:00 +00:00
2026-07-31 22:33:39 +00:00
2026-07-26 04:01:05 +00:00
2026-07-29 02:24:45 +00:00
2026-07-29 10:42:12 -03:00
2026-07-21 05:41:42 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-08-01 08:47:28 +00:00
2026-07-21 15:03:54 +00:00
2026-07-23 22:17:50 +00:00