mirror of
https://git.yoctoproject.org/poky
synced 2026-04-17 00:32:13 +02:00
insane.bbclass: make the checking stricter for unsafe references in scripts
Previously, the checking for unsafe references is not strict enough. It only checks whether '/usr/' is in the script. As a result, any script containing statements like below will match this check. PATH="/bin:/sbin:/usr/bin:/usr/sbin" However, as we can see, this is actually not an unsafe reference. What we really want to check is something like '/usr/bin/tail', so we should make the checking stricter. This patch solves the QA warning in gzip and nfs-utils. (From OE-Core rev: f818f7359c1a5db2c5c041c42eecb9f0434d9800) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -428,7 +428,7 @@ def package_qa_check_unsafe_references_in_scripts(path, name, d, elf, messages):
|
||||
if bool(statinfo.st_mode & stat.S_IXUSR):
|
||||
# grep shell scripts for possible references to /exec_prefix/
|
||||
exec_prefix = d.getVar('exec_prefix', True)
|
||||
statement = "grep -e '%s/' %s > /dev/null" % (exec_prefix, path)
|
||||
statement = "grep -e '%s/[^ :]\{1,\}/[^ :]\{1,\}' %s > /dev/null" % (exec_prefix, path)
|
||||
if subprocess.call(statement, shell=True) == 0:
|
||||
error_msg = pn + ": Found a reference to %s/ in %s" % (exec_prefix, path)
|
||||
package_qa_handle_error("unsafe-references-in-scripts", error_msg, d)
|
||||
|
||||
Reference in New Issue
Block a user