Re: [PATCH] cifs: Fix sparse warning when calling cifs_strtoUCS

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

 



Isn't this cleaner (avoids adding a cast by defining wpwd as what it
really is, le16, rather than u16)?

diff --git a/fs/cifs/smbencrypt.c b/fs/cifs/smbencrypt.c
index 7cacba1..80d8508 100644
--- a/fs/cifs/smbencrypt.c
+++ b/fs/cifs/smbencrypt.c
@@ -209,7 +209,7 @@ E_md4hash(const unsigned char *passwd, unsigned char *p16,
 {
 	int rc;
 	int len;
-	__u16 wpwd[129];
+	__le16 wpwd[129];

 	/* Password cannot be longer than 128 characters */
 	if (passwd) /* Password must be converted to NT unicode */
@@ -219,8 +219,8 @@ E_md4hash(const unsigned char *passwd, unsigned char *p16,
 		*wpwd = 0; /* Ensure string is null terminated */
 	}

-	rc = mdfour(p16, (unsigned char *) wpwd, len * sizeof(__u16));
-	memset(wpwd, 0, 129 * sizeof(__u16));
+	rc = mdfour(p16, (unsigned char *) wpwd, len * sizeof(__le16));
+	memset(wpwd, 0, 129 * sizeof(__le16));

 	return rc;
 }

On Fri, Nov 4, 2011 at 9:42 AM,  <shirishpargaonkar@xxxxxxxxx> wrote:
> From: Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx>
>
>
> Fix sparse endian check warning while calling cifs_strtoUCS
>
> CHECK   fs/cifs/smbencrypt.c
> fs/cifs/smbencrypt.c:216:37: warning: incorrect type in argument 1
> (different base types)
> fs/cifs/smbencrypt.c:216:37:    expected restricted __le16 [usertype] *<noident>
> fs/cifs/smbencrypt.c:216:37:    got unsigned short *<noident>
>
>
> Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx>
> ---
>  fs/cifs/smbencrypt.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/fs/cifs/smbencrypt.c b/fs/cifs/smbencrypt.c
> index 7cacba1..56002ae 100644
> --- a/fs/cifs/smbencrypt.c
> +++ b/fs/cifs/smbencrypt.c
> @@ -213,7 +213,7 @@ E_md4hash(const unsigned char *passwd, unsigned char *p16,
>
>        /* Password cannot be longer than 128 characters */
>        if (passwd) /* Password must be converted to NT unicode */
> -               len = cifs_strtoUCS(wpwd, passwd, 128, codepage);
> +               len = cifs_strtoUCS((__le16 *)wpwd, passwd, 128, codepage);
>        else {
>                len = 0;
>                *wpwd = 0; /* Ensure string is null terminated */
> --
> 1.6.0.2
>
>



-- 
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