summaryrefslogtreecommitdiff
path: root/util/util_http.py
diff options
context:
space:
mode:
Diffstat (limited to 'util/util_http.py')
-rw-r--r--util/util_http.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/util/util_http.py b/util/util_http.py
new file mode 100644
index 0000000..853b351
--- /dev/null
+++ b/util/util_http.py
@@ -0,0 +1,45 @@
+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()