summaryrefslogtreecommitdiff
path: root/source3/smbd/oplock_linux.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/oplock_linux.c')
-rw-r--r--source3/smbd/oplock_linux.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/source3/smbd/oplock_linux.c b/source3/smbd/oplock_linux.c
index deed0c5107..84083dffc9 100644
--- a/source3/smbd/oplock_linux.c
+++ b/source3/smbd/oplock_linux.c
@@ -39,7 +39,7 @@ static SIG_ATOMIC_T fd_pending_array[FD_PENDING_SIZE];
#endif
#ifndef RT_SIGNAL_LEASE
-#define RT_SIGNAL_LEASE 33
+#define RT_SIGNAL_LEASE (SIGRTMIN+1)
#endif
#ifndef F_SETSIG
@@ -296,6 +296,9 @@ struct kernel_oplocks *linux_init_kernel_oplocks(void)
koplocks.msg_waiting = linux_oplock_msg_waiting;
koplocks.notification_fd = -1;
+ /* the signal can start off blocked due to a bug in bash */
+ BlockSignals(False, RT_SIGNAL_LEASE);
+
DEBUG(3,("Linux kernel oplocks enabled\n"));
return &koplocks;