From 21a1ff8887d0f23d18ef0606b2bf2092e4634454 Mon Sep 17 00:00:00 2001 From: Liu Bo Date: Fri, 25 Apr 2014 18:44:03 +0800 Subject: Btrfs-progs: set string end sing '\0' for property Set string "xattr_name" 's end with '\0' so that it won't be violated in memory. With this fix, xfstest/btrfs/048 can pass on my box. Signed-off-by: Liu Bo Reviewed-by: Filipe Manana Signed-off-by: David Sterba --- props.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'props.c') diff --git a/props.c b/props.c index 04b9e5f..9fd612f 100644 --- a/props.c +++ b/props.c @@ -129,13 +129,14 @@ static int prop_compression(enum prop_object_type type, goto out; } - xattr_name = malloc(XATTR_BTRFS_PREFIX_LEN + strlen(name)); + xattr_name = malloc(XATTR_BTRFS_PREFIX_LEN + strlen(name) + 1); if (!xattr_name) { ret = -ENOMEM; goto out; } memcpy(xattr_name, XATTR_BTRFS_PREFIX, XATTR_BTRFS_PREFIX_LEN); memcpy(xattr_name + XATTR_BTRFS_PREFIX_LEN, name, strlen(name)); + xattr_name[XATTR_BTRFS_PREFIX_LEN + strlen(name)] = '\0'; if (value) sret = fsetxattr(fd, xattr_name, value, strlen(value), 0); -- cgit v1.2.1