draft rescue mode through all layers
[python-delta-tar] / deltatar / tarfile.py
index cc74e92..ef4fca0 100644 (file)
@@ -3291,6 +3291,24 @@ class TarIter:
 
         return tarinfo
 
+#---------------------------------------------------------
+# support functionality for rescue mode
+#---------------------------------------------------------
+
+def gen_rescue_index (backup_tar_path, password=None, key=None):
+    psidx   = [] # pseudo index, return value
+    offsets = None
+    secret  = None
+
+    if password is not None:
+        secret = (crypto.PDTCRYPT_SECRET_PW, password)
+    elif key is not None:
+        secret = (crypto.PDTCRYPT_SECRET_KEY, key)
+
+    if secret is not None:
+        offsets = crypto.reconstruct_offsets (backup_tar_path, secret)
+
+    return psidx
 
 #--------------------
 # exported functions