caddyauth: Rename basicauth to basic_auth (#6092)

This commit is contained in:
Francis Lavoie 2024-02-12 12:34:23 -05:00 committed by GitHub
parent 91ec75441a
commit f9e11158bc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 14 additions and 7 deletions

View file

@ -801,7 +801,7 @@ func TestImportedFilesIgnoreNonDirectiveImportTokens(t *testing.T) {
fileName := writeStringToTempFileOrDie(t, ` fileName := writeStringToTempFileOrDie(t, `
http://example.com { http://example.com {
# This isn't an import directive, it's just an arg with value 'import' # This isn't an import directive, it's just an arg with value 'import'
basicauth / import password basic_auth / import password
} }
`) `)
// Parse the root file that imports the other one. // Parse the root file that imports the other one.
@ -812,12 +812,12 @@ func TestImportedFilesIgnoreNonDirectiveImportTokens(t *testing.T) {
} }
auth := blocks[0].Segments[0] auth := blocks[0].Segments[0]
line := auth[0].Text + " " + auth[1].Text + " " + auth[2].Text + " " + auth[3].Text line := auth[0].Text + " " + auth[1].Text + " " + auth[2].Text + " " + auth[3].Text
if line != "basicauth / import password" { if line != "basic_auth / import password" {
// Previously, it would be changed to: // Previously, it would be changed to:
// basicauth / import /path/to/test/dir/password // basic_auth / import /path/to/test/dir/password
// referencing a file that (probably) doesn't exist and changing the // referencing a file that (probably) doesn't exist and changing the
// password! // password!
t.Errorf("Expected basicauth tokens to be 'basicauth / import password' but got %#q", line) t.Errorf("Expected basic_auth tokens to be 'basic_auth / import password' but got %#q", line)
} }
} }

View file

@ -58,7 +58,8 @@ var directiveOrder = []string{
"try_files", "try_files",
// middleware handlers; some wrap responses // middleware handlers; some wrap responses
"basicauth", "basicauth", // TODO: deprecated, renamed to basic_auth
"basic_auth",
"forward_auth", "forward_auth",
"request_header", "request_header",
"encode", "encode",

View file

@ -22,12 +22,13 @@ import (
) )
func init() { func init() {
httpcaddyfile.RegisterHandlerDirective("basicauth", parseCaddyfile) httpcaddyfile.RegisterHandlerDirective("basicauth", parseCaddyfile) // deprecated
httpcaddyfile.RegisterHandlerDirective("basic_auth", parseCaddyfile)
} }
// parseCaddyfile sets up the handler from Caddyfile tokens. Syntax: // parseCaddyfile sets up the handler from Caddyfile tokens. Syntax:
// //
// basicauth [<matcher>] [<hash_algorithm> [<realm>]] { // basic_auth [<matcher>] [<hash_algorithm> [<realm>]] {
// <username> <hashed_password_base64> [<salt_base64>] // <username> <hashed_password_base64> [<salt_base64>]
// ... // ...
// } // }
@ -36,6 +37,11 @@ func init() {
func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error) { func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error) {
h.Next() // consume directive name h.Next() // consume directive name
// "basicauth" is deprecated, replaced by "basic_auth"
if h.Val() == "basicauth" {
caddy.Log().Named("config.adapter.caddyfile").Warn("the 'basicauth' directive is deprecated, please use 'basic_auth' instead!")
}
var ba HTTPBasicAuth var ba HTTPBasicAuth
ba.HashCache = new(Cache) ba.HashCache = new(Cache)