From 69adbb0ce3bb9d5bd569c13aaa3ac8f390c1586a Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 31 Jan 2002 23:26:12 +0000 Subject: Fix from Michael Steffens to make signal processing work correctly in winbindd. This is a really good patch that gives full select semantics to the Samba modified select. Jeremy. (This used to be commit 3af16ade173cac24c1ac5eff4a36b439f16ac036) --- source3/nsswitch/winbindd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'source3/nsswitch/winbindd.c') diff --git a/source3/nsswitch/winbindd.c b/source3/nsswitch/winbindd.c index debe7f716f..02bd3dd877 100644 --- a/source3/nsswitch/winbindd.c +++ b/source3/nsswitch/winbindd.c @@ -168,6 +168,7 @@ static BOOL do_sigterm; static void termination_handler(int signum) { do_sigterm = True; + sys_select_signal(); } static BOOL do_sigusr2; @@ -175,6 +176,7 @@ static BOOL do_sigusr2; static void sigusr2_handler(int signum) { do_sigusr2 = True; + sys_select_signal(); } static BOOL do_sighup; @@ -182,6 +184,7 @@ static BOOL do_sighup; static void sighup_handler(int signum) { do_sighup = True; + sys_select_signal(); } /* Create winbindd socket */ @@ -553,7 +556,7 @@ static void process_loop(int accept_sock) /* Call select */ - selret = select(maxfd + 1, &r_fds, &w_fds, NULL, &timeout); + selret = sys_select(maxfd + 1, &r_fds, &w_fds, NULL, &timeout); if (selret == 0) continue; -- cgit