From e597522fbf605400988726f1ccbc80d60b1de39b Mon Sep 17 00:00:00 2001 From: Marc Fournier Date: Fri, 28 Aug 2009 09:15:19 +0200 Subject: postfix: selinux labels differ from one distribution to another --- manifests/classes/postfix.pp | 21 +++++++++++++++++++-- manifests/definitions/hash.pp | 20 ++++++++++++++++++-- 2 files changed, 37 insertions(+), 4 deletions(-) (limited to 'manifests') diff --git a/manifests/classes/postfix.pp b/manifests/classes/postfix.pp index bf1b8f8..d79199e 100644 --- a/manifests/classes/postfix.pp +++ b/manifests/classes/postfix.pp @@ -6,6 +6,21 @@ class postfix { + case $operatingsystem { + + RedHat: { + case $lsbmajdistrelease { + "4": { $postfix_seltype = "etc_t" } + "5": { $postfix_seltype = "postfix_etc_t" } + default: { $postfix_seltype = undef } + } + } + + default: { + $postfix_seltype = undef + } + } + # Default value for various options case $postfix_ng_smtp_listen { "": { $postfix_ng_smtp_listen = "127.0.0.1" } @@ -27,7 +42,7 @@ class postfix { file { "/etc/mailname": ensure => present, content => "${fqdn}\n", - seltype => "postfix_etc_t", + seltype => $postfix_seltype, } # Aliases @@ -36,7 +51,7 @@ class postfix { ensure => present, content => "# file managed by puppet\n", replace => false, - seltype => "postfix_etc_t", + seltype => $postfix_seltype, notify => Exec["newaliases"], } @@ -57,6 +72,7 @@ class postfix { Redhat => template("postfix/master.cf.redhat5.erb"), Debian => template("postfix/master.cf.debian-etch.erb"), }, + seltype => $postfix_seltype, notify => Service["postfix"], require => Package["postfix"], } @@ -67,6 +83,7 @@ class postfix { mode => "0644", source => "puppet:///postfix/main.cf", replace => false, + seltype => $postfix_seltype, notify => Service["postfix"], require => Package["postfix"], } diff --git a/manifests/definitions/hash.pp b/manifests/definitions/hash.pp index 2ecbff8..e012458 100644 --- a/manifests/definitions/hash.pp +++ b/manifests/definitions/hash.pp @@ -1,8 +1,24 @@ define postfix::hash ($ensure) { + + case $operatingsystem { + + RedHat: { + case $lsbmajdistrelease { + "4": { $postfix_seltype = "etc_t" } + "5": { $postfix_seltype = "postfix_etc_t" } + default: { $postfix_seltype = undef } + } + } + + default: { + $postfix_seltype = undef + } + } + file {"${name}": ensure => $ensure, mode => 600, - seltype => "postfix_etc_t", + seltype => $postfix_seltype, require => Package["postfix"], } @@ -10,7 +26,7 @@ define postfix::hash ($ensure) { ensure => $ensure, mode => 600, require => [File["${name}"], Exec["generate ${name}.db"]], - seltype => "postfix_etc_t", + seltype => $postfix_seltype, } exec {"generate ${name}.db": -- cgit v1.2.3