예제 #1
0
 def test_basic_constraints_not_critical(self):
     csr = signing_request.X509Csr()
     ext = extension.X509ExtensionBasicConstraints()
     ext.set_critical(False)
     csr.add_extension(ext)
     with self.assertRaises(errors.ValidationError):
         standards._critical_flags(csr)
예제 #2
0
 def test_add_extension(self):
     csr = signing_request.X509Csr()
     bc = extension.X509ExtensionBasicConstraints()
     csr.add_extension(bc)
     self.assertEqual(1, len(csr.get_extensions()))
     csr.add_extension(bc)
     self.assertEqual(2, len(csr.get_extensions()))
예제 #3
0
    def test_ca_status_pathlen(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_path_len_constraint(1)
        csr.add_extension(ext)

        self.assertIsNone(internal.ca_status(csr=csr))
예제 #4
0
    def test_ca_status_good(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_ca(False)
        csr.add_extension(ext)

        self.assertIsNone(internal.ca_status(csr=csr))
예제 #5
0
    def test_ca_status_pathlen(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_path_len_constraint(1)
        csr.add_extension(ext)

        self.assertEqual(None, validators.ca_status(csr=csr,
                                                    ca_requested=False))
예제 #6
0
    def test_ca_status_good1(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_ca(True)
        csr.add_extension(ext)

        self.assertEqual(None, validators.ca_status(csr=csr,
                                                    ca_requested=True))
예제 #7
0
    def test_ca_status_bad(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_ca(False)
        csr.add_extension(ext)

        with self.assertRaises(validators.ValidationError) as e:
            validators.ca_status(csr=csr, ca_requested=True)
        self.assertEqual("CA flags required", str(e.exception))
예제 #8
0
    def test_ca_status_forbidden(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_ca(True)
        csr.add_extension(ext)

        with self.assertRaises(errors.ValidationError) as e:
            internal.ca_status(csr=csr)
        self.assertEqual("Request is for a CA certificate", str(e.exception))
예제 #9
0
    def test_ca_status_forbidden(self):
        csr = x509_csr.X509Csr()
        ext = x509_ext.X509ExtensionBasicConstraints()
        ext.set_ca(True)
        csr.add_extension(ext)

        with self.assertRaises(validators.ValidationError) as e:
            validators.ca_status(csr=csr, ca_requested=False)
        self.assertEqual("CA status requested, but not allowed",
                         str(e.exception))
예제 #10
0
 def test_basic_constraints_critical(self):
     csr = signing_request.X509Csr()
     ext = extension.X509ExtensionBasicConstraints()
     ext.set_critical(True)
     csr.add_extension(ext)
     standards._critical_flags(csr)
예제 #11
0
 def test_add_extensions(self):
     bc = extension.X509ExtensionBasicConstraints()
     self.cert.add_extension(bc, 2)
     exts = self.cert.get_extensions()
     self.assertEqual(3, len(exts))
예제 #12
0
 def setUp(self):
     self.ext = extension.X509ExtensionBasicConstraints()