]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
nativesdk-intercept: Fix bad intercept chgrp/chown logic
authorEilís 'pidge' Ní Fhlannagáin <pidge@baylibre.com>
Wed, 23 Oct 2024 11:15:41 +0000 (13:15 +0200)
committerSteve Sakoman <steve@sakoman.com>
Tue, 29 Oct 2024 00:18:08 +0000 (17:18 -0700)
commited009b5d58914582c0770222115fc5c5a16bf16d
tree2d8faf32573d465f206591b44c46e739e33451c8
parent7678ae7fc255621d91271599b5f4491520387279
nativesdk-intercept: Fix bad intercept chgrp/chown logic

Running either of these ends up corrupting the os.execv args.

If we run:
./scripts/nativesdk-intercept/chown -R foo:foo bar

The loop here ends up missing the conversion of foo:foo to root:root because
it sees sys.argv[0] and assumes that it's the user:group argument and that we
should convert that. We end up a os.execv(path, args) that have the following
args:

['root:root', '-R', 'foo:foo', 'bar']

As os.execv ignores args[0], we can just populate it with sys.argv[0] and then
loop through sys.argv[1:]. As both chgrp and chown would have either flags and
USER[:GROUP] next, this fixes the issue.

(Backported from OE-Core rev: 2a75f647ec7696d353f4b09099d777ba53f34d36)

Signed-off-by: Eilís 'pidge' Ní Fhlannagáin <pidge@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
scripts/nativesdk-intercept/chgrp
scripts/nativesdk-intercept/chown