Implement Metze's suggestion of trying getpwuid(0) then getpwnam(root).
authorJeremy Allison <jra@samba.org>
Sat, 22 Aug 2009 16:40:58 +0000 (09:40 -0700)
committerJeremy Allison <jra@samba.org>
Sat, 22 Aug 2009 16:40:58 +0000 (09:40 -0700)
Jeremy.

source3/auth/token_util.c

index 45b0fe2938956b87a88c4a0542ac3f032b11a6d5..86dae3a08cb9aa45e5a77b810df633303ae3c1cd 100644 (file)
@@ -91,17 +91,13 @@ NT_USER_TOKEN *get_root_nt_token( void )
                        cache_data, struct nt_user_token);
        }
 
                        cache_data, struct nt_user_token);
        }
 
-#if defined(DEVELOPER)
-       if ( !(pw = sys_getpwnam("root")) ) {
-               DEBUG(0,("get_root_nt_token: sys_getpwnam(\"root\") failed!\n"));
-               return NULL;
-       }
-#else
        if ( !(pw = sys_getpwuid(0)) ) {
        if ( !(pw = sys_getpwuid(0)) ) {
-               DEBUG(0,("get_root_nt_token: sys_getpwuid(0) failed!\n"));
-               return NULL;
+               if ( !(pw = sys_getpwnam("root")) ) {
+                       DEBUG(0,("get_root_nt_token: both sys_getpwuid(0) "
+                               "and sys_getpwnam(\"root\") failed!\n"));
+                       return NULL;
+               }
        }
        }
-#endif
 
        /* get the user and primary group SIDs; although the
           BUILTIN\Administrators SId is really the one that matters here */
 
        /* get the user and primary group SIDs; although the
           BUILTIN\Administrators SId is really the one that matters here */