Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable support for DNS over TLS (RFC 7858) #214

Closed
wants to merge 2 commits into from

Commits on Jun 30, 2023

  1. Enable support for DNS over TLS

    https://tools.ietf.org/html/rfc7858
    
    Split TLS into a separate class extending the TcpTransportExecutor
    
    * TlsTransportExecutor sets up sane defaults for TLS context options and port number (if not provided) and applies workarounds for ancient PHP bugs.
    * TlsTransportExecutor overrides handleWritable to initialise TLS on the connection then passes control to TcpTransportExecutor.
    * TcpTransportExecutor::$socket visibility is changed to protected so that TlsTransportExecutor can enable crypto.
    * TcpTransportExecutor::readChunk and TcpTransportExecutor::writeChunk (added) visibility is protected to allow TlsTransportExecutor to set workarounds for ancient PHP version bugs.
    * TcpTransportExecutor support passing in Stream Context (https://www.php.net/manual/en/context.php) parameters via the query part of the nameserver URI.
    lucasnetau committed Jun 30, 2023
    Configuration menu
    Copy the full SHA
    75e369e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0dd6859 View commit details
    Browse the repository at this point in the history