puppetlabs/puppet — pull request #2350 by Iristyle (2014-02-13 00:47:50+00:00)
Title: PUP-1681 Stat doesn't expose correct mode on Win

- An issue was discovered where the values returned from
Puppet::FileSystem.stat and Puppet::Util::Windows::Security.get_mode
were not aligning as they should. The call to get_mode returns
a mode value that should more correctly express a simulated POSIX
mode on Windows
- The stat instance returned from Ruby has been further monkey-patched
on Windows to add an appropriate mode value using the existing
lower-level code that reads a files security descriptor.
- Some tests that were performing special handling of mode values were
updated now that mode should be more consistent across platforms.
- In some cases, an existing call to File.chmod was changed to call
set_mode under Windows. In the future, our FileSystem abstraction
should be modified to create an OS-agnostic single point of entry
for setting mode on files.