diff options
author | Tristan Maat <tristan.maat@codethink.co.uk> | 2019-11-12 11:04:25 +0000 |
---|---|---|
committer | Tristan Maat <tristan.maat@codethink.co.uk> | 2019-11-12 11:19:01 +0000 |
commit | 0a8126cdc7e234d5dd82fb806cb0364188effb31 (patch) | |
tree | 86541af4aa6b611b9466208d3a7963f3a5301523 | |
parent | f5854eee0cf32462b25ea02b42c805453873f4a4 (diff) | |
download | buildstream-tlater/casd-socket-permissions.tar.gz |
tar.py: Make directories with incorrect permissions traversabletlater/casd-socket-permissions
-rw-r--r-- | src/buildstream/plugins/sources/tar.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/buildstream/plugins/sources/tar.py b/src/buildstream/plugins/sources/tar.py index ac80177aa..a0682e085 100644 --- a/src/buildstream/plugins/sources/tar.py +++ b/src/buildstream/plugins/sources/tar.py @@ -75,8 +75,12 @@ class ReadableTarInfo(tarfile.TarInfo): """ @property def mode(self): - # ensure file is readable by owner and group - return self.__permission | 0o440 + # ensure file is readable by owner and group, and executable + # (=traversable) if it's a directory. + if self.isdir(): + return self.__permission | 0o550 + else: + return self.__permission | 0o440 @mode.setter def mode(self, permission): |