]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
CIFS: Fix endian conversion of vcnum field
authorSteve French <sfrench@us.ibm.com>
Fri, 1 May 2009 16:21:04 +0000 (16:21 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 18 May 2009 23:35:09 +0000 (16:35 -0700)
commit 051a2a0d3242b448281376bb63cfa9385e0b6c68 upstream.

When multiply mounting from the same client to the same server, with
different userids, we create a vcnum which should be unique if
possible (this is not the same as the smb uid, which is the handle
to the security context).  We were not endian converting additional
(beyond the first which is zero) vcnum properly.

Acked-by: Shirish Pargaonkar <shirishp@us.ibm.com>
Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/cifs/sess.c

index 70d04d08293bdcf756ee8f1de61906e8f2d141aa..23e8f99cbac9fcbb42868874913af040382f2b94 100644 (file)
@@ -111,7 +111,7 @@ static __le16 get_next_vcnum(struct cifsSesInfo *ses)
 get_vc_num_exit:
        write_unlock(&cifs_tcp_ses_lock);
 
-       return le16_to_cpu(vcnum);
+       return cpu_to_le16(vcnum);
 }
 
 static __u32 cifs_ssetup_hdr(struct cifsSesInfo *ses, SESSION_SETUP_ANDX *pSMB)