Re: [PATCH] [CIFS] SMB2 FSCTL and IOCTL worker function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 24, 2013 at 8:35 AM, David Disseldorp <ddiss@xxxxxxx> wrote:
> Hi Steve,
>
> On Mon, 24 Jun 2013 02:19:13 -0500
> Steve French <smfrench@xxxxxxxxx> wrote:
>
>> +     rc = SendReceive2(xid, ses, iov, num_iovecs, &resp_buftype, 0);
>> +     rsp = (struct smb2_ioctl_rsp *)iov[0].iov_base;
>> +
>> +     if (rc != 0) {
>> +             if (tcon)
>> +                     cifs_stats_fail_inc(tcon, SMB2_IOCTL_HE);
>> +             goto ioctl_exit;
>> +     }
>
> IIUC, this throws away any response data if the server reply status
> is unsuccessful.
>
> The caller may wish to obtain the response data under certain error
> conditions, particularly in the case of FSCTL_SRV_COPYCHUNK, where the
> server returns chunk request limits alongside STATUS_INVALID_PARAMETER
> in some cases. See MS-SMB2 2.2.32.1 for details.

that is a really good point - I will add handling for that in the code
to do copychunk (I am running into some alignment issues in my current
version of the client side of the copychunk path).

AFAICT from the spec, copychunk is the only example of an fsctl where
(on a specific error) we have to parse a response


-- 
Thanks,

Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux