Example #1
0
        protected override void DeleteItems(List <ListViewItem> items)
        {
            hMailServer.Settings        settings        = APICreator.Settings;
            hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;

            foreach (ListViewItem item in items)
            {
                int id = Convert.ToInt32(item.Tag);
                sslCertificates.DeleteByDBID(id);
            }

            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(sslCertificates);
        }
Example #2
0
        private void DeleteEnvironment()
        {
            while (_application.Domains.Count > 0)
            {
                _application.Domains[0].Delete();
            }

            hMailServer.WhiteListAddresses addresses = _application.Settings.AntiSpam.WhiteListAddresses;
            while (addresses.Count > 0)
            {
                addresses[0].Delete();
            }

            hMailServer.Routes routes = _application.Settings.Routes;
            while (routes.Count > 0)
            {
                routes[0].Delete();
            }

            hMailServer.BlockedAttachments attachments = _application.Settings.AntiVirus.BlockedAttachments;
            while (attachments.Count > 0)
            {
                attachments[0].Delete();
            }

            hMailServer.DNSBlackLists blackLists = _application.Settings.AntiSpam.DNSBlackLists;
            while (blackLists.Count > 0)
            {
                blackLists[0].Delete();
            }

            hMailServer.SURBLServers surblServers = _application.Settings.AntiSpam.SURBLServers;
            while (surblServers.Count > 0)
            {
                surblServers[0].Delete();
            }

            hMailServer.SSLCertificates sslCertificates = _application.Settings.SSLCertificates;
            while (sslCertificates.Count > 0)
            {
                sslCertificates[0].Delete();
            }

            hMailServer.IncomingRelays incomingRelays = _application.Settings.IncomingRelays;
            while (incomingRelays.Count > 0)
            {
                incomingRelays[0].Delete();
            }
        }
        public void OnDeleteObject(object sender, EventArgs args)
        {
            if (!Utility.AskDeleteItem(_certificateName))
            {
                return;
            }

            hMailServer.Settings        settings        = APICreator.Settings;
            hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;
            sslCertificates.DeleteByDBID(_certificateID);
            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(sslCertificates);

            Instances.MainForm.RefreshParentNode();
        }
Example #4
0
        private void ListSSLCertificates()
        {
            comboSSLCertificate.Items.Clear();

            hMailServer.Settings        settings        = APICreator.Settings;
            hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;

            for (int i = 0; i < sslCertificates.Count; i++)
            {
                hMailServer.SSLCertificate certificate = sslCertificates[i];

                comboSSLCertificate.AddItem(certificate.Name, certificate.ID);

                Marshal.ReleaseComObject(certificate);
            }

            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(sslCertificates);
        }
Example #5
0
        protected override void LoadList()
        {
            listObjects.Items.Clear();

            hMailServer.Application     app             = APICreator.Application;
            hMailServer.Settings        settings        = app.Settings;
            hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;

            for (int i = 0; i < sslCertificates.Count; i++)
            {
                hMailServer.SSLCertificate sslCertificate = sslCertificates[i];
                ListViewItem item = listObjects.Items.Add(sslCertificate.Name);
                item.Tag = sslCertificate.ID;
                Marshal.ReleaseComObject(sslCertificate);
            }

            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(sslCertificates);
        }
Example #6
0
        public ucSSLCertificate(int certificateID)
        {
            InitializeComponent();

            if (certificateID > 0)
            {
                hMailServer.Settings        settings        = APICreator.Settings;
                hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;

                _representedObject = sslCertificates.get_ItemByDBID(certificateID);

                Marshal.ReleaseComObject(settings);
                Marshal.ReleaseComObject(sslCertificates);
            }


            DirtyChecker.SubscribeToChange(this, OnContentChanged);

            new TabOrderManager(this).SetTabOrder(TabOrderManager.TabScheme.AcrossFirst);
        }
Example #7
0
        public bool SaveData()
        {
            bool newObject = false;

            if (_representedObject == null)
            {
                hMailServer.Settings        settings        = APICreator.Application.Settings;
                hMailServer.SSLCertificates sslCertificates = settings.SSLCertificates;

                _representedObject = sslCertificates.Add();

                Marshal.ReleaseComObject(settings);
                Marshal.ReleaseComObject(sslCertificates);

                newObject = true;
            }

            _representedObject.Name = textName.Text;

            _representedObject.CertificateFile = textCertificateFile.Text;
            _representedObject.PrivateKeyFile  = textPrivateKeyFile.Text;

            _representedObject.Save();


            // Refresh the node in the tree if the name has changed.
            IMainForm mainForm = Instances.MainForm;

            mainForm.RefreshCurrentNode(textName.Text);

            // Set the object to clean.
            DirtyChecker.SetClean(this);

            if (newObject)
            {
                SearchNodeText crit = new SearchNodeText(_representedObject.Name);
                mainForm.SelectNode(crit);
            }

            return(true);
        }