Skip to content

Commit

Permalink
f2fs: fix wrong casting for dentry name
Browse files Browse the repository at this point in the history
The dentry name type is unsigned char *.
If we don't match this type, some character codes can be changed by signed bit.

Signed-off-by: Jaegeuk Kim <[email protected]>
  • Loading branch information
Jaegeuk Kim committed Aug 29, 2014
1 parent 922cedb commit 3304b56
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions fs/f2fs/hash.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ static void TEA_transform(unsigned int buf[4], unsigned int const in[])
buf[1] += b1;
}

static void str2hashbuf(const char *msg, size_t len, unsigned int *buf, int num)
static void str2hashbuf(const unsigned char *msg, size_t len,
unsigned int *buf, int num)
{
unsigned pad, val;
int i;
Expand Down Expand Up @@ -73,9 +74,9 @@ f2fs_hash_t f2fs_dentry_hash(const struct qstr *name_info)
{
__u32 hash;
f2fs_hash_t f2fs_hash;
const char *p;
const unsigned char *p;
__u32 in[8], buf[4];
const char *name = name_info->name;
const unsigned char *name = name_info->name;
size_t len = name_info->len;

if ((len <= 2) && (name[0] == '.') &&
Expand Down

0 comments on commit 3304b56

Please sign in to comment.