s3: Attempt to fix bug 8016 -- gpfs_get_xattr broken
authorVolker Lendecke <vl@samba.org>
Fri, 18 Mar 2011 16:47:27 +0000 (17:47 +0100)
committerKarolin Seeger <kseeger@samba.org>
Tue, 14 Jun 2011 10:56:06 +0000 (12:56 +0200)
(cherry picked from commit 820628a6d06c715273ae221c926e1c1e7d7e8385)

source3/modules/vfs_gpfs.c

index 262d1679a8bc57b0999e9192442142405bead3dd..0c28408448d152cd1338723faf1b05a5fbf874a9 100644 (file)
@@ -958,6 +958,7 @@ static ssize_t gpfs_get_xattr(struct vfs_handle_struct *handle,  const char *pat
         unsigned int dosmode = 0;
         struct gpfs_winattr attrs;
         int ret = 0;
+       ssize_t result;
 
         DEBUG(10, ("gpfs_get_xattr: %s \n",path));
 
@@ -994,9 +995,11 @@ static ssize_t gpfs_get_xattr(struct vfs_handle_struct *handle,  const char *pat
                 dosmode |= FILE_ATTRIBUTE_READONLY;
         }
 
-        snprintf(attrstr, size, "0x%x", dosmode & SAMBA_ATTRIBUTES_MASK);
+        result = snprintf(attrstr, size, "0x%x",
+                         dosmode & SAMBA_ATTRIBUTES_MASK) + 1;
+
         DEBUG(10, ("gpfs_get_xattr: returning %s\n",attrstr));
-        return size;
+        return result;
 }
 
 static int vfs_gpfs_stat(struct vfs_handle_struct *handle,