From 955d6cb60f2a760d555022201586f6006703ff47 Mon Sep 17 00:00:00 2001 From: Jackie Huang Date: Wed, 10 Aug 2016 11:19:44 +0800 Subject: e2fsprogs: Fix missing check for permission denied. If the path to "ROOT_SYSCONFDIR /mke2fs.conf" has a permission denied problem, then the get_dirlist() call will return EACCES. But the code in profile_init will treat that as a fatal error and all executions will fail with: Couldn't init profile successfully (error: 13). But the problem should not really be visible for the target package as the path then will be "/etc/mke2fs.conf", and it is not likely that a user have no permission to read /etc. (From OE-Core rev: 9d7c32a88e0670a09e5e1097ff8bca58e9a7943f) Signed-off-by: Jian Liu Signed-off-by: Jackie Huang Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- ...s-fix-missing-check-for-permission-denied.patch | 32 ++++++++++++++++++++++ meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch (limited to 'meta/recipes-devtools/e2fsprogs') diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch b/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch new file mode 100644 index 0000000000..33054c61fa --- /dev/null +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs/e2fsprogs-fix-missing-check-for-permission-denied.patch @@ -0,0 +1,32 @@ +Subject: [PATCH] Fix missing check for permission denied. + +If the path to "ROOT_SYSCONFDIR/mke2fs.conf" has a permission denied problem, +then the get_dirlist() call will return EACCES. But the code in profile_init +will treat that as a fatal error and all executions will fail with: + Couldn't init profile successfully (error: 13). + +Upstream-Status: Pending + +Written-by: Henrik Wallin + +Signed-off-by: Jackie Huang +--- + lib/support/profile.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/support/profile.c b/lib/support/profile.c +index 51a3314..1c1039f 100644 +--- a/lib/support/profile.c ++++ b/lib/support/profile.c +@@ -335,7 +335,7 @@ profile_init(const char **files, profile_t *ret_profile) + *last = new_file; + last = &new_file->next; + } +- } else if ((retval != ENOTDIR) && ++ } else if ((retval != ENOTDIR) && (retval != EACCES) && + strcmp(*fs, default_filename)) + goto errout; + +-- +2.7.4 + diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb index e82124bf58..837224cc72 100644 --- a/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb +++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb @@ -11,6 +11,8 @@ SRC_URI += "file://acinclude.m4 \ file://Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch \ " +SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch" + SRCREV = "d6adf070b0e85f209c0d7f310188b134b5cb7180" UPSTREAM_CHECK_GITTAGREGEX = "v(?P\d+\.\d+(\.\d+)*)$" -- cgit v1.2.3-54-g00ecf