Skip to content

Comments

Move legacy ciphers into the legacy provider#11419

Closed
slontis wants to merge 5 commits intoopenssl:masterfrom
slontis:prov_legacy
Closed

Move legacy ciphers into the legacy provider#11419
slontis wants to merge 5 commits intoopenssl:masterfrom
slontis:prov_legacy

Conversation

@slontis
Copy link
Member

@slontis slontis commented Mar 27, 2020

DES, idea, seed, rc2, rc4, rc5, cast and blowfish have been moved out of the default provider.

Code shared between desx and tdes has been moved into a seperate file (cipher_tdes_common.c).

3 test recipes failed due to using app/openssl calls that used legacy ciphers.
These calls have been updated to supply both the default and legacy providers.

Checklist
  • documentation is added or updated
  • tests are added or updated

DES, idea, seed, rc2, rc4, rc5, cast and blowfish have been moved out of the default provider.

Code shared between desx and tdes has been moved into a seperate file (cipher_tdes_common.c).

3 test recipes failed due to using app/openssl calls that used legacy ciphers.
These calls have been updated to supply both the default and legacy providers.
@slontis slontis added branch: master Applies to master branch approval: review pending This pull request needs review by a committer labels Mar 27, 2020
@slontis slontis requested a review from paulidale March 27, 2020 04:26
@paulidale paulidale added this to the 3.0.0 milestone Mar 27, 2020
Copy link
Contributor

@paulidale paulidale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@slontis
Copy link
Member Author

slontis commented Mar 27, 2020

The no-asm no-deprecated travis build had a few issues..

Copy link
Member

@levitte levitte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm surprised, shouldn't this demand a set of added AvailableIn lines in the files in test/recipes/30-test_evp_data?

@slontis
Copy link
Member Author

slontis commented Mar 28, 2020

will look - I am curently fixing the memory leaks cause by using -provider in the apps.

@levitte
Copy link
Member

levitte commented Mar 28, 2020

Have a look at Travis, you have a memleak that's wreaking havoc...

@slontis
Copy link
Member Author

slontis commented Mar 28, 2020

Fixed pre existing memory leak (functionality had not been used yet in a test).

The reason the evp_tests all work is because it loads a default_and_legacy.cnf file. Manually testing a file confrms that it fails if the legacy provider is not loaded.
A seperate PR to clean up this stuff will need to be added. The availableIn is going to have to be reviewed for every test.
Basically it should have configs for
default_only.
fips_only.
legacy_only.
default+legacy
fips+legacy.

Then we would iterate over all of these..

Note some tests do for example RSA + MD5 .

@richsalz
Copy link
Contributor

In regards to #11419 (comment), I was trying to do that (as discussed on the fips-sponsors mailing list). See #11124. Unfortunately, the pre-requisite PR's for that -- #11369, #11347, #11177 etc -- are not being reviewed. :( So I am moving on to something that will get review attention, "fetchable RAND"

While I'm here: this situation sucks, frankly.

@slontis
Copy link
Member Author

slontis commented Apr 1, 2020

ping

@paulidale
Copy link
Contributor

re-ping @openssl/committers

@t-j-h
Copy link
Member

t-j-h commented Apr 7, 2020

I don't see any issues with the PR as it stands - but @levitte or @mattcaswell should be the ones reviewing this. If it remains unaddressed for much longer I will approve it myself.

@levitte
Copy link
Member

levitte commented Apr 7, 2020

Gah! All those timeouts (yeahok, only two)

@levitte levitte added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels Apr 7, 2020
@bernd-edlinger
Copy link
Member

I'd prefer a penguin over a bitten apple. 😄

@openssl-machine
Copy link
Collaborator

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set. Please review the updates and set the label manually.

@slontis slontis removed the approval: done This pull request has the required number of approvals label Apr 9, 2020
@slontis slontis added the approval: ready to merge The 24 hour grace period has passed, ready to merge label Apr 9, 2020
openssl-machine pushed a commit that referenced this pull request Apr 9, 2020
DES, idea, seed, rc2, rc4, rc5, cast and blowfish have been moved out of the default provider.
Code shared between desx and tdes has been moved into a seperate file (cipher_tdes_common.c).
3 test recipes failed due to using app/openssl calls that used legacy ciphers.
These calls have been updated to supply both the default and legacy providers.
Fixed openssl app '-provider' memory leak

Reviewed-by: Richard Levitte <[email protected]>
(Merged from #11419)
@slontis
Copy link
Member Author

slontis commented Apr 9, 2020

Thanks. Merged to master.

@slontis slontis closed this Apr 9, 2020
@t8m
Copy link
Member

t8m commented Apr 9, 2020

@slontis This (most probably) caused a regression in one of the Travis builds which was added when PR #11468 was merged.
https://travis-ci.org/github/openssl/openssl/jobs/672855572

@t8m
Copy link
Member

t8m commented Apr 9, 2020

The reason it was not caught in this PR CI run is that there was no no-deprecated build without no-asm.

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

Labels

approval: ready to merge The 24 hour grace period has passed, ready to merge branch: master Applies to master branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants