Przeglądaj źródła

Merge pull request #50 from deltachat/Serverflags

Added imap/smpt getter setter
björn petersen 6 lat temu
rodzic
commit
56d480fdf5
1 zmienionych plików z 34 dodań i 6 usunięć
  1. 34 6
      deltachat-ios/Wrapper.swift

+ 34 - 6
deltachat-ios/Wrapper.swift

@@ -644,19 +644,47 @@ class MRConfig {
       return getOptStr("send_port")
       return getOptStr("send_port")
     }
     }
   }
   }
-
-  /**
+    
+      /**
    * IMAP-/SMTP-flags as a combination of DC_LP flags, guessed if left out
    * IMAP-/SMTP-flags as a combination of DC_LP flags, guessed if left out
    */
    */
-  class var serverFlags: String? {
+    
+
+  private class var serverFlags: Int {
     set {
     set {
-      setOptStr("server_flags", newValue)
+      setOptStr("server_flags", "\(newValue)")
     }
     }
     get {
     get {
-      return getOptStr("server_flags")
+        if let str = getOptStr("server_flags") {
+            return Int(str) ?? 0
+        } else {
+            return 0
+        }
     }
     }
   }
   }
-
+    
+    
+    class func setImapSecurity(imapFlags flags: Int) {
+        var sf = serverFlags
+        sf = sf & ~0x700 // TODO: should be DC_LP_IMAP_SOCKET_FLAGS - could not be found
+        sf = sf | flags
+        serverFlags = sf
+    }
+    
+    class func setSmtpSecurity(smptpFlags flags: Int) {
+        var sf = serverFlags
+        sf = sf & ~0x70000 // TODO: should be DC_LP_SMTP_SOCKET_FLAGS - could not be found
+        sf = sf | flags
+        serverFlags = sf
+    }
+    
+    class func setAuthFlags(flags: Int) {
+        var sf = serverFlags
+        sf = sf & ~0x6 // TODO: should be DC_LP_AUTH_FLAGS - could not be found
+        sf = sf | flags
+        serverFlags = sf
+    }
+    
   /**
   /**
    * Own name to use when sending messages. MUAs are allowed to spread this way eg. using CC, defaults to empty
    * Own name to use when sending messages. MUAs are allowed to spread this way eg. using CC, defaults to empty
    */
    */