[ https://issues.apache.org/jira/browse/MAPREDUCE-899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12806307#action_12806307 ]
Hemanth Yamijala commented on MAPREDUCE-899: -------------------------------------------- A few minor comments: - Remove unused variables - tt_uid and tt_gid and associated code. - It will be good to check for user, group first and then permissions. It's a more natural code ordering than what exists currently, which is user, permissions, then group. - Rather than check errno as return of getgrgid, it seems more conventional to check for return value being null. This is what man states anyway for return values of getgrgid. It was not clear to me that errno will be set to non-zero if the GID does not exist. However note that errno can still be captured and used for strerror. - Should we rename mapreduce.tasktracker.taskcontroller.group to a more generic name and purpose like mapreduce.tasktracker.group. We could document that this is the group to which the tasktracker belongs and qualify that if LinuxTaskController is used, it takes more meaning - in that it should be the group owner of the binary etc. - The wait introduced for in the ClusterWithLinuxTaskController does not seem required, because doesn't MiniMRCluster itself wait for clusters to join ? Can you please check if the timeout code you added actually helps ? Thinking about tests, I think it is difficult to actually test all the paths verified by the C code without mocking the system calls or building different binary executables and setting them up with different permissions. While we work out details to improve the way we run LinuxTaskController tests - MAPREDUCE-1429, MAPREDUCE-1300 - I'd request you to document as a comment on this JIRA the various manual tests you have run with different binary permissions / ownership. > When using LinuxTaskController, localized files may become accessible to > unintended users if permissions are misconfigured. > --------------------------------------------------------------------------------------------------------------------------- > > Key: MAPREDUCE-899 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-899 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: tasktracker > Reporter: Vinod K V > Assignee: Amareshwari Sriramadasu > Fix For: 0.22.0 > > Attachments: MAPREDUCE-899-20090828.txt, patch-899-1.txt, > patch-899-2.txt, patch-899-3.txt, patch-899-4.txt, patch-899-5.txt, > patch-899.txt > > > To enforce the accessibility of job files to only the job-owner and the > TaskTracker, as per MAPREDUCE-842, it is _trusted_ that the setuid/setgid > linux TaskController binary is group owned by a _special group_ to which only > TaskTracker belongs and not just any group to which TT belongs. If the trust > is broken, possibly due to misconfiguration by admins, the local files become > accessible to unintended users, yet giving false sense of security to the > admins. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.