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

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

 



On Tue, Nov 8, 2011 at 5:52 PM, Steve French <smfrench@xxxxxxxxx> wrote:
> 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
>

Yes, that looks correct.

Acked-by: Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx>
--
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