From: Jeremy Allison Date: Sat, 13 Feb 2010 07:18:53 +0000 (-0800) Subject: Use sec_initial_uid() in the places where being root doesn't matter, X-Git-Tag: samba-3.6.0pre1~5360 X-Git-Url: http://git.samba.org/?p=samba.git;a=commitdiff_plain;h=9252df53d95d6ebe43314ffd87a9dda940b1ae10 Use sec_initial_uid() in the places where being root doesn't matter, and 0 in the places where it does. Jeremy --- diff --git a/source3/lib/afs_settoken.c b/source3/lib/afs_settoken.c index 6421c0a55b4..80eed13e522 100644 --- a/source3/lib/afs_settoken.c +++ b/source3/lib/afs_settoken.c @@ -236,7 +236,7 @@ bool afs_settoken_str(const char *token_string) if (!afs_decode_token(token_string, &cell, &ticket, &ct)) return False; - if (geteuid() != 0) + if (geteuid() != sec_initial_uid()) ct.ViceId = getuid(); result = afs_settoken(cell, &ct, ticket); diff --git a/source3/lib/debug.c b/source3/lib/debug.c index 80b8310ab20..83211dd5e6e 100644 --- a/source3/lib/debug.c +++ b/source3/lib/debug.c @@ -738,7 +738,7 @@ void check_log_size( void ) * loop check do a new check as root. */ - if( geteuid() != 0 ) + if( geteuid() != sec_initial_uid() ) return; if(log_overflow || !need_to_check_log_size() ) diff --git a/source3/lib/fault.c b/source3/lib/fault.c index bf61bb26c43..50fa2b83700 100644 --- a/source3/lib/fault.c +++ b/source3/lib/fault.c @@ -304,7 +304,7 @@ void dump_core_setup(const char *progname) /* If we're running as non root we might not be able to dump the core * file to the corepath. There must not be an unbecome_root() before * we call abort(). */ - if (geteuid() != 0) { + if (geteuid() != sec_initial_uid()) { become_root(); } diff --git a/source3/printing/printing_db.c b/source3/printing/printing_db.c index 746e768e485..762b418bb1e 100644 --- a/source3/printing/printing_db.c +++ b/source3/printing/printing_db.c @@ -98,7 +98,7 @@ struct tdb_print_db *get_print_db_byname(const char *printername) return NULL; } - if (geteuid() != 0) { + if (geteuid() != sec_initial_uid()) { become_root(); done_become_root = True; } diff --git a/source3/smbd/service.c b/source3/smbd/service.c index b3e833ea1de..f908819d33f 100644 --- a/source3/smbd/service.c +++ b/source3/smbd/service.c @@ -1083,7 +1083,7 @@ connection_struct *make_connection_snum(struct smbd_server_connection *sconn, err_root_exit: TALLOC_FREE(smb_fname_cpath); /* We must exit this function as root. */ - if (geteuid() != sec_initial_uid()) { + if (geteuid() != 0) { change_to_root_user(); } if (on_err_call_dis_hook) {