diff options
| author | jvoisin | 2011-06-30 17:16:30 +0200 |
|---|---|---|
| committer | jvoisin | 2011-06-30 17:16:30 +0200 |
| commit | a62aab0c52c0826097f2f883c9c9aa8f9b66a5e8 (patch) | |
| tree | f8e91852282212ee9eac1c3d0e0a6a8fde66c614 | |
| parent | 6d53d90e8e133660e4ac482ffbec5c17cf98f41b (diff) | |
is_clean() now works on archives
| -rw-r--r-- | lib/archive.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/archive.py b/lib/archive.py index 7b94edf..789dcb7 100644 --- a/lib/archive.py +++ b/lib/archive.py | |||
| @@ -58,6 +58,16 @@ class TarStripper(parser.Generic_parser): | |||
| 58 | if not class_file.is_clean(): | 58 | if not class_file.is_clean(): |
| 59 | self.folder_list = [] | 59 | self.folder_list = [] |
| 60 | return False | 60 | return False |
| 61 | if current_file.mtime is not 0: | ||
| 62 | return False | ||
| 63 | if current_file.uid is not 0: | ||
| 64 | return False | ||
| 65 | if current_file.gid is not 0: | ||
| 66 | return False | ||
| 67 | if current_file.uname is not '': | ||
| 68 | return False | ||
| 69 | if current_file.gname is not '': | ||
| 70 | return False | ||
| 61 | mat.secure_remove(current_file.name) | 71 | mat.secure_remove(current_file.name) |
| 62 | else: | 72 | else: |
| 63 | self.folder_list.insert(0, current_file.name) | 73 | self.folder_list.insert(0, current_file.name) |
| @@ -66,7 +76,7 @@ class TarStripper(parser.Generic_parser): | |||
| 66 | for folder in self.folder_list: #delete remainings folders | 76 | for folder in self.folder_list: #delete remainings folders |
| 67 | shutil.rmtree(folder) | 77 | shutil.rmtree(folder) |
| 68 | self.folder_list = [] | 78 | self.folder_list = [] |
| 69 | return False | 79 | return True |
| 70 | 80 | ||
| 71 | def get_meta(self): | 81 | def get_meta(self): |
| 72 | self.tarin = tarfile.open(self.filename, 'r' + self.compression) | 82 | self.tarin = tarfile.open(self.filename, 'r' + self.compression) |
