From: Volker Lendecke Date: Fri, 22 Jun 2012 13:46:13 +0000 (+0200) Subject: s3-vfs_gpfs: Fix bug #9003, posix acl on gpfs X-Git-Tag: samba-4.0.0beta3~225 X-Git-Url: http://git.samba.org/?a=commitdiff_plain;h=e7b58146d8576ae8bf4eaf2ec1063fe7697e05b8;hp=b9a15f1bfad30a824f9ec87bc9f7c65adf50dae0;p=ddiss%2Fsamba.git s3-vfs_gpfs: Fix bug #9003, posix acl on gpfs gpfs2smb_acl can leave errno!=0 around even if it returned a correct result!=NULL. We can only rely on errno being set if another error condition (in this case result==NULL) indicates an error. If result!=NULL, errno is undefined and can be anything. This leads to SAFE_FREE(result) further down even in the success case. Signed-off-by: Stefan Metzmacher Autobuild-User(master): Stefan Metzmacher Autobuild-Date(master): Fri Jun 22 19:27:39 CEST 2012 on sn-devel-104 --- diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c index d4009c44d88..a165cfadd84 100644 --- a/source3/modules/vfs_gpfs.c +++ b/source3/modules/vfs_gpfs.c @@ -641,8 +641,8 @@ static SMB_ACL_T gpfsacl_get_posix_acl(const char *path, gpfs_aclType_t type) pacl->acl_nace)); result = gpfs2smb_acl(pacl); - if (result == NULL) { - goto done; + if (result != NULL) { + errno = 0; } done: