Ensure member names are decoded before adding to various lists.

This commit is contained in:
Gareth J. Greenaway 2018-06-06 08:52:35 -07:00
parent 1ce7d6c38a
commit 9af49bc595
No known key found for this signature in database
GPG key ID: 10B62F8A7CAD7A41

View file

@ -186,12 +186,13 @@ def list_(name,
else {'fileobj': cached.stdout, 'mode': 'r|'}
with contextlib.closing(tarfile.open(**open_kwargs)) as tar_archive:
for member in tar_archive.getmembers():
_member = salt.utils.data.decode(member.name)
if member.issym():
links.append(member.name)
links.append(_member)
elif member.isdir():
dirs.append(member.name + '/')
dirs.append(_member + '/')
else:
files.append(member.name)
files.append(_member)
return dirs, files, links
except tarfile.ReadError: