:param int rcode: The RCODE to match on
.. function:: HTTPHeaderRule(name, regex)
+
.. versionadded:: 1.4.0
Matches DNS over HTTPS queries with a HTTP header ``name`` whose content matches the regular expression ``regex``.
:param str regex: A regular expression to match the content of the specified header
.. function:: HTTPPathRegexRule(regex)
+
.. versionadded:: 1.4.0
Matches DNS over HTTPS queries with a HTTP path matching the regular expression supplied in ``regex``. For example, if the query has been sent to the https://192.0.2.1:443/PowerDNS?dns=... URL, the path would be '/PowerDNS'.
:param str regex: The regex to match on
.. function:: HTTPPathRule(path)
+
.. versionadded:: 1.4.0
Matches DNS over HTTPS queries with a HTTP path of ``path``. For example, if the query has been sent to the https://192.0.2.1:443/PowerDNS?dns=... URL, the path would be '/PowerDNS'.
:param str path: The exact HTTP path to match on
.. function:: KeyValueStoreLookupRule(kvs, lookupKey)
+
.. versionadded:: 1.4.0
As of 1.4.0, this code is considered experimental.
:param str regex: The regular expression to match the QNAME.
.. function:: SNIRule(name)
+
.. versionadded:: 1.4.0
Matches against the TLS Server Name Indication value sent by the client, if any. Only makes
:param int rcode: The extended RCODE to respond with.
.. function:: HTTPStatusAction(status, body, contentType="")
+
.. versionadded:: 1.4.0
Return an HTTP response with a status code of ''status''. For HTTP redirects, ''body'' should be the redirect URL.