Bladeren bron

Clear tableE2eEncryption

Marino Faggiana 7 jaren geleden
bovenliggende
commit
d429d3638c
2 gewijzigde bestanden met toevoegingen van 11 en 2 verwijderingen
  1. 0 1
      iOSClient/Security/NCEndToEndEncryption.m
  2. 11 1
      iOSClient/Security/NCEntoToEndInterface.swift

+ 0 - 1
iOSClient/Security/NCEndToEndEncryption.m

@@ -1023,7 +1023,6 @@ cleanup:
     return data;
 }
 
-
 - (NSString *)derToPemPrivateKey:(NSString *)input
 {
     NSInteger substringLength = 65;

+ 11 - 1
iOSClient/Security/NCEntoToEndInterface.swift

@@ -377,10 +377,20 @@ class NCEntoToEndInterface : NSObject, OCNetworkingDelegate  {
             appDelegate.messageNotification("E2E decode metadata", description: "Serious internal error in decoding metadata", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: 0)
             return
         }
-
+        
         // Clear all date directory and reload data source
         NCManageDatabase.sharedInstance.setClearAllDateReadDirectory()
         main.reloadDatasource(serverUrl)
+        
+        // Clear tableE2eEncryption
+        guard let objectsE2eEncryption = NCManageDatabase.sharedInstance.getE2eEncryptions(predicate:  NSPredicate(format: "account = %@ AND serverUrl = %@", appDelegate.activeAccount, metadataNet.serverUrl+"/"+metadataNet.fileName)) else {
+            return
+        }
+        for object in objectsE2eEncryption {
+            if NCManageDatabase.sharedInstance.getMetadata(predicate: NSPredicate(format: "account = %@ AND fileName = %@", appDelegate.activeAccount, object.fileNameIdentifier)) == nil {
+                NCManageDatabase.sharedInstance.deleteE2eEncryption(predicate: NSPredicate(format: "account = %@ AND fileNameIdentifier = %@", appDelegate.activeAccount, object.fileNameIdentifier))
+            }
+        }
     }
     
     func getEndToEndMetadataFailure(_ metadataNet: CCMetadataNet!, message: String!, errorCode: Int) {