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@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
"""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']
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: