• Asanka Herath's avatar
    [net/auth] Reduce use of raw scheme names in the authentication stack. · 890d67c0
    Asanka Herath authored
    Shuttling around authentication scheme names as strings carries with it
    the overhead of canonicalization everywhere they are used. Scheme names
    are considered to be case-insensitive, so this means a lot of
    invocations of base::ToLowerASCII() and others.
    
    Instead, this CL introduces two changes:
    
      1. HttpAuthChallengeTokenizer::scheme() is renamed to auth_scheme() to
         visually disambiguate it from URL schemes.
    
      2. auth_scheme() always returns the lowercase string.
    
      3. Multi-round authentication header parse uses HttpAuth::Scheme
         enumeration instead of a string.
    
      4. HttpAuthGSSAPI doesn't take an authentication scheme as a string
         anymore.  It doesn't make sense to use any scheme other than
         "negotiate" with this class
    
    Bug: 927182
    Change-Id: I501af8e978857302d3893f1b7fb2dcd23d2b7e36
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1907418
    Commit-Queue: Asanka Herath <asanka@chromium.org>
    Reviewed-by: default avatarMatt Menke <mmenke@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#715196}
    890d67c0
http_auth_gssapi_posix.h 14 KB