jffs2_acl_count() tests < 0 on unsigned
PATCH 1/1 jffs2_acl_count() tests < 0 on unsigned
This patch wasn't tested in any way. ------------------------------>8-------------8<--------------------------------- size_t s is unsigned and cannot be less than 0.
Signed-off-by Roel Kluin <[email protected]>
---
fs/jffs2/acl.c +2 -2
@@ -38,12 +38,12 @@ static int jffs2_acl_count(size_t size)size_t s; size -=sizeof (struct jffs2_acl_header ); - s = size -4 *sizeof (struct jffs2_acl_entry_short ); -if (s <0 ) { +if (size <4 *sizeof (struct jffs2_acl_entry_short )) {if (size %sizeof (struct jffs2_acl_entry_short ))return -1 ;return size /sizeof (struct jffs2_acl_entry_short ); }else { + s = size -4 *sizeof (struct jffs2_acl_entry_short );if (s %sizeof (struct jffs2_acl_entry ))return -1 ;return s /sizeof (struct jffs2_acl_entry ) +4 ;