diff --git a/policycoreutils-rhat.patch b/policycoreutils-rhat.patch index 9cd3aa4..2c65126 100644 --- a/policycoreutils-rhat.patch +++ b/policycoreutils-rhat.patch @@ -1,6 +1,6 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/scripts/genhomedircon policycoreutils-1.27.27/scripts/genhomedircon --- nsapolicycoreutils/scripts/genhomedircon 2005-09-12 16:33:30.000000000 -0400 -+++ policycoreutils-1.27.27/scripts/genhomedircon 2005-11-14 12:58:49.000000000 -0500 ++++ policycoreutils-1.27.27/scripts/genhomedircon 2005-11-14 13:56:01.000000000 -0500 @@ -15,32 +15,19 @@ # The file CONTEXTDIR/files/homedir_template exists. This file is used to # set up the home directory context for each real user. @@ -220,22 +220,23 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/scripts/genhomedircon po self.type=type self.selinuxdir=selinuxdir +"/" self.contextdir="/contexts" -@@ -313,47 +142,70 @@ +@@ -312,48 +141,68 @@ + else: errorExit(string.join("sed error ", rc[1])) - def getUsersFile(self): +- def getUsersFile(self): - return self.selinuxdir+self.type+"/users/local.users" -+ if self.semanaged: -+ return self.selinuxdir+self.type+"module/active/seusers" -+ else: -+ return self.selinuxdir+self.type+"/seusers" - +- - def getSystemUsersFile(self): - return self.selinuxdir+self.type+"/users/system.users" - def heading(self): ret = "\n#\n#\n# User-specific file contexts, generated via %s\n" % sys.argv[0] - ret += "# edit %s to change file_context\n#\n#\n" % self.getUsersFile() +- ret += "# edit %s to change file_context\n#\n#\n" % self.getUsersFile() ++ if self.semanaged: ++ ret += "# use seusers command to manage system users in order to change the file_context\n#\n#\n" ++ else: ++ ret += "# edit %s to change file_context\n#\n#\n" % self.selinuxdir+self.type+"/seusers" return ret + @@ -292,7 +293,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/scripts/genhomedircon po + self.adduser(udict, semanage_seuser_get_name(seuser), seusername, self.defaultrole(seusername)) + + else: -+ rc = commands.getstatusoutput("grep -v '^ *#' %s" % self.getUsersFile()) ++ rc = commands.getstatusoutput("grep -v '^ *#' %s" % self.selinuxdir+self.type+"/seusers") + if rc[0] == 0 and rc[1] != "": + ulist = rc[1].split("\n") + for u in ulist: @@ -317,12 +318,12 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/scripts/genhomedircon po + if user[0] == "root": + role="user" + else: -+ role=user[0] -+ self.adduser(udict, user[0], user[1], role) ++ role=user[1] ++ self.adduser(udict, user[0], user[1], role) return udict def getHomeDirContext(self, user, home, role): -@@ -362,9 +214,8 @@ +@@ -362,9 +211,8 @@ return ret + rc[1] + "\n" def getUserContext(self, user, sel_user, role): @@ -333,7 +334,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/scripts/genhomedircon po def genHomeDirContext(self): users = self.getUsers() -@@ -478,10 +329,6 @@ +@@ -478,10 +326,6 @@ if type==None: type=getSELinuxType(directory) diff --git a/policycoreutils.spec b/policycoreutils.spec index dede05e..10247c0 100644 --- a/policycoreutils.spec +++ b/policycoreutils.spec @@ -3,7 +3,7 @@ Summary: SELinux policy core utilities. Name: policycoreutils Version: 1.27.27 -Release: 4 +Release: 5 License: GPL Group: System Environment/Base Source: http://www.nsa.gov/selinux/archives/policycoreutils-%{version}.tgz @@ -88,7 +88,7 @@ rm -rf ${RPM_BUILD_ROOT} %config(noreplace) %{_sysconfdir}/sestatus.conf %changelog -* Mon Nov 14 2005 Dan Walsh 1.27.27-4 +* Mon Nov 14 2005 Dan Walsh 1.27.27-5 - Fix genhomedircon to work with non libsemanage systems * Fri Nov 11 2005 Dan Walsh 1.27.27-3