aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChen Qi <qi.chen@windriver.com>2013-12-05 10:54:35 -0500
committerChen Qi <Qi.Chen@windriver.com>2014-09-09 14:34:19 +0800
commit479939f8aff61e4697df9b04a072a52c9108be7c (patch)
tree9fca6bfa8723f52fa756d51c68c6f3ce800783ac
parentaad5305342e10b8fdbf9f7fab8a07dab65412255 (diff)
downloadopenembedded-core-contrib-479939f8aff61e4697df9b04a072a52c9108be7c.tar.gz
openembedded-core-contrib-479939f8aff61e4697df9b04a072a52c9108be7c.tar.bz2
openembedded-core-contrib-479939f8aff61e4697df9b04a072a52c9108be7c.zip
insane.bbclass: make the checking stricter for unsafe references in scripts
[CQID: WIND00444742] 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. (LOCAL REV: NOT UPSTREAM) -- Sent to oe-core on 20131113 Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com>
-rw-r--r--meta/classes/insane.bbclass2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 3dd2e7fb6ac..4dc02209752 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -385,7 +385,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)