diff options
-rw-r--r-- | source4/cluster/ctdb/brlock_ctdb.c | 6 | ||||
-rw-r--r-- | source4/ntvfs/common/brlock_tdb.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/source4/cluster/ctdb/brlock_ctdb.c b/source4/cluster/ctdb/brlock_ctdb.c index 2773827b59..66342a8ac4 100644 --- a/source4/cluster/ctdb/brlock_ctdb.c +++ b/source4/cluster/ctdb/brlock_ctdb.c @@ -28,6 +28,7 @@ #include "lib/messaging/irpc.h" #include "libcli/libcli.h" #include "cluster/cluster.h" +#include "ntvfs/ntvfs.h" #include "ntvfs/common/brlock.h" #include "include/ctdb.h" @@ -242,6 +243,11 @@ static NTSTATUS brl_ctdb_lock_failed(struct brl_handle *brlh, struct lock_struct * this function is only called for non pending lock! */ + /* in SMB2 mode always return NT_STATUS_LOCK_NOT_GRANTED! */ + if (lock->ntvfs->ctx->protocol == PROTOCOL_SMB2) { + return NT_STATUS_LOCK_NOT_GRANTED; + } + /* * if the notify_ptr is non NULL, * it means that we're at the end of a pending lock diff --git a/source4/ntvfs/common/brlock_tdb.c b/source4/ntvfs/common/brlock_tdb.c index 6fe8cefd34..d5eb7d82fb 100644 --- a/source4/ntvfs/common/brlock_tdb.c +++ b/source4/ntvfs/common/brlock_tdb.c @@ -34,6 +34,7 @@ #include "libcli/libcli.h" #include "cluster/cluster.h" #include "ntvfs/common/brlock.h" +#include "ntvfs/ntvfs.h" /* in this module a "DATA_BLOB *file_key" is a blob that uniquely identifies @@ -220,6 +221,11 @@ static NTSTATUS brl_tdb_lock_failed(struct brl_handle *brlh, struct lock_struct * this function is only called for non pending lock! */ + /* in SMB2 mode always return NT_STATUS_LOCK_NOT_GRANTED! */ + if (lock->ntvfs->ctx->protocol == PROTOCOL_SMB2) { + return NT_STATUS_LOCK_NOT_GRANTED; + } + /* * if the notify_ptr is non NULL, * it means that we're at the end of a pending lock |