diff mbox

nfs4-acl-tools : nfs4_setfacl' failed with unexpected messages if the format of the input file is incorrect.

Message ID 4E0AD278.3000503@linux.vnet.ibm.com (mailing list archive)
State New, archived
Headers show

Commit Message

faizan husain June 29, 2011, 7:21 a.m. UTC
On RHEL5.5 and above releases,
read ACL entries to set from file leads to a segmentation fault on pp64,
more over the same problem does not show up for x86_64 architecture.

here is what i tried.
mounted a file system over nfs4.

#rpm -qa | grep nfs4
nfs4-acl-tools-0.3.3-5.el6.ppc64

'nfs4_setfacl' failed with unexpected message:
#nfs4_setfacl -S file4 file1
*** glibc detected *** nfs4_setfacl: double free or corruption (out):
0x08007760 ***
expected out should be like
Scanning ACE string 'abcd' failed.
Failed while inserting ACE(s).


 From b8333732964780394518be74ab0b7c61a7e4be4f Mon Sep 17 00:00:00 2001
From: faizan <faizan.husain@xxxxxxx>
Date: Tue, 28 Jun 2011 16:06:47 +0530
Subject: [PATCH][BUILD]] FIX - 'nfs4_setfacl' failed with unexpected 
messages iff
the format of the input file is incorrect.


Signed-off-by: faizan <faizan.husain@xxxxxxxx>
---
  libnfs4acl/nfs4_ace_from_string.c |    1 -
  1 files changed, 0 insertions(+), 1 deletions(-)

--
1.7.1

Regards
Faizan

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Jim Rees June 29, 2011, 12:18 p.m. UTC | #1
faizan husain wrote:

  On RHEL5.5 and above releases,
  read ACL entries to set from file leads to a segmentation fault on pp64,
  more over the same problem does not show up for x86_64 architecture.

...

  diff --git a/libnfs4acl/nfs4_ace_from_string.c
  b/libnfs4acl/nfs4_ace_from_string.c
  index 9d877fb..1cc220e 100644
  --- a/libnfs4acl/nfs4_ace_from_string.c
  +++ b/libnfs4acl/nfs4_ace_from_string.c
  @@ -125,7 +125,6 @@ parse_alloc_fields(char *buf, char *fields[NUMFIELDS])
  
          return 0;
   out_free:
  -       free_fields(fields);
          return -ENOMEM;
   }

If this fix is correct, shouldn't the name of the label be changed?  Better
yet eliminate the gotos and label.

However, I don't think the fix is correct.  I suspect you need a test for
strsep() returning NULL.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/libnfs4acl/nfs4_ace_from_string.c 
b/libnfs4acl/nfs4_ace_from_string.c
index 9d877fb..1cc220e 100644
--- a/libnfs4acl/nfs4_ace_from_string.c
+++ b/libnfs4acl/nfs4_ace_from_string.c
@@ -125,7 +125,6 @@  parse_alloc_fields(char *buf, char *fields[NUMFIELDS])

         return 0;
  out_free:
-       free_fields(fields);
         return -ENOMEM;
  }