1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-21 01:59:07 +03:00

r22213: We can't use become_root() here, as it does DEBUG()

itself. become_root_uid_only did not :-)

Revert 21868, we need to find a better way.

Volker
This commit is contained in:
Volker Lendecke 2007-04-14 06:40:47 +00:00 committed by Gerald (Jerry) Carter
parent 6cf0b93b1d
commit 629f966714
2 changed files with 15 additions and 5 deletions

View File

@ -688,15 +688,20 @@ void check_log_size( void )
int maxlog;
SMB_STRUCT_STAT st;
/*
* We need to be root to check/change log-file, skip this and let the main
* loop check do a new check as root.
*/
if( geteuid() != 0 )
return;
if(log_overflow || !need_to_check_log_size() )
return;
maxlog = lp_max_log_size() * 1024;
if( sys_fstat( x_fileno( dbf ), &st ) == 0 && st.st_size > maxlog ) {
become_root();
(void)reopen_logs();
if( dbf && get_file_size( debugf ) > maxlog ) {
pstring name;
@ -709,8 +714,6 @@ void check_log_size( void )
(void)rename(name, debugf);
}
}
unbecome_root();
}
/*

View File

@ -1406,6 +1406,13 @@ machine %s in domain %s.\n", global_myname(), lp_workgroup()));
update_monitored_printq_cache();
/*
* Now we are root, check if the log files need pruning.
* Force a log file check.
*/
force_check_log_size();
check_log_size();
/* Send any queued printer notify message to interested smbd's. */
print_notify_send_messages(0);