pseudo: include fix for xattr corruption

pseudo_1.8.1.bb gets the backported patch and pseudo_git.bb gets
updated to include the commit.

(From OE-Core rev: 4e98f3a6e6f61d9d9037ac828b9c4869f7e11458)

(From OE-Core rev: 264114805cc942e052e79bdaa5ae7978d68fdd8e)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Patrick Ohly
2016-11-24 11:28:59 +01:00
committed by Richard Purdie
parent 903c4158a5
commit 793092d1a1
3 changed files with 39 additions and 1 deletions

View File

@@ -0,0 +1,37 @@
From 45eca34c754d416a38bee90fb2d3c110a0b6cc5f Mon Sep 17 00:00:00 2001
From: Seebs <seebs@seebs.net>
Date: Thu, 3 Nov 2016 11:36:12 -0500
Subject: [PATCH] More-correctly fix xattrs
Fix provided by Patrick Ohly <patrick.ohly@intel.com>. This resolves
the actual cause of the path length mismatches, and explains why
I couldn't quite explain why the previous one had only sometimes
worked, also why it showed up on directories but not plain files.
Signed-off-by: Seebs <seebs@seebs.net>
Fixes [YOCTO #10623]
Upstream-Status: Backport [commit 45eca34c754d416a38bee90fb2d3c110a0b6cc5f]
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
---
pseudo_client.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pseudo_client.c b/pseudo_client.c
index 6a08df3..b1a00fa 100644
--- a/pseudo_client.c
+++ b/pseudo_client.c
@@ -1676,7 +1676,7 @@ pseudo_client_op(pseudo_op_t op, int access, int fd, int dirfd, const char *path
* empty path for that.
*/
if (path_extra_1) {
- size_t full_len = path_extra_1len + 1 + pathlen;
+ size_t full_len = path_extra_1len + 1 + pathlen - strip_slash;
size_t partial_len = pathlen - 1 - strip_slash;
if (path_extra_2) {
full_len += path_extra_2len + 1;
--
2.1.4