vfs_cifs: disable level2 oplocks if the frontend client doesn't support them
authorStefan Metzmacher <metze@samba.org>
Fri, 7 Mar 2008 18:12:14 +0000 (19:12 +0100)
committerStefan Metzmacher <metze@samba.org>
Fri, 7 Mar 2008 18:15:19 +0000 (19:15 +0100)
metze
(This used to be commit a63910e8e5c075aff45b8eb0d246d2823f09bb9c)

source4/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);