Esempio n. 1
0
        private static ImapSession ConnectCore(ConnectParams @params)
        {
            ImapSession session = null;

              try {
            session = ImapSessionCreator.CreateSession(@params.Profile,
                                                   @params.AuthMechanism,
                                                   @params.CreateSslStreamCallback ?? ImapConnection.CreateSslStream);
              }
              finally {
            @params.Profile.SetCredentials(null);
              }

              // update server info
              if (session.ServerCapabilities.Has(ImapCapability.Namespace))
            session.Namespace();

              if (session.ServerCapabilities.Has(ImapCapability.ID))
            session.ID(null); // TODO: client ID

              session.UpdateSelectedMailboxSizeAndStatus = false;

              return session;
        }