-
Notifications
You must be signed in to change notification settings - Fork 29.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make FIPS related options and functionality always available. #35019
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -749,7 +749,6 @@ PerProcessOptionsParser::PerProcessOptionsParser( | |
&PerProcessOptions::ssl_openssl_cert_store); | ||
Implies("--use-openssl-ca", "[ssl_openssl_cert_store]"); | ||
ImpliesNot("--use-bundled-ca", "[ssl_openssl_cert_store]"); | ||
#if NODE_FIPS_MODE | ||
AddOption("--enable-fips", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the comment in the related issue
is not correct. This change means that the option will be available in the "vanilla" node builds, but that it will fail if you try to enable it. That is likely the cause of a number of the test failures seen in the github actions runs. @voxik, I thought the whole point was that the option would always be available for consistency across binaries, but would only work when either the binary was dynamically linked and on a system where FIPs was supported or at some point in the future if/when Node.js supports a FIPs mode again natively. If my understanding is correct there needs to be additional documentation explaining that, both so that its clear and so that the tests will pass. Assuming my understanding is correct There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, that is right. I think that the comment by @richardlau about |
||
"enable FIPS crypto at startup", | ||
&PerProcessOptions::enable_fips_crypto, | ||
|
@@ -758,7 +757,6 @@ PerProcessOptionsParser::PerProcessOptionsParser( | |
"force FIPS crypto (cannot be disabled)", | ||
&PerProcessOptions::force_fips_crypto, | ||
kAllowedInEnvironment); | ||
#endif | ||
#endif | ||
AddOption("--use-largepages", | ||
"Map the Node.js static code to large pages. Options are " | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this reflect
FIPS_mode()
instead of always being set to true?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is very good point looking into this. Do you think it would be OK to basically remove the
fipsMode
flag and its usage in crypto.js?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is internal it's probably okay to remove, but you'll need to update everywhere that refers to it, i.e. any of the files under
lib
ortest
that do: