win,msi: mark INSTALLDIR property as secure#8795
Closed
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Checklist
make -j8 test(UNIX), orvcbuild test nosign(Windows) passesAffected core subsystem(s)
Windows, MSI.
Description of change
When installing with
Always install with elevated privilegespolicy set on Windows, MSIExec will spawn an installation process with elevated privileges, but will only be able to pass secure properties to it. Without this change, INSTALLDIR could not be passed and would revert to the default, effectively ignoring any change in the installation directory made by the user.This marks INSTALLDIR as secure, allowing it to be passed to the server MSIExec process during installation.
Tested on Windows 7 with the policy set, with the MSI and INSTALLDIR in two different non-C hard drives (showing that other properties get their values corretly). Also tested upgrade from released Node 6.4 to this on Windows 10.
Fixes: #6057
cc @nodejs/platform-windows