MCPcopy
hub / github.com/filebrowser/filebrowser / getAuthMethod

Function getAuthMethod

cmd/config.go:65–94  ·  view source on GitHub ↗
(flags *pflag.FlagSet, defaults ...interface{})

Source from the content-addressed store, hash-verified

63}
64
65func getAuthMethod(flags *pflag.FlagSet, defaults ...interface{}) (settings.AuthMethod, map[string]interface{}, error) {
66 methodStr, err := flags.GetString("auth.method")
67 if err != nil {
68 return "", nil, err
69 }
70 method := settings.AuthMethod(methodStr)
71
72 var defaultAuther map[string]interface{}
73 if len(defaults) > 0 {
74 if hasAuth := defaults[0]; hasAuth != true {
75 for _, arg := range defaults {
76 switch def := arg.(type) {
77 case *settings.Settings:
78 method = def.AuthMethod
79 case auth.Auther:
80 ms, err := json.Marshal(def)
81 if err != nil {
82 return "", nil, err
83 }
84 err = json.Unmarshal(ms, &defaultAuther)
85 if err != nil {
86 return "", nil, err
87 }
88 }
89 }
90 }
91 }
92
93 return method, defaultAuther, nil
94}
95
96func getProxyAuth(flags *pflag.FlagSet, defaultAuther map[string]interface{}) (auth.Auther, error) {
97 header, err := flags.GetString("auth.header")

Callers 1

getAuthenticationFunction · 0.85

Calls 2

AuthMethodTypeAlias · 0.92
GetStringMethod · 0.80

Tested by

no test coverage detected