-
-
Notifications
You must be signed in to change notification settings - Fork 126
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
unix: hide symbols beloning to dependencies on Linux
This partially addresses #114. Previously, we were exporting symbols from dependencies like OpenSSL and X11 from our dynamic binaries. This can cause problems when other libraries are loaded into the same address space and attempt to bind to the symbols being exported by Python. This commit changes things such that symbols for Python dependencies are now hidden and can no longer be bound to. Python's own symbols are still exported of course, as Python extensions (and the `python` executable) need to call into them. This change is only implemented on Linux for the moment. Apple targets require a bit more effort to make work. As part of this, we update validation to confirm visibility of certain symbols in ELF binaries. The new validation logic correctly rejects distributions built before this change.
- Loading branch information
Showing
3 changed files
with
148 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters