def test_create(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create()

        self.assertEqual(9, cert_type.ext_type)
        self.assertEqual(bytearray(0), cert_type.ext_data)
        self.assertEqual(None, cert_type.cert_types)
    def test_parse_with_length_long_by_one(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x03\x01\x00'))

        with self.assertRaises(SyntaxError):
            cert_type.parse(p)
Beispiel #3
0
    def test_parse_with_length_long_by_one(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x03\x01\x00'))

        with self.assertRaises(SyntaxError):
            cert_type.parse(p)
Beispiel #4
0
    def test_write(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0, 1])

        self.assertEqual(
            bytearray(b'\x00\x09' + b'\x00\x03' + b'\x02' + b'\x00\x01'),
            cert_type.write())
Beispiel #5
0
    def test_create(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create(None)

        self.assertEqual(9, cert_type.extType)
        self.assertEqual(bytearray(0), cert_type.extData)
        self.assertIsNone(cert_type.certTypes)
    def test_parse_with_list(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x02\x01\x00'))

        cert_type = cert_type.parse(p)

        self.assertEqual([1, 0], cert_type.cert_types)
Beispiel #7
0
    def test_parse_with_list(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x02\x01\x00'))

        cert_type = cert_type.parse(p)

        self.assertEqual([1, 0], cert_type.certTypes)
    def test_parse(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x00'))

        cert_type = cert_type.parse(p)

        self.assertEqual(9, cert_type.ext_type)
        self.assertEqual([], cert_type.cert_types)
    def test_write(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0, 1])

        self.assertEqual(bytearray(
            b'\x00\x09' +
            b'\x00\x03' +
            b'\x02' +
            b'\x00\x01'), cert_type.write())
Beispiel #10
0
    def test_parse(self):
        cert_type = ClientCertTypeExtension()

        p = Parser(bytearray(b'\x00'))

        cert_type = cert_type.parse(p)

        self.assertEqual(9, cert_type.extType)
        self.assertEqual([], cert_type.certTypes)
    def test_parse_with_cert_type_extension(self):
        p = Parser(
            bytearray(
                # we don't include the type of message as it is handled by the
                # hello protocol parser
                #b'x01' +             # type of message - client_hello
                b'\x00' * 2 + b'\x2f' +  # length - 47 bytes
                b'\x01\x01' +  # protocol version - arbitrary (invalid)
                b'\x00' * 32 +  # client random
                b'\x00' +  # session ID length
                b'\x00' * 2 +  # cipher suites length
                b'\x00' +  # compression methods length
                b'\x00\x07' +  # extensions length - 7 bytes
                b'\x00\x09' +  # extension type - certTypes (9)
                b'\x00\x03' +  # extension length - 3 bytes
                b'\x02' +  # length of array - 2 bytes
                b'\x00' +  # type - x509 (0)
                b'\x01'  # type - opengpg (1)
            ))
        client_hello = ClientHello()
        client_hello = client_hello.parse(p)

        self.assertEqual((1, 1), client_hello.client_version)
        self.assertEqual(bytearray(32), client_hello.random)
        self.assertEqual(bytearray(0), client_hello.session_id)
        self.assertEqual([], client_hello.cipher_suites)
        self.assertEqual([], client_hello.compression_methods)
        self.assertEqual([0, 1], client_hello.certificate_types)
        certTypes = ClientCertTypeExtension().create([0, 1])
        self.assertEqual([certTypes], client_hello.extensions)
Beispiel #12
0
    def test___repr__(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0, 1])

        self.assertEqual("ClientCertTypeExtension(cert_types=[0, 1])",
                repr(cert_type))
Beispiel #13
0
    def test_create_with_list(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0])

        self.assertEqual(bytearray(b'\x01\x00'), cert_type.ext_data)
        self.assertEqual([0], cert_type.cert_types)
Beispiel #14
0
    def test___repr__(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0, 1])

        self.assertEqual("ClientCertTypeExtension(certTypes=[0, 1])",
                         repr(cert_type))
Beispiel #15
0
    def test_create_with_list(self):
        cert_type = ClientCertTypeExtension()
        cert_type = cert_type.create([0])

        self.assertEqual(bytearray(b'\x01\x00'), cert_type.extData)
        self.assertEqual([0], cert_type.certTypes)
Beispiel #16
0
    def test___init___(self):
        cert_type = ClientCertTypeExtension()

        self.assertEqual(9, cert_type.extType)
        self.assertEqual(bytearray(0), cert_type.extData)
        self.assertIsNone(cert_type.certTypes)