Skip to content

Commit e73ecfc

Browse files
committed
Add accidental deletions and fix linter
1 parent 25d57fc commit e73ecfc

3 files changed

Lines changed: 26 additions & 1 deletion

File tree

cmd/config.go

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ func addConfigFlags(flags *pflag.FlagSet) {
4545
flags.String("auth.method", string(auth.MethodJSONAuth), "authentication type")
4646
flags.String("auth.header", "", "HTTP header for auth.method=proxy")
4747
flags.String("auth.command", "", "command for auth.method=hook")
48+
49+
flags.String("authenticatorToken", "", "OTP shared secret (leave blank to disable)")
4850
flags.String("auth.logoutPage", "", "url of custom logout page")
4951

5052
flags.String("recaptcha.host", "https://www.google.com", "use another host for ReCAPTCHA. recaptcha.net might be useful in China")
@@ -99,7 +101,7 @@ func getProxyAuth(flags *pflag.FlagSet, defaultAuther map[string]interface{}) (a
99101
return nil, err
100102
}
101103

102-
if header == "" && defaultAuther != nil {
104+
if header == "" && defaultAuther != nil {
103105
header = defaultAuther["header"].(string)
104106
}
105107

@@ -116,6 +118,19 @@ func getNoAuth() auth.Auther {
116118

117119
func getJSONAuth(flags *pflag.FlagSet, defaultAuther map[string]interface{}) (auth.Auther, error) {
118120
jsonAuth := &auth.JSONAuth{}
121+
authenticationToken, err := flags.GetString("authenticatorToken")
122+
if err != nil {
123+
return nil, err
124+
}
125+
126+
if authenticationToken == "" {
127+
if atok, ok := defaultAuther["authenticatorToken"].(string); ok {
128+
authenticationToken = atok
129+
}
130+
}
131+
132+
jsonAuth.AuthenticatorToken = authenticationToken
133+
119134
host, err := flags.GetString("recaptcha.host")
120135
if err != nil {
121136
return nil, err

cmd/root.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,13 +235,22 @@ user created with the credentials from options "username" and "password".`,
235235
defer listener.Close()
236236

237237
log.Println("Listening on", listener.Addr().String())
238+
refreshAllowedOrigins(server)
239+
refreshCondition := server.RefreshAllowedOrigins != 0 && (server.AllowPrivateIP || server.AllowPublicIP)
240+
var done chan bool
241+
if refreshCondition {
242+
done = startBackgroundTask(server)
243+
}
238244
srv := &http.Server{
239245
Handler: handler,
240246
ReadHeaderTimeout: 60 * time.Second,
241247
}
242248

243249
go func() {
244250
if err := srv.Serve(listener); !errors.Is(err, http.ErrServerClosed) {
251+
if refreshCondition {
252+
done <- true
253+
}
245254
log.Fatalf("HTTP server error: %v", err)
246255
}
247256

go.sum

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpE
234234
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
235235
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
236236
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
237+
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
237238
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
238239
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
239240
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=

0 commit comments

Comments
 (0)