@@ -568,26 +568,26 @@ func (p *OAuthProxy) SignInPage(rw http.ResponseWriter, req *http.Request, code
568 redirectURL = "/"
568 redirectURL = "/"
571− p.pageWriter.WriteSignInPage(rw, req, redirectURL)
571+ p.pageWriter.WriteSignInPage(rw, req, redirectURL, code)
574// ManualSignIn handles basic auth logins to the proxy
574// ManualSignIn handles basic auth logins to the proxy
575−func (p *OAuthProxy) ManualSignIn(req *http.Request) (string, bool) {
575+func (p *OAuthProxy) ManualSignIn(req *http.Request) (string, bool, int) {
576 if req.Method != "POST" || p.basicAuthValidator == nil {
576 if req.Method != "POST" || p.basicAuthValidator == nil {
577− return "", false
577+ return "", false, http.StatusOK
579 user := req.FormValue("username")
579 user := req.FormValue("username")
580 passwd := req.FormValue("password")
580 passwd := req.FormValue("password")
581 if user == "" {
581 if user == "" {
582− return "", false
582+ return "", false, http.StatusBadRequest
584 // check auth
584 // check auth
585 if p.basicAuthValidator.Validate(user, passwd) {
585 if p.basicAuthValidator.Validate(user, passwd) {
586 logger.PrintAuthf(user, req, logger.AuthSuccess, "Authenticated via HtpasswdFile")
586 logger.PrintAuthf(user, req, logger.AuthSuccess, "Authenticated via HtpasswdFile")
587− return user, true
587+ return user, true, http.StatusOK
589 logger.PrintAuthf(user, req, logger.AuthFailure, "Invalid authentication via HtpasswdFile")
589 logger.PrintAuthf(user, req, logger.AuthFailure, "Invalid authentication via HtpasswdFile")
590− return "", false
590+ return "", false, http.StatusUnauthorized
593// SignIn serves a page prompting users to sign in
593// SignIn serves a page prompting users to sign in
@@ -599,7 +599,7 @@ func (p *OAuthProxy) SignIn(rw http.ResponseWriter, req *http.Request) {
602− user, ok := p.ManualSignIn(req)
602+ user, ok, statusCode := p.ManualSignIn(req)
604 session := &sessionsapi.SessionState{User: user, Groups: p.basicAuthGroups}
604 session := &sessionsapi.SessionState{User: user, Groups: p.basicAuthGroups}
605 err = p.SaveSession(rw, req, session)
605 err = p.SaveSession(rw, req, session)
@@ -614,7 +614,7 @@ func (p *OAuthProxy) SignIn(rw http.ResponseWriter, req *http.Request) {
614 p.OAuthStart(rw, req)
614 p.OAuthStart(rw, req)
616 // TODO - should we pass on /oauth2/sign_in query params to /oauth2/start?
616 // TODO - should we pass on /oauth2/sign_in query params to /oauth2/start?
617− p.SignInPage(rw, req, http.StatusOK)
617+ p.SignInPage(rw, req, statusCode)