public void certificatePoliciesConstructorTest1() { bool Critical = false; certificatePolicies target = new certificatePolicies(Critical); Assert.IsFalse(target.Critical); }
public void CertPoliciesTest() { certificatePolicies target = new certificatePolicies(testData1); List <CertPolicy> actual; actual = target.CertPolicies; Assert.AreEqual(2, actual.Count); }
public void ToXmlTest() { certificatePolicies target = new certificatePolicies(testData1); XNode expected = testData1; XNode actual; actual = target.ToXml(); Assert.AreEqual(expected.ToString(), actual.ToString()); }
public void CertificatePoliciesTest() { certificatePolicies target = new certificatePolicies(testData1); CertificatePolicies actual; actual = target.CertificatePolicies; Assert.IsFalse(target.Critical); Assert.AreEqual("CertificatePolicies: 1.2.860.0.1311.1.1, 1.2.860.0.1311.1.3", actual.ToString()); }
public void RemoveTest() { certificatePolicies target = new certificatePolicies(testData1); CertPolicy Policy = new CertPolicy() { Oid = "1.2.860.0.1311.1.3", Cps = "", Name = "", Unotice = "" }; target.Remove(Policy); Assert.AreEqual("CertificatePolicies: 1.2.860.0.1311.1.1", target.CertificatePolicies.ToString()); }
public void certificatePoliciesConstructorTest2() { // Build an extension BcV3CertGen gen = new BcV3CertGen(); certificatePolicies testExt = new certificatePolicies(testData1); gen.AddExtension(testExt.OID, testExt.Critical, testExt.DerEncoding); X509Certificate cert = CertTestHarness.RunCertGenerator(gen); X509Extension ext = CertTestHarness.ExtractExtension(cert, X509Extensions.CertificatePolicies); // Test code certificatePolicies target = new certificatePolicies(ext); List <CertPolicy> list = target.CertPolicies; Assert.IsFalse(target.Critical); Assert.AreEqual(2, list.Count); Assert.AreEqual("http://foo.com/cps.htm", list[0].Cps); Assert.AreEqual("This is a test notice", list[0].Unotice); Assert.AreEqual("1.2.860.0.1311.1.3", list[1].Oid); }
// Load an existing extension private void edit(certificatePolicies certPol) { cp = certPol; // Populate the dataset for (int i = 0; i < cp.CertPolicies.Count; i++) { updateDataSet(cp.CertPolicies[i], i); } // critical setting if (cp.Critical) { cbCritical.Checked = true; } else { cbCritical.Checked = false; } }
public PolicyMappings(policyMappings Mappings, certificatePolicies CertPol) { InitializeComponent(); certpol = CertPol; foreach (CertPolicy policy in certpol.CertPolicies) { lbIssuerPolicies.Items.Add(policy.Oid + " (" + policy.Name + ")"); } lbIssuerPolicies.SelectedIndex = 0; if (Mappings == null) { create(); } else { edit(Mappings); } }
public CertificatePolicies(certificatePolicies certPol) { InitializeComponent(); // Setup the dataset ds.Tables.Add("policies"); ds.Tables["policies"].Columns.Add("#"); ds.Tables["policies"].Columns.Add("OID"); ds.Tables["policies"].Columns.Add("Name"); ds.Tables["policies"].Columns.Add("CPS"); ds.Tables["policies"].Columns.Add("Notice"); // Setup the grid dgv.DataSource = ds.Tables["policies"]; if (certPol == null) { create(); } else { edit(certPol); } }
/// <summary> /// Create an extension and add to the profile /// </summary> /// <param name="profile">Profile object</param> /// <param name="Extension">Extension name</param> internal static bool CreateExtension(Profile profile, string Extension) { bool ok = true; switch (Extension) { case "Basic Constraints": BasicConstraints bc = new BasicConstraints(null); if (bc.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(bc.basCon); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; // User clicked cancel } break; case "Key Usage": KeyUsage ku = new KeyUsage(null); if (ku.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(ku.keyUsage); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Extended Key Usage": ExtendedKeyUsage eku = new ExtendedKeyUsage(null); if (eku.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(eku.extKeyUsage); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "CRL Distribution Points": CrlDistributionPoint cdp = new CrlDistributionPoint(null); if (cdp.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(cdp.crlDP); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Subject Alternative Name": SubjectAltNames san = new SubjectAltNames(null); if (san.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(san.san); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Issuer Alternative Name": IssuerAltNames ian = new IssuerAltNames(null); if (ian.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(ian.ian); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Authority Information Access": AuthorityInfoAccess aia = new AuthorityInfoAccess(null); if (aia.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(aia.aia); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Subject Information Access": SubjectInfoAccess sia = new SubjectInfoAccess(null); if (sia.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(sia.sia); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Name Constraints": NameConstraints nc = new NameConstraints(null); if (nc.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(nc.nc); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Certificate Policies": CertificatePolicies cp = new CertificatePolicies(null); if (cp.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(cp.cp); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Policy Mappings": // Can't process this until CertPolicies is defined certificatePolicies policy = (certificatePolicies)FindExtension(profile, typeof(certificatePolicies)); if (policy == null) { MessageBox.Show("You must define Certificate Policies before adding this extension", "Policy Mappings", MessageBoxButtons.OK, MessageBoxIcon.Warning); ok = false; } else { PolicyMappings map = new PolicyMappings(null, policy); if (map.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(map.mapping); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } } break; case "OCSP Nocheck": OcspNocheck on = new OcspNocheck(null); if (on.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(on.ocsp); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Inhibit AnyPolicy": InhibitAnyPolicy iap = new InhibitAnyPolicy(null); if (iap.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(iap.iAnypol); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; case "Policy Constraints": PolicyConstraints pc = new PolicyConstraints(null); if (pc.ShowDialog() == DialogResult.OK) { try { profile.AddExtension(pc.polCon); } catch (ArgumentException) { ok = false; MessageBox.Show("Duplicate extensions not permitted", "Profile Editor", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } else { ok = false; } break; default: throw new ArgumentOutOfRangeException(Extension); } return(ok); }
// Create a new extension private void create() { cp = new certificatePolicies(); }