• Aurelien Aptel's avatar
    CIFS: do not send invalid input buffer on QUERY_INFO requests · 48923d2a
    Aurelien Aptel authored
    query_info() doesn't use the InputBuffer field of the QUERY_INFO
    request, therefore according to [MS-SMB2] it must:
    
    a) set the InputBufferOffset to 0
    b) send a zero-length InputBuffer
    
    Doing a) is trivial but b) is a bit more tricky.
    
    The packet is allocated according to it's StructureSize, which takes
    into account an extra 1 byte buffer which we don't need
    here. StructureSize fields must have constant values no matter the
    actual length of the whole packet so we can't just edit that constant.
    
    Both the NetBIOS-over-TCP message length ("rfc1002 length") L and the
    iovec length L' have to be updated. Since L' is computed from L we
    just update L by decrementing it by one.
    Signed-off-by: default avatarAurelien Aptel <aaptel@suse.com>
    Signed-off-by: default avatarSteve French <smfrench@gmail.com>
    48923d2a
smb2pdu.c 97.6 KB