+1

Much better.

On Mar 29, 2010, at 10:52 AM, Nigel Kersten wrote:


Signed-off-by: Nigel Kersten <[email protected]>
---
lib/puppet/util/suidmanager.rb |   29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/lib/puppet/util/suidmanager.rb b/lib/puppet/util/ suidmanager.rb
index a0a9178..8c31aee 100644
--- a/lib/puppet/util/suidmanager.rb
+++ b/lib/puppet/util/suidmanager.rb
@@ -1,4 +1,3 @@
-require 'facter'
require 'puppet/util/warnings'
require 'forwardable'

@@ -6,14 +5,40 @@ module Puppet::Util::SUIDManager
    include Puppet::Util::Warnings
    extend Forwardable

+    # Note groups= is handled specially due to a bug in OS X 10.6
    to_delegate_to_process = [ :euid=, :euid, :egid=, :egid,
- :uid =, :uid, :gid=, :gid, :groups=, :groups ]
+                               :uid=, :uid, :gid=, :gid, :groups ]

    to_delegate_to_process.each do |method|
        def_delegator Process, method
        module_function method
    end

+    def osx_maj_ver
+        return @osx_maj_ver unless @osx_maj_ver.nil?
+        require 'facter'
+        # 'kernel' is available without explicitly loading all facts
+        if Facter.value('kernel') != 'Darwin'
+          @osx_maj_ver = false
+          return @osx_maj_ver
+        end
+        # But 'macosx_productversion_major' requires it.
+        Facter.loadfacts
+        @osx_maj_ver = Facter.value('macosx_productversion_major')
+        return @osx_maj_ver
+    end
+    module_function :osx_maj_ver
+
+    def groups=(grouplist)
+        if osx_maj_ver == '10.6'
+            return true
+        else
+            return Process.groups = grouplist
+            module_function :groups= # what does this do?
+        end
+    end
+    module_function :groups=
+
    if Facter['kernel'].value == 'Darwin'
        # Cannot change real UID on Darwin so we set euid
        alias :uid :euid
--
1.7.0.3

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected] . For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en .



--
Between two evils, I always pick the one I never tried before.
    -- Mae West
---------------------------------------------------------------------
Luke Kanies  -|-   http://puppetlabs.com   -|-   +1(615)594-8199

--
You received this message because you are subscribed to the Google Groups "Puppet 
Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to