old bug?
Gerald Carter
gcarter at valinux.com
Fri Jun 22 18:52:39 GMT 2001
I'm going through old mail and this was reported last december
from Ying Chen <ying at almaden.ibm.com>
in smbd/process.c:smbd_process()
(lines 1257-1265)
if ((num_smbs % 200) == 0) {
time_t new_check_time = time(NULL);
if(last_timeout_processing_time - new_check_time >=
(select_timeout/1000)) {
if(!timeout_processing( deadtime, &select_timeout,
&last_timeout_processing_time))
return;
num_smbs = 0; /* Reset smb counter. */
last_timeout_processing_time = new_check_time; /* Reset time. */
}
}
The line
last_timeout_processing_time - new_check_time >= (select_timeout/1000))
Seems to have a logic bug. if (last_timeout_processing_time <
new_check_time), the result will always be negative and always less
that (select_timeout/1000).
Or am I missing something here.
Cheers, jerry
----------------------------------------------------------------------
/\ Gerald (Jerry) Carter Professional Services
\/ http://www.valinux.com/ VA Linux Systems gcarter at valinux.com
http://www.samba.org/ SAMBA Team jerry at samba.org
http://www.plainjoe.org/ jerry at plainjoe.org
"...a hundred billion castaways looking for a home."
- Sting "Message in a Bottle" ( 1979 )
More information about the samba-technical
mailing list