vfs_cifs: disable level2 oplocks if the frontend client doesn't support them
[ira/wip.git] / source / ntvfs / cifs / vfs_cifs.c
index 901dd2cf7cdd1b5dd51a361ef1ec9a80a3c30e7d..58183b5e6031093b39fcb6e9e517edb801643658 100644 (file)
@@ -207,7 +207,11 @@ static NTSTATUS cvfs_connect(struct ntvfs_module_context *ntvfs,
        io.in.service = remote_share;
        io.in.service_type = "?????";
        lp_smbcli_options(ntvfs->ctx->lp_ctx, &io.in.options);
-       
+
+       if (!(ntvfs->ctx->client_caps & NTVFS_CLIENT_CAP_LEVEL_II_OPLOCKS)) {
+               io.in.options.use_level2_oplocks = false;
+       }
+
        creq = smb_composite_connect_send(&io, private, 
                                          lp_resolve_context(ntvfs->ctx->lp_ctx),
                                          ntvfs->ctx->event_ctx);