summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Turnbull <james@lovedthanlost.net>2009-01-27 10:03:05 +1100
committerJames Turnbull <james@lovedthanlost.net>2009-01-27 10:03:05 +1100
commitb27fccd4345d80ff826cfbdad1d409d712923e4b (patch)
tree5ede3109f97030b1909a4e434f84f1637dfd18fc
parent15d43608593e3abeae52e773db352950b6ca7655 (diff)
downloadpuppet-b27fccd4345d80ff826cfbdad1d409d712923e4b.tar.gz
puppet-b27fccd4345d80ff826cfbdad1d409d712923e4b.tar.xz
puppet-b27fccd4345d80ff826cfbdad1d409d712923e4b.zip
Fixed #1852 - Correct behaviour when no SELinux bindings
-rw-r--r--CHANGELOG2
-rw-r--r--lib/puppet/type/file/selcontext.rb8
-rw-r--r--spec/unit/type/file/selinux.rb6
3 files changed, 16 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 30fc1c694..55915c243 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,6 @@
0.25.x
+ Fixed #1852 - Correct behaviour when no SELinux bindings
+
Updated Red Hat spec file 0.24.7
0.24.7
diff --git a/lib/puppet/type/file/selcontext.rb b/lib/puppet/type/file/selcontext.rb
index 22e3080b1..990035005 100644
--- a/lib/puppet/type/file/selcontext.rb
+++ b/lib/puppet/type/file/selcontext.rb
@@ -44,6 +44,14 @@ module Puppet
return property_default
end
+ def insync?(value)
+ if not selinux_support?
+ debug("SELinux bindings not found. Ignoring parameter.")
+ return true
+ end
+ super
+ end
+
def sync
self.set_selinux_context(@resource[:path], @should, name)
return :file_changed
diff --git a/spec/unit/type/file/selinux.rb b/spec/unit/type/file/selinux.rb
index a97f9bcb4..4c16fe5df 100644
--- a/spec/unit/type/file/selinux.rb
+++ b/spec/unit/type/file/selinux.rb
@@ -74,6 +74,12 @@ Dir.chdir(File.dirname(__FILE__)) { (s = lambda { |f| File.exist?(f) ? require(f
@sel.sync
end
+ it "should do nothing for insync? if no SELinux support" do
+ @sel.should = %{newcontext}
+ @sel.expects(:selinux_support?).returns false
+ @sel.insync?("oldcontext").should == true
+ end
+
after do
Puppet::Type.type(:file).clear
end