-
Notifications
You must be signed in to change notification settings - Fork 6.4k
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
[openssl] support fips build feature #30916
[openssl] support fips build feature #30916
Conversation
I only implement and tested it for windows as I have no option to do this under linux
Added "supports" to the feature as I only tested it for windows |
@microsoft-github-policy-service agree |
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.
This PR shouldn't be merged with a windows-only change, now that windows and !windows finally share most of the openssl setup. But I will need a few more days to look into a general solution.
ports/openssl/vcpkg.json
Outdated
@@ -20,6 +20,10 @@ | |||
} | |||
], | |||
"features": { | |||
"fips": { | |||
"description": "Enable fips", | |||
"supports": "windows" |
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.
supports
is to match upstream's position. We should help you to have all platforms supported.
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.
I think this can also work under linux so removing "supports" would already fit but I had no option to test this
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.
You can remove supports
field, I have tested fips
on linux
and osx
.
Removed the not needed FEATURE FIPS Initialize INSTALL_FIPS as empty
ports/openssl/vcpkg.json
Outdated
@@ -20,6 +20,10 @@ | |||
} | |||
], | |||
"features": { | |||
"fips": { | |||
"description": "Enable fips", | |||
"supports": "windows" |
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.
You can remove supports
field, I have tested fips
on linux
and osx
.
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.
I tested the PR.
AFAIU fips support is only available with dynamic linkage. (There is no build error, but the feature will simply not be installed.) The feature should be declared with:
"supports": "!static"
As the provider conecpts needs dynamic linkage
Thanks! |
Thank you for your support |
I had the time to rebuild all based on the merge and see now an issue under windows
warning: Files cannot be present in those directories. What would be the right/best way to merge a fix. |
Yes please |
While we are at fips: Should it become a default feature? (Is it a default feature upstream?) |
I don't think so; normally FIPS only certifies distribution in binary forms, not in source forms. Moreover, I don't know about OpenSSL specifically, but elsewhere I've seen a FIPS mode that usually implies turning things off (that have not been certified) rather than on. |
After getting the latest updates from github and rebuilding openssl, I can't find any fips.dll on Windows or fips.so on Linux. |
Hi, please use the feature fips. |
"vcpkg install openssl[fips]" or with the tools "vcpkg install openssl[tools,fips]" |
But I wonder how this influenced the linux build. I did not adjusted the linux port file. |
@lbermes I have never needed the [features] in the past and was therefore not aware of them (must have missed them in the docs). Thanks very much! |
* Added option to enable fips build for openssl I only implement and tested it for windows as I have no option to do this under linux * Adjusted port version * Updated to support only for Windows * Corrected Formatting * Corrected SHA for vcpkg x-add-version --all * Changes requested by review Removed the not needed FEATURE FIPS Initialize INSTALL_FIPS as empty * Corrected SHA for vcpkg x-add-version --all * Removed Windows only support * Corrected SHA for vcpkg x-add-version --all * Added "supports": "!static" As the provider conecpts needs dynamic linkage * Corrected SHA for vcpkg x-add-version --all
I only implemented and tested it for windows as I have no option to do this under linux.
I'm new with changes here but I like to learn and to support this project
(no checksum changes)
(I would like to mark the feature as only available for Windows but did not found or understood the syntax how todo this)
(nothing changed)
(nothing changed)
./vcpkg x-add-version --all
and committing the result.