Adrian Bunk | 27 Oct 2007 16:18

jffs2_init_acl_post() can return uninitialized variable

Commit cfc8dc6f6f69ede939e09c2af06a01adee577285 added the following 
function that can return the value of an uninitialized variable:

<--  snip  -->

...
int jffs2_init_acl_post(struct inode *inode)
{
        struct jffs2_inode_info *f = JFFS2_INODE_INFO(inode);
        int rc;

        if (f->i_acl_default) {
                rc = __jffs2_set_acl(inode, JFFS2_XPREFIX_ACL_DEFAULT, f->i_acl_default);
                if (rc)
                        return rc;
        }

        if (f->i_acl_access) {
                rc = __jffs2_set_acl(inode, JFFS2_XPREFIX_ACL_ACCESS, f->i_acl_access);
                if (rc)
                        return rc;
        }

        return rc;
}
...

<--  snip  -->

Spotted by the Coverity checker.
(Continue reading)

WANG Cong | 27 Oct 2007 16:47
Picon

[Git Patch]fs/jffs2/acl.c: Fix a may-be-uninitialized return value


Fix a may-be-uninitialized return value.

Found-by: Adrian Bunk <bunk <at> kernel.org>
Signed-off-by: WANG Cong <xiyou.wangcong <at> gmail.com>

---
 fs/jffs2/acl.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/jffs2/acl.c b/fs/jffs2/acl.c
index 9728614..5b14062 100644
--- a/fs/jffs2/acl.c
+++ b/fs/jffs2/acl.c
 <at>  <at>  -358,7 +358,7  <at>  <at>  int jffs2_init_acl_pre(struct inode *dir_i, struct inode *inode, int *i_mode)
 int jffs2_init_acl_post(struct inode *inode)
 {
 	struct jffs2_inode_info *f = JFFS2_INODE_INFO(inode);
-	int rc;
+	int rc = 0;

 	if (f->i_acl_default) {
 		rc = __jffs2_set_acl(inode, JFFS2_XPREFIX_ACL_DEFAULT, f->i_acl_default);

--

-- 
May the Source Be With You.
David Woodhouse | 27 Oct 2007 16:42
Favicon

Re: jffs2_init_acl_post() can return uninitialized variable

On Sat, 2007-10-27 at 16:18 +0200, Adrian Bunk wrote:
> Commit cfc8dc6f6f69ede939e09c2af06a01adee577285 added the following 
> function that can return the value of an uninitialized variable:

Thanks.

Linus, please pull the fix from git://git.infradead.org/mtd-2.6.git

David Woodhouse (2):
      [JFFS2] Prevent return of initialised variable in jffs2_init_acl_post()
      [JFFS2] Update MAINTAINERS entry -- the jffs-dev list is dead

 MAINTAINERS    |    4 ++--
 fs/jffs2/acl.c |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

--

-- 
dwmw2


Gmane