MCPcopy Create free account
hub / github.com/boringproxy/boringproxy / handleLogin

Method handleLogin

ui_handler.go:471–504  ·  view source on GitHub ↗
(w http.ResponseWriter, r *http.Request)

Source from the content-addressed store, hash-verified

469 }
470}
471func (h *WebUiHandler) handleLogin(w http.ResponseWriter, r *http.Request) {
472
473 if r.Method != "GET" {
474 w.WriteHeader(405)
475 w.Write([]byte("Invalid method for login"))
476 }
477
478 r.ParseForm()
479
480 tokenList, ok := r.Form["access_token"]
481
482 if !ok {
483 w.WriteHeader(400)
484 w.Write([]byte("Token required for login"))
485 return
486 }
487
488 token := tokenList[0]
489
490 if h.auth.Authorized(token) {
491 cookie := &http.Cookie{
492 Name: "access_token",
493 Value: token,
494 Secure: true,
495 HttpOnly: true,
496 MaxAge: 86400 * 365,
497 }
498 http.SetCookie(w, cookie)
499 http.Redirect(w, r, "/tunnels", 303)
500 } else {
501 h.sendLoginPage(w, r, 403)
502 return
503 }
504}
505
506func (h *WebUiHandler) handleTunnels(w http.ResponseWriter, r *http.Request, tokenData TokenData, user User) {
507

Callers 1

handleWebUiRequestMethod · 0.95

Calls 3

sendLoginPageMethod · 0.95
AuthorizedMethod · 0.80
WriteMethod · 0.45

Tested by

no test coverage detected