diff options
| author | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2012-03-20 14:59:50 -0400 |
|---|---|---|
| committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2012-03-20 14:59:50 -0400 |
| commit | 44e8ba93cf330f075178e31759100f367313790a (patch) | |
| tree | 27956beb159bfb603d672b43cb207690a087dd0a /fs/cifs/xattr.c | |
| parent | e9fe8a714e450b26f76eaf8832f5b9fe24d00e79 (diff) | |
| parent | c16fa4f2ad19908a47c63d8fa436a1178438c7e7 (diff) | |
Merge commit 'v3.3' into fbdev-next
Diffstat (limited to 'fs/cifs/xattr.c')
| -rw-r--r-- | fs/cifs/xattr.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/cifs/xattr.c b/fs/cifs/xattr.c index 45f07c46f3ed..10d92cf57ab6 100644 --- a/fs/cifs/xattr.c +++ b/fs/cifs/xattr.c | |||
| @@ -105,7 +105,6 @@ int cifs_setxattr(struct dentry *direntry, const char *ea_name, | |||
| 105 | struct cifs_tcon *pTcon; | 105 | struct cifs_tcon *pTcon; |
| 106 | struct super_block *sb; | 106 | struct super_block *sb; |
| 107 | char *full_path; | 107 | char *full_path; |
| 108 | struct cifs_ntsd *pacl; | ||
| 109 | 108 | ||
| 110 | if (direntry == NULL) | 109 | if (direntry == NULL) |
| 111 | return -EIO; | 110 | return -EIO; |
| @@ -164,23 +163,24 @@ int cifs_setxattr(struct dentry *direntry, const char *ea_name, | |||
| 164 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); | 163 | cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR); |
| 165 | } else if (strncmp(ea_name, CIFS_XATTR_CIFS_ACL, | 164 | } else if (strncmp(ea_name, CIFS_XATTR_CIFS_ACL, |
| 166 | strlen(CIFS_XATTR_CIFS_ACL)) == 0) { | 165 | strlen(CIFS_XATTR_CIFS_ACL)) == 0) { |
| 166 | #ifdef CONFIG_CIFS_ACL | ||
| 167 | struct cifs_ntsd *pacl; | ||
| 167 | pacl = kmalloc(value_size, GFP_KERNEL); | 168 | pacl = kmalloc(value_size, GFP_KERNEL); |
| 168 | if (!pacl) { | 169 | if (!pacl) { |
| 169 | cFYI(1, "%s: Can't allocate memory for ACL", | 170 | cFYI(1, "%s: Can't allocate memory for ACL", |
| 170 | __func__); | 171 | __func__); |
| 171 | rc = -ENOMEM; | 172 | rc = -ENOMEM; |
| 172 | } else { | 173 | } else { |
| 173 | #ifdef CONFIG_CIFS_ACL | ||
| 174 | memcpy(pacl, ea_value, value_size); | 174 | memcpy(pacl, ea_value, value_size); |
| 175 | rc = set_cifs_acl(pacl, value_size, | 175 | rc = set_cifs_acl(pacl, value_size, |
| 176 | direntry->d_inode, full_path, CIFS_ACL_DACL); | 176 | direntry->d_inode, full_path, CIFS_ACL_DACL); |
| 177 | if (rc == 0) /* force revalidate of the inode */ | 177 | if (rc == 0) /* force revalidate of the inode */ |
| 178 | CIFS_I(direntry->d_inode)->time = 0; | 178 | CIFS_I(direntry->d_inode)->time = 0; |
| 179 | kfree(pacl); | 179 | kfree(pacl); |
| 180 | } | ||
| 180 | #else | 181 | #else |
| 181 | cFYI(1, "Set CIFS ACL not supported yet"); | 182 | cFYI(1, "Set CIFS ACL not supported yet"); |
| 182 | #endif /* CONFIG_CIFS_ACL */ | 183 | #endif /* CONFIG_CIFS_ACL */ |
| 183 | } | ||
| 184 | } else { | 184 | } else { |
| 185 | int temp; | 185 | int temp; |
| 186 | temp = strncmp(ea_name, POSIX_ACL_XATTR_ACCESS, | 186 | temp = strncmp(ea_name, POSIX_ACL_XATTR_ACCESS, |
