changeset 6369:1500c88d1b61 icedtea-2.6.2pre02

8075773, PR2674: jps running as root fails after the fix of JDK-8050807 Reviewed-by: sla, dsamersoff, gthornbr Contributed-by: cheleswer.sahu@oracle.com
author kevinw
date Thu, 06 Aug 2015 00:08:57 -0700
parents 97487926618a
children 8f1d654cadca
files src/os/linux/vm/perfMemory_linux.cpp src/os/solaris/vm/perfMemory_solaris.cpp
diffstat 2 files changed, 6 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/os/linux/vm/perfMemory_linux.cpp	Mon Oct 19 07:58:06 2015 +0100
+++ b/src/os/linux/vm/perfMemory_linux.cpp	Thu Aug 06 00:08:57 2015 -0700
@@ -217,9 +217,9 @@
     //
     return false;
   }
-  // See if the uid of the directory matches the effective uid of the process.
-  //
-  if (statp->st_uid != geteuid()) {
+  // If user is not root then see if the uid of the directory matches the effective uid of the process.
+  uid_t euid = geteuid();
+  if ((euid != 0) && (statp->st_uid != euid)) {
     // The directory was not created by this user, declare it insecure.
     //
     return false;
--- a/src/os/solaris/vm/perfMemory_solaris.cpp	Mon Oct 19 07:58:06 2015 +0100
+++ b/src/os/solaris/vm/perfMemory_solaris.cpp	Thu Aug 06 00:08:57 2015 -0700
@@ -219,9 +219,9 @@
     //
     return false;
   }
-  // See if the uid of the directory matches the effective uid of the process.
-  //
-  if (statp->st_uid != geteuid()) {
+  // If user is not root then see if the uid of the directory matches the effective uid of the process.
+  uid_t euid = geteuid();
+  if ((euid != 0) && (statp->st_uid != euid)) {
     // The directory was not created by this user, declare it insecure.
     //
     return false;