Mac installer: for files in projects and slots directories, if the executable-by-owner permission is set, ensure that the executable-by-group bit is also set

svn path=/trunk/boinc/; revision=24711
This commit is contained in:
Charlie Fenton 2011-12-02 13:40:53 +00:00
parent fda5fbf456
commit 08cc11b09b
2 changed files with 15 additions and 0 deletions

View File

@ -8776,3 +8776,12 @@ Charlie 2 Dec 2011
Installer.cpp
PostInstall.cpp
release_boinc.sh
Charlie 2 Dec 2011
- Mac installer: for files in projects and slots directories, if the
executable-by-owner permission is set, ensure that the
executable-by-group bit is also set.
clientgui/
mac/
SetupSecurity.cpp

View File

@ -691,6 +691,12 @@ static OSStatus UpdateNestedDirectories(char * basepath) {
retval = UpdateNestedDirectories(fullpath);
if (retval)
break;
} else {
// Since we are changing ownership from boinc_project to boinc_master,
// make sure executable-by-group bit is set if executable-by-owner is set
if ((sbuf.st_mode & 0110) == 0100) { // If executable by owner but not by group
retval = DoPrivilegedExec(chmodPath, "g+x", fullpath, NULL, NULL, NULL);
}
}
} // End while (true)