1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-26 10:04:02 +03:00

s3:winbindd: move non event related code out of process_loop() in the the caller

metze
This commit is contained in:
Stefan Metzmacher 2009-03-16 16:14:20 +01:00
parent 0685031ccf
commit 3b8dd79f2b

View File

@ -934,7 +934,6 @@ static bool remove_idle_client(void)
static void process_loop(void)
{
struct winbindd_cli_state *state;
struct winbindd_fd_event *ev;
fd_set r_fds, w_fds;
int maxfd, listen_sock, listen_priv_sock, selret;
@ -951,10 +950,6 @@ static void process_loop(void)
run_events(winbind_event_context(), 0, NULL, NULL);
/* refresh the trusted domain cache */
rescan_trusted_domains();
/* Initialise fd lists for select() */
maxfd = MAX(listen_sock, listen_priv_sock);
@ -979,23 +974,6 @@ static void process_loop(void)
timeout = timeval_min(&timeout, &ev_timeout);
}
/* Set up client readers and writers */
state = winbindd_client_list();
while (state) {
struct winbindd_cli_state *next = state->next;
/* Dispose of client connection if it is marked as
finished */
if (state->finished)
remove_client(state);
state = next;
}
for (ev = fd_events; ev; ev = ev->next) {
if (ev->flags & EVENT_FD_READ) {
FD_SET(ev->fd, &r_fds);
@ -1370,8 +1348,29 @@ int main(int argc, char **argv, char **envp)
TALLOC_FREE(frame);
while (1) {
struct winbindd_cli_state *state;
frame = talloc_stackframe();
/* refresh the trusted domain cache */
rescan_trusted_domains();
/* Dispose of client connection if it is marked as
finished */
state = winbindd_client_list();
while (state) {
struct winbindd_cli_state *next = state->next;
if (state->finished) {
remove_client(state);
}
state = next;
}
process_loop();
TALLOC_FREE(frame);
}