Index: smbd/process.c =================================================================== --- smbd/process.c (Revision 11138) +++ smbd/process.c (Arbeitskopie) @@ -1389,6 +1389,7 @@ static time_t last_smb_conf_reload_time = 0; static time_t last_printer_reload_time = 0; time_t printcap_cache_time = (time_t)lp_printcap_cache_time(); + unsigned int spread; if(last_smb_conf_reload_time == 0) { last_smb_conf_reload_time = t; @@ -1410,7 +1411,9 @@ mypid = getpid(); } - if (reload_after_sighup || (t >= last_smb_conf_reload_time+SMBD_RELOAD_CHECK)) { + generate_random_buffer((unsigned char *)&spread, sizeof(spread)); + + if (reload_after_sighup || (t >= last_smb_conf_reload_time+SMBD_RELOAD_CHECK+(spread%120))) { reload_services(True); reload_after_sighup = False; last_smb_conf_reload_time = t;