mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
pseudo: Fix statx function usage
There is magic in the posts where specific variable names have specific magic. For that magic to work, "path" needs to be used not "pathname" as is currently there. Fix this, which fixes path issues on systems using statx (Ubuntu 20.04 in particular). (From OE-Core rev: f9ae80aee98a7bb59c83ac9ebf9d317302507cec) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
c194e5fac6
commit
a5d7936202
56
meta/recipes-devtools/pseudo/files/statxfix.patch
Normal file
56
meta/recipes-devtools/pseudo/files/statxfix.patch
Normal file
|
@ -0,0 +1,56 @@
|
|||
There is magic in the posts where specific variable names have specific
|
||||
magic. For that magic to work, "path" needs to be used not "pathname" as
|
||||
is currently there. Fix this, which fixes path issues on systems using
|
||||
statx (Ubuntu 20.04 in particular).
|
||||
|
||||
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Upstream-Status: Pending
|
||||
|
||||
Index: git/ports/linux/statx/guts/statx.c
|
||||
===================================================================
|
||||
--- git.orig/ports/linux/statx/guts/statx.c
|
||||
+++ git/ports/linux/statx/guts/statx.c
|
||||
@@ -5,14 +5,14 @@
|
||||
* SPDX-License-Identifier: LGPL-2.1-only
|
||||
*
|
||||
* int
|
||||
- * statx(int dirfd, const char *pathname, int flags, unsigned int mask, struct statx *statxbuf) {
|
||||
+ * statx(int dirfd, const char *path, int flags, unsigned int mask, struct statx *statxbuf) {
|
||||
* int rc = -1;
|
||||
*/
|
||||
pseudo_msg_t *msg;
|
||||
PSEUDO_STATBUF buf;
|
||||
int save_errno;
|
||||
|
||||
- rc = real_statx(dirfd, pathname, flags, mask, statxbuf);
|
||||
+ rc = real_statx(dirfd, path, flags, mask, statxbuf);
|
||||
save_errno = errno;
|
||||
if (rc == -1) {
|
||||
return rc;
|
||||
@@ -25,16 +25,16 @@
|
||||
buf.st_mode = statxbuf->stx_mode;
|
||||
buf.st_rdev = makedev(statxbuf->stx_rdev_major, statxbuf->stx_rdev_minor);
|
||||
buf.st_nlink = statxbuf->stx_nlink;
|
||||
- msg = pseudo_client_op(OP_STAT, 0, -1, dirfd, pathname, &buf);
|
||||
+ msg = pseudo_client_op(OP_STAT, 0, -1, dirfd, path, &buf);
|
||||
if (msg && msg->result == RESULT_SUCCEED) {
|
||||
- pseudo_debug(PDBGF_FILE, "statx(path %s), flags %o, stat rc %d, stat uid %o\n", pathname, flags, rc, statxbuf->stx_uid);
|
||||
+ pseudo_debug(PDBGF_FILE, "statx(path %s), flags %o, stat rc %d, stat uid %o\n", path, flags, rc, statxbuf->stx_uid);
|
||||
statxbuf->stx_uid = msg->uid;
|
||||
statxbuf->stx_gid = msg->gid;
|
||||
statxbuf->stx_mode = msg->mode;
|
||||
statxbuf->stx_rdev_major = major(msg->rdev);
|
||||
statxbuf->stx_rdev_minor = minor(msg->rdev);
|
||||
} else {
|
||||
- pseudo_debug(PDBGF_FILE, "statx(path %s) failed, flags %o, stat rc %d, stat uid %o\n", pathname, flags, rc, statxbuf->stx_uid);
|
||||
+ pseudo_debug(PDBGF_FILE, "statx(path %s) failed, flags %o, stat rc %d, stat uid %o\n", path, flags, rc, statxbuf->stx_uid);
|
||||
}
|
||||
errno = save_errno;
|
||||
/* return rc;
|
||||
Index: git/ports/linux/statx/wrapfuncs.in
|
||||
===================================================================
|
||||
--- git.orig/ports/linux/statx/wrapfuncs.in
|
||||
+++ git/ports/linux/statx/wrapfuncs.in
|
||||
@@ -1 +1 @@
|
||||
-int statx(int dirfd, const char *pathname, int flags, unsigned int mask, struct statx *statxbuf);
|
||||
+int statx(int dirfd, const char *path, int flags, unsigned int mask, struct statx *statxbuf);
|
|
@ -9,6 +9,7 @@ SRC_URI = "git://git.yoctoproject.org/pseudo;branch=oe-core \
|
|||
file://xattr_fix.patch \
|
||||
file://mayunlink.patch \
|
||||
file://pathfix.patch \
|
||||
file://statxfix.patch \
|
||||
file://fallback-passwd \
|
||||
file://fallback-group \
|
||||
"
|
||||
|
|
Loading…
Reference in New Issue
Block a user