from dns.message import make_query, from_wire import ssl def make_ssl_context(check_cert=False): ssl_ctx = ssl.create_default_context() ssl_ctx.check_hostname = False if check_cert: ssl_ctx.verify_mode = ssl.CERT_REQUIRED else: # ssl_ctx.verify_mode = ssl.CERT_NONE ssl_ctx.verify_mode = ssl.CERT_OPTIONAL # ssl_ctx.minimum_version = ssl.TLSVersion.TLSv1_1 return ssl_ctx def build_dns_query(qname="example.com", rtype="A"): dns_query = make_query( qname=qname, rdtype=rtype, want_dnssec=False, ) return dns_query def get_domain_from_cert(cert): cert_info_domain_related = [] if not cert: return cert_info_domain_related for key, value in cert.items(): if key == "subject": for (sub_key, sub_value), in value: if sub_key == "commonName": # print(sub_value) cert_info_domain_related.append(sub_value) if key == "subjectAltName": for (sub_key, sub_value) in value: cert_info_domain_related.append(sub_value) return list(set(cert_info_domain_related)) # def build_dns_query_wireformat(qname="example.com", rtype="A"): # dns_query = build_dns_query() # return dns_query.to_wire()