combo-layer sanity_check fix
cover combo-layer sanity_check fix
The following changes since commit c0f0b6e6ef1edc0a9f9e1ceffb1cdbbef2e409c6:
glibc: CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflow (2015-05-16 22:37:21 +0100)
are available in the git repository at:
git://github.com/pohly/openembedded-core master
https://github.com/pohly/openembedded-core/tree/master
Patrick Ohly (1):
combo-layer: handle unset dest_dir in sanity_check()
scripts/combo-layer | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
Signature · 1 line
2.1.4
PATCH 1/1 combo-layer: handle unset dest_dir in sanity_check()
The previous "clean up dest_dir checking" patch (f8cdbe7497) improved handling of empty dest_dir but made handling of unset dest_dir worse:
instead showing the "Option dest_dir is not defined for component ..." error, it fails with a Python exception.
Avoid that by providing a sane fallback for the unset case. With that change, dest_dir is no longer strictly required, but the check for it is kept to ensure that a combo-layer.conf also works with older combo-layer versions.
[Yocto #7773]
--- scripts/combo-layer | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
scripts/combo-layer +4 -2
@@ -145,8 +145,10 @@ class Configuration(object): msg = "%s\nOption %s is not defined for component %s" %(msg, option, name) missing_options.append(option) # Sanitize dest_dir so that we do not have to deal with edge cases - # (empty string, double slashes) in the rest of the code. - dest_dir = os.path.normpath(self.repos[name]["dest_dir"]) + # (unset, empty string, double slashes) in the rest of the code. + # It not being set will still be flagged as error because it is + # listed as required option above; that could be changed now. + dest_dir = os.path.normpath(self.repos[name].get("dest_dir", ".")) self.repos[name]["dest_dir"] = "." if not dest_dir else dest_dir if msg != "": logger.error("configuration file %s has the following error: %s" % (self.conffile,msg))
Signature · 1 line
2.1.4
Re: [PATCH 1/1] combo-layer: handle unset dest_dir in sanity_check()
Quoted 28 lines · On Wednesday 20 May 2015 13:48:20 Patrick Ohly wrote:
The previous "clean up
dest_dirchecking" patch (f8cdbe7497) improved handling of emptydest_dirbut made handling of unsetdest_dirworse:
instead showing the "Optiondest_diris not defined for component ..." error, it fails with a Python exception.Avoid that by providing a sane fallback for the unset case. With that change,
dest_diris no longer strictly required, but the check for it is kept to ensure that a combo-layer.conf also works with older combo-layer versions.[Yocto #7773]
Signed-off-by Patrick Ohly <[email protected]>--- scripts/combo-layer | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)scripts/combo-layer +0
-0@@ -145,8 +145,10 @@ class Configuration(object): msg = "%s\nOption %s is not defined for component %s" %(msg, option, name) missing_options.append(option) # Sanitize dest_dir so that we do not have to deal with edgecases - # (empty string, double slashes) in the rest of the
code. -dest_dir=os.path.normpath(self.repos[name]["dest_dir"])+ # (unset, empty
Quoted 8 lines
string, double slashes) in the rest of the code. + # It not
being set will still be flagged as error because it is + #
listed as required option above; that could be changed now. +dest_dir=os.path.normpath(self.repos[name].get("dest_dir", "."))self.repos[name]["dest_dir"] = "." if notdest_direlsedest_dirif msg != "":
logger.error("configuration file %s has the following error:
%s" % (self.conffile,msg))
I suppose we might now tidy up the line that follows, but that's less critical than fixing the behaviour that this patch does. Therefore:
Cheers,
Paul
Signature · 2 lines
Paul Eggleton Intel Open Source Technology Centre
Re: [PATCH 1/1] combo-layer: handle unset dest_dir in sanity_check()
In reply to Patrick OhlyPlease ignore, I accidentally resent this pull request.
Quoted 4 lines · Patrick Ohly
The previous "clean up
dest_dirchecking" patch (f8cdbe7497) improved handling of emptydest_dirbut made handling of unsetdest_dirworse:
instead showing the "Optiondest_diris not defined for component ..." error, it fails with a Python exception.
...