From 1ed776bed2335c249e7529e55049783ca400f09f Mon Sep 17 00:00:00 2001 From: dt-rush Date: Tue, 5 Mar 2019 09:58:26 -0500 Subject: [PATCH] fix redirect-url option handling avoid user-supplied redirect URL getting clobbered use redirectURL as OAuthCallbackURL (as it should be!) --- oauthproxy.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/oauthproxy.go b/oauthproxy.go index a6b0c1348..9fdca4cc2 100644 --- a/oauthproxy.go +++ b/oauthproxy.go @@ -151,7 +151,9 @@ func NewOAuthProxy(opts *Options, validator func(string) bool) *OAuthProxy { } redirectURL := opts.redirectURL - redirectURL.Path = fmt.Sprintf("%s/callback", opts.ProxyPrefix) + if redirectURL.String() == "" { + redirectURL.Path = fmt.Sprintf("%s/callback", opts.ProxyPrefix) + } log.Printf("OAuthProxy configured for %s Client ID: %s", opts.provider.Data().ProviderName, opts.ClientID) refresh := "disabled" @@ -186,7 +188,7 @@ func NewOAuthProxy(opts *Options, validator func(string) bool) *OAuthProxy { SignInPath: fmt.Sprintf("%s/sign_in", opts.ProxyPrefix), SignOutPath: fmt.Sprintf("%s/sign_out", opts.ProxyPrefix), OAuthStartPath: fmt.Sprintf("%s/start", opts.ProxyPrefix), - OAuthCallbackPath: fmt.Sprintf("%s/callback", opts.ProxyPrefix), + OAuthCallbackPath: redirectURL.Path, AuthOnlyPath: fmt.Sprintf("%s/auth", opts.ProxyPrefix), ProxyPrefix: opts.ProxyPrefix,