浏览代码

fix pinning

marinofaggiana 6 年之前
父节点
当前提交
bc7b4e784a

+ 1 - 1
iOSClient/Login/CCLogin.h

@@ -36,7 +36,7 @@
 
 @end
 
-@interface CCLogin : UIViewController <UITextFieldDelegate, NSURLSessionTaskDelegate, CCCertificateDelegate>
+@interface CCLogin : UIViewController <UITextFieldDelegate, CCCertificateDelegate>
 
 @property (nonatomic, weak) id <CCLoginDelegate> delegate;
 

+ 1 - 14
iOSClient/Login/CCLogin.m

@@ -169,7 +169,7 @@
     if ([self.baseUrl.text hasSuffix:@"/"])
         self.baseUrl.text = [self.baseUrl.text substringToIndex:[self.baseUrl.text length] - 1];
     
-    [[OCNetworking sharedManager] serverStatusUrl:self.baseUrl.text delegate:self completion:^(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode) {
+    [[OCNetworking sharedManager] serverStatusUrl:self.baseUrl.text completion:^(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode) {
         
         if (errorCode == 0) {
             
@@ -359,9 +359,6 @@
                     // STOP Intro
                     [CCUtility setIntro:YES];
                     
-                    // LOGOUT
-                    //[appDelegate unsubscribingNextcloudServerPushNotification];
-                    
                     [[NCManageDatabase sharedInstance] deleteAccount:account];
                     [[NCManageDatabase sharedInstance] addAccount:account url:url user:user password:password loginFlow:false];
                     
@@ -442,14 +439,4 @@
     [qrCode scan];
 }
 
--(void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential * _Nullable))completionHandler
-{
-    // The pinnning check
-    if ([[CCCertificate sharedManager] checkTrustedChallenge:challenge]) {
-        completionHandler(NSURLSessionAuthChallengeUseCredential, [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]);
-    } else {
-        completionHandler(NSURLSessionAuthChallengePerformDefaultHandling, nil);
-    }
-}
-
 @end

+ 1 - 4
iOSClient/Login/CCLoginWeb.swift

@@ -123,10 +123,7 @@ extension CCLoginWeb: SwiftModalWebVCDelegate {
                         
                         // STOP Intro
                         CCUtility.setIntro(true)
-                        
-                        // LOGOUT
-                        //appDelegate.unsubscribingNextcloudServerPushNotification()
-                        
+                                                
                         // Add new account
                         NCManageDatabase.sharedInstance.deleteAccount(account)
                         NCManageDatabase.sharedInstance.addAccount(account, url: serverUrl, user: username, password: password, loginFlow: true)

+ 1 - 1
iOSClient/Networking/NCService.swift

@@ -298,7 +298,7 @@ class NCService: NSObject {
     
     private func requestServerStatus() {
 
-        OCNetworking.sharedManager().serverStatusUrl(appDelegate.activeUrl, delegate: self, completion: { (serverProductName, versionMajor, versionMicro, versionMinor, message, errorCode) in
+        OCNetworking.sharedManager().serverStatusUrl(appDelegate.activeUrl, completion: { (serverProductName, versionMajor, versionMicro, versionMinor, message, errorCode) in
             if errorCode == 0 {
                 if serverProductName == "owncloud" {
                     self.appDelegate.messageNotification("_warning_", description: "_warning_owncloud_", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.info, errorCode: Int(k_CCErrorInternalError))

+ 1 - 1
iOSClient/Networking/OCNetworking.h

@@ -38,7 +38,7 @@
 #pragma mark ===== Server =====
 
 - (void)checkServerUrl:(NSString *)serverUrl user:(NSString *)user userID:(NSString *)userID password:(NSString *)password completion:(void (^)(NSString *message, NSInteger errorCode))completion;
-- (void)serverStatusUrl:(NSString *)serverUrl delegate:(id)delegate completion:(void(^)(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode))completion;
+- (void)serverStatusUrl:(NSString *)serverUrl completion:(void(^)(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode))completion;
 
 #pragma mark ===== Download / Upload =====
 

+ 2 - 2
iOSClient/Networking/OCNetworking.m

@@ -165,7 +165,7 @@
     }];
 }
 
-- (void)serverStatusUrl:(NSString *)serverUrl delegate:(id)delegate completion:(void(^)(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode))completion
+- (void)serverStatusUrl:(NSString *)serverUrl completion:(void(^)(NSString *serverProductName, NSInteger versionMajor, NSInteger versionMicro, NSInteger versionMinor, NSString *message, NSInteger errorCode))completion
 {
     NSString *urlTest = [serverUrl stringByAppendingString:k_serverStatus];
     
@@ -181,7 +181,7 @@
     [request addValue:@"true" forHTTPHeaderField:@"OCS-APIRequest"];
     
     NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
-    NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration delegate:delegate delegateQueue:nil];
+    NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration delegate:self delegateQueue:nil];
     
     NSURLSessionDataTask *task = [session dataTaskWithRequest:request completionHandler: ^(NSData *data, NSURLResponse *response, NSError *error) {
         

+ 15 - 18
iOSClient/Settings/CCManageAccount.m

@@ -239,24 +239,21 @@
         [appDelegate unsubscribingNextcloudServerPushNotification:tableAccount.account url:tableAccount.url withSubscribing:false];
     }
     
-    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
-
-        [[NCManageDatabase sharedInstance] clearTable:[tableAccount class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableActivity class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableActivitySubjectRich class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableCapabilities class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableDirectory class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableE2eEncryption class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableExternalSites class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableLocalFile class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableMetadata class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableMedia class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tablePhotoLibrary class] account:account];
-        [[NCManageDatabase sharedInstance] clearTable:[tableShare class] account:account];
-    
-        // Clear active user
-        [appDelegate settingActiveAccount:nil activeUrl:nil activeUser:nil activeUserID:nil activePassword:nil];
-    });
+    [[NCManageDatabase sharedInstance] clearTable:[tableAccount class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableActivity class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableActivitySubjectRich class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableCapabilities class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableDirectory class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableE2eEncryption class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableExternalSites class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableLocalFile class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableMetadata class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableMedia class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tablePhotoLibrary class] account:account];
+    [[NCManageDatabase sharedInstance] clearTable:[tableShare class] account:account];
+    
+    // Clear active user
+    [appDelegate settingActiveAccount:nil activeUrl:nil activeUser:nil activeUserID:nil activePassword:nil];
 }
 
 - (void)answerDelAccount:(XLFormRowDescriptor *)sender