• David Van Cleve's avatar
    Adds a concurrent ESNI transaction (with timeout) to the async resolver · 1fb5e8ce
    David Van Cleve authored
    This patch adds the ability to resolve ESNI (TLS 1.3 Encrypted
    Server Name Indication, draft 4) results concurrently with A and
    AAAA records during connection establishment.
    
    This is behind a base::Feature, disabled by default. When the
    feature is enabled and DNS over HTTPS is in use, the built-in
    resolver will make an additional ESNI transaction concurrently with
    the usual ones of type A and AAAA. It also starts a timer (initially
    set to the 50ms recommended by the spec) past which to abandon
    the ESNI transaction without failing the DNS task.
    
    R=ericorth
    
    Bug: 1003494
    Change-Id: Ia73b5e910f2a466b6384c7c73f09705e770ea39d
    Cq-Do-Not-Cancel-Tryjobs: true
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879430
    Commit-Queue: David Van Cleve <davidvc@chromium.org>
    Reviewed-by: default avatarEric Orth <ericorth@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#712131}
    1fb5e8ce
host_resolver_manager.cc 134 KB