8000 Preload on windows libcrypto and libssl, if required by katietz · Pull Request #8949 · conda/conda · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Preload on windows libcrypto and libssl, if required #8949

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

Merged
merged 3 commits into from
Jul 17, 2019

Conversation

katietz
Copy link
Contributor
@katietz katietz commented Jul 17, 2019

No description provided.

@katietz katietz requested a review from a team as a code owner July 17, 2019 13:29
@jjhelmus
Copy link
Contributor

Will this cause attempt to load the OpenSSL 1.1.1 DLLs to be loaded in an environment with OpenSSL 1.0.2 installed?

@katietz
Copy link
Contributor Author
katietz commented Jul 17, 2019 via email

@msarahan
Copy link
Contributor

I don't think "forcing 1_1" is the right way to look at this. The correct behavior is to preload whatever matches conda - whatever is in the root env with conda. We need to be smart enough to figure out which is the correct one to preload. It may be 1.1, or it may be 1.0.

@katietz
Copy link
Contributor Author
katietz commented Jul 17, 2019 via email

# if version 1.1 is not found, try to load 1.0
if not exists(libssl_path2 + ".dll"):
# print("prior not exits? %s\n" % libssl_path2+".dll")
libssl_version = '-1_0'
Copy link
Contributor

Choose a reason for hiding this comment

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

unfortunately, I don't think this is sufficient. The openssl 1.0 DLL names were totally different. Probably best to look at one of the 1.0.2 package contents, but I remember something like libeay32.dll and libssleay32.dll?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sorry, you are right. Just searching for difference of names for x64 and the 32-bit variant

libcrypto_path = find_library(so_name)
if not libcrypto_path:
libcrypto_path = os.path.join(sys.prefix, 'Library', 'bin', so_name)
# print("Attempt to load %s lib\n" % libssl_path)
Copy link
Contributor

Choose a reason for hiding this comment

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

please clean up or replace these with log.debug calls

@mingwandroid
Copy link
Contributor
mingwandroid commented Jul 7, 2020

This PR causes conda to load any random OpenSSL it finds on PATH, even ones that do not match the architecture (and even openssl 1.0 when 1.1 is needed). We will be removing it soon.

@github-actions
Copy link

Hi there, thank you for your contribution to Conda!

This pull request has been automatically locked since it has not had recent activity after it was closed.

Please open a new issue or pull request if needed.

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Aug 20, 2021
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 20, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0