diff options
author | Jeremy Allison <jra@samba.org> | 2002-01-31 23:26:12 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2002-01-31 23:26:12 +0000 |
commit | 69adbb0ce3bb9d5bd569c13aaa3ac8f390c1586a (patch) | |
tree | 64a15ac400842319f5db5d2c504632a0ea5ad751 /source3/smbd | |
parent | 0815cd63bd878d72c154caf5e121352b2af10a53 (diff) | |
download | samba-69adbb0ce3bb9d5bd569c13aaa3ac8f390c1586a.tar.gz samba-69adbb0ce3bb9d5bd569c13aaa3ac8f390c1586a.tar.bz2 samba-69adbb0ce3bb9d5bd569c13aaa3ac8f390c1586a.zip |
Fix from Michael Steffens <michael_steffens@hp.com> 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)
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/oplock.c | 2 | ||||
-rw-r--r-- | source3/smbd/process.c | 2 | ||||
-rw-r--r-- | source3/smbd/server.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/source3/smbd/oplock.c b/source3/smbd/oplock.c index 16c7db6645..39bcb558f1 100644 --- a/source3/smbd/oplock.c +++ b/source3/smbd/oplock.c @@ -93,7 +93,7 @@ BOOL receive_local_message(fd_set *fds, char *buffer, int buffer_len, int timeou to.tv_sec = timeout / 1000; to.tv_usec = (timeout % 1000) * 1000; - selrtn = sys_select(maxfd+1,fds,&to); + selrtn = sys_select(maxfd+1,fds,NULL,NULL,&to); if (selrtn == -1 && errno == EINTR) { /* could be a kernel oplock interrupt */ diff --git a/source3/smbd/process.c b/source3/smbd/process.c index e7a9d0b644..bf1a1ca9a7 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -193,7 +193,7 @@ static BOOL receive_message_or_smb(char *buffer, int buffer_len, int timeout) to.tv_sec = timeout / 1000; to.tv_usec = (timeout % 1000) * 1000; - selrtn = sys_select(MAX(maxfd,smbd_server_fd())+1,&fds,timeout>0?&to:NULL); + selrtn = sys_select(MAX(maxfd,smbd_server_fd())+1,&fds,NULL,NULL,timeout>0?&to:NULL); /* if we get EINTR then maybe we have received an oplock signal - treat this as select returning 1. This is ugly, but diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 3b40cb6191..50f09cf6e6 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -239,7 +239,7 @@ max can be %d\n", memcpy((char *)&lfds, (char *)&listen_set, sizeof(listen_set)); - num = sys_select(FD_SETSIZE,&lfds,NULL); + num = sys_select(FD_SETSIZE,&lfds,NULL,NULL,NULL); if (num == -1 && errno == EINTR) { extern VOLATILE sig_atomic_t reload_after_sighup; |