-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Use mbedtls instead of openssl in libgit2 on Linux #18658
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
Conversation
There is an alternate way to fix the linking-to-things-we-don't-ship issue by calling |
6e03540
to
3b5dc20
Compare
don't need that specific library any more, but do need some of the other devel headers it depends on
3b5dc20
to
69cdabe
Compare
otherwise on Mac we're linking to both the system tls library and mbedtls, and that doesn't work
Is this good to go? |
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.
Fine with me. I'll work on getting the upstream review continued.
Thanks Keno. We're already carrying the libssh2 patch that was stalled, this libgit2 patch is now reopened upstream as libgit2/libgit2#3935. |
Right, too many things at once ;). |
This carries the patch from libgit2/libgit2#3462 in order to fix #10763, and close #17471. It seems libgit2 maintainers are reluctant to merge this patch upstream, but maybe we can change their mind eventually. This is a much more maintainable approach than re-implementing a pure Julia TLS stack which is what #17471 was suggesting, and no one is actively working on right now.
Would only be backported to release-0.5 after being tested on master for some time. It fixes an as-yet-unreported issue with our generic Linux binaries where our bundled copy of libgit2 links against libgssapi_krb5.so.2 and a bunch of other things that we don't ship. We've just been getting lucky that most Linux systems happen to have those same libraries installed already. The issue is reproducible if you try to download and run the generic Linux binaries in an Ubuntu docker container that has installed wget and nothing else beyond the base image. Dropping our use of openssl from the build system should fix that, and it's an improvement in several other ways. Since the buildbots run on a very old CentOS, their copy of openssl is old and heavily patched.
Assigning @Keno for review.