-
Notifications
You must be signed in to change notification settings - Fork 513
Update troubleshooting.md #278
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
The Homebrew installation is based on a so-called keg-only formula, which means that symlinks in `/usr/local` are _not_ established. Note that with Homebrew installed, `sudo` is _not_ needed to create the symlinks in the `/usr/local` subtree.
Hi @mklement0, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution! TTYL, MSBOT; |
Awesome, thanks Michael! |
My pleasure, @daviwil, but I just stumbled upon this, which suggests that symlinking to " Homebrew previously allowed OpenSSL libraries to be linked to the system library location; however, this created major security holes and is no longer allowed. Because .NET Core's 1.0.0 release libraries still look in the prior system location for OpenSSL, they will fail to work unless the libraries are manually placed there (security risk), or their libraries are patched (which we do). To patch .NET Core's cryptography libraries, we use install_name_tool:
This updates .NET Core's library to look in Homebrew's OpenSSL installation location instead of the system library location. The PowerShell macOS package come with the necessary libraries patched, and the build script patches the libraries on-the-fly when building from source. You can run this command manually if you're having trouble with .NET Core's cryptography libraries. So perhaps including this One thing that puzzles me, however, is that the |
Oops! Just realized that the VSCode extension at hand apparently still needs the OpenSSL libraries in |
Hey Michael, thanks a ton for digging into that. I totally missed those details on symbolic linking being a security risk. I'm not exactly sure how patching the libraries is considered more secure, but I'll take this information to account to update the troubleshooting guidance to use the recommended approach. Looks like I need to also check for Homebrew's installation path for OpenSSL so I don't incorrectly advise those users to use the symbolic link fix. I've filed issue #292 to track this. Thanks again! |
My pleasure, @daviwil - thank you for a great extension. |
The Homebrew installation is based on a so-called keg-only formula, which means that symlinks in
/usr/local
are not established.Note that with Homebrew installed,
sudo
is not needed to create the symlinks in the/usr/local
subtree.