]>
Commit | Line | Data |
---|---|---|
a227f47d RG |
1 | #!/usr/bin/env python |
2 | import dns | |
3 | from dnsdisttests import DNSDistTest | |
4 | ||
5 | class TestTLS(DNSDistTest): | |
6 | ||
7 | _serverKey = 'server.key' | |
8 | _serverCert = 'server.chain' | |
9 | _serverName = 'tls.tests.dnsdist.org' | |
10 | _caCert = 'ca.pem' | |
11 | _tlsServerPort = 8453 | |
12 | _config_template = """ | |
13 | newServer{address="127.0.0.1:%s"} | |
14 | addTLSLocal("127.0.0.1:%s", "%s", "%s") | |
15 | """ | |
16 | _config_params = ['_testServerPort', '_tlsServerPort', '_serverCert', '_serverKey'] | |
17 | ||
18 | def testTLSSimple(self): | |
19 | """ | |
20 | TLS: Single query | |
21 | """ | |
22 | name = 'single.tls.tests.powerdns.com.' | |
23 | query = dns.message.make_query(name, 'A', 'IN', use_edns=False) | |
24 | response = dns.message.make_response(query) | |
25 | rrset = dns.rrset.from_text(name, | |
26 | 3600, | |
27 | dns.rdataclass.IN, | |
28 | dns.rdatatype.A, | |
29 | '127.0.0.1') | |
30 | response.answer.append(rrset) | |
31 | ||
32 | conn = self.openTLSConnection(self._tlsServerPort, self._serverName, self._caCert) | |
33 | ||
34 | self.sendTCPQueryOverConnection(conn, query, response=response) | |
35 | (receivedQuery, receivedResponse) = self.recvTCPResponseOverConnection(conn, useQueue=True) | |
36 | self.assertTrue(receivedQuery) | |
37 | self.assertTrue(receivedResponse) | |
38 | receivedQuery.id = query.id | |
39 | self.assertEquals(query, receivedQuery) | |
40 | self.assertEquals(response, receivedResponse) |