[oe-commits] [openembedded-core] 09/14: lib/oe/lsb: sanitise the distro identifier

git at git.openembedded.org git at git.openembedded.org
Wed Apr 13 09:13:58 UTC 2016


rpurdie pushed a commit to branch krogoth
in repository openembedded-core.

commit 8a96a7207561e00eb92e4fb69e7340f20bfa2053
Author: Ross Burton <ross.burton at intel.com>
AuthorDate: Tue Apr 12 18:04:22 2016 +0100

    lib/oe/lsb: sanitise the distro identifier
    
    The distribution identifier is often used to create filenames, so it needs to be
    safe to use as a filename.  Whilst most distributions have e.g. Fedora or Debian
    as their name, it is possible that the name contains special characters.
    
    To ensure this doesn't cause a problem strip out any non-alphanumerics from the
    distribution name before returning it.
    
    [ YOCTO #9443 ]
    
    Signed-off-by: Ross Burton <ross.burton at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/lib/oe/lsb.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/lib/oe/lsb.py b/meta/lib/oe/lsb.py
index ddfe71b..e0bdfba 100644
--- a/meta/lib/oe/lsb.py
+++ b/meta/lib/oe/lsb.py
@@ -62,6 +62,8 @@ def distro_identifier(adjust_hook=None):
     """Return a distro identifier string based upon lsb_release -ri,
        with optional adjustment via a hook"""
 
+    import re
+
     lsb_data = release_dict()
     if lsb_data:
         distro_id, release = lsb_data['Distributor ID'], lsb_data['Release']
@@ -76,6 +78,9 @@ def distro_identifier(adjust_hook=None):
         distro_id, release = adjust_hook(distro_id, release)
     if not distro_id:
         return "Unknown"
+    # Filter out any non-alphanumerics
+    distro_id = re.sub(r'\W', '', distro_id)
+
     if release:
         id_str = '{0}-{1}'.format(distro_id, release)
     else:

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list