Skip to content

Conversation

@jasnell
Copy link
Member

This accomplishes a couple of things...

  • Previously, TLSWrap and SSLWrap were defined separately, with SSLWrap as an abstract template class presumably with the intent of allowing it to be reused in other ways that never actually happened. Here they are collapsed and SSLWrap is eliminated entirely

  • Updates and modernizes the code inside TLSWrap

While this is semver-patch, it depends on the currently semver-major #35093

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines

@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/crypto
  • @nodejs/quic

@nodejs-github-botnodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory. labels Oct 8, 2020
@jasnelljasnell added crypto Issues and PRs related to the crypto subsystem. request-ci Add this label to start a Jenkins CI on a PR. labels Oct 10, 2020
@github-actionsgithub-actionsbot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 10, 2020
@nodejs-github-bot
Copy link
Collaborator

@jasnell
Copy link
MemberAuthor

Heh, some definite failures in CI ;-) ... moving this back to draft until I can take a look

@jasnelljasnell marked this pull request as draft October 10, 2020 17:50
@mildsunrise
Copy link
Contributor

thank you! I was going to open a PR for this same thing

@jasnell
Copy link
MemberAuthor

Awesome. It's almost done. Have to trace down a couple of failing tests that aren't exactly obvious with regards to why they're failing but it's close

SSLWrap was needlessly defined as a template class, splitting the TLS implementation over multiple locations. The original idea, I surmise, was to make it possible to reuse SSLWrap for some other purpose that never manifest. This squashes them down into a single TLSWrap class and moves tls_wrap.h/cc into src/crypto. Signed-off-by: James M Snell <[email protected]>
@jasnelljasnell marked this pull request as ready for review October 12, 2020 15:21
@jasnelljasnell added the request-ci Add this label to start a Jenkins CI on a PR. label Oct 12, 2020
@jasnell
Copy link
MemberAuthor

@mildsunrise (and others) this should be good to go now :-)

@github-actionsgithub-actionsbot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 12, 2020
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@jasnell
Copy link
MemberAuthor

Dealing with some seemingly unrelated CI failures on this. Running CI again to see what happens

@jasnelljasnell added the request-ci Add this label to start a Jenkins CI on a PR. label Oct 15, 2020
@github-actionsgithub-actionsbot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 15, 2020
@nodejs-github-bot

This comment has been minimized.

@mildsunrise
Copy link
Contributor

will this be backported? I initially assumed so, but it depends on a semver-major change, so 🤔

@mildsunrise
Copy link
Contributor

mildsunrise commented Oct 15, 2020

also, context for newer contributors who arrive here: SSLWrap was previously used as a common base for SecurePair (the old TLS API) and TLSWrap (the current tls.Socket API) IIRC. We completely removed SecurePair a while ago (it's now an emulation layer on top of tls.Socket), so it no longer makes sense to keep both classes.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c++Issues and PRs that require attention from people who are familiar with C++.cryptoIssues and PRs related to the crypto subsystem.lib / srcIssues and PRs related to general changes in the lib or src directory.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@jasnell@nodejs-github-bot@mildsunrise@targos@BethGriggs