diff --git a/examples/auth.go b/examples/auth.go index 4d61ea2..e6be9ec 100644 --- a/examples/auth.go +++ b/examples/auth.go @@ -70,7 +70,7 @@ func login(w *gemini.ResponseWriter, r *gemini.Request) { sessions[fingerprint] = &session{ username: username, } - gemini.Redirect(w, "/password") + w.WriteHeader(gemini.StatusRedirect, "/password") } func loginPassword(w *gemini.ResponseWriter, r *gemini.Request) { @@ -91,7 +91,7 @@ func loginPassword(w *gemini.ResponseWriter, r *gemini.Request) { expected := logins[session.username].password if password == expected { session.authorized = true - gemini.Redirect(w, "/profile") + w.WriteHeader(gemini.StatusRedirect, "/profile") } else { gemini.SensitiveInput(w, r, "Wrong password. Try again") } diff --git a/mux.go b/mux.go index 47aa618..81a4ee7 100644 --- a/mux.go +++ b/mux.go @@ -138,14 +138,14 @@ func (mux *ServeMux) Respond(w *ResponseWriter, r *Request) { // If the given path is /tree and its handler is not registered, // redirect for /tree/. if u, ok := mux.redirectToPathSlash(path, r.URL); ok { - Redirect(w, u.String()) + w.WriteHeader(StatusRedirect, u.String()) return } if path != r.URL.Path { u := *r.URL u.Path = path - Redirect(w, u.String()) + w.WriteHeader(StatusRedirect, u.String()) return } diff --git a/server.go b/server.go index 1cf20d2..4ceea86 100644 --- a/server.go +++ b/server.go @@ -319,16 +319,6 @@ func SensitiveInput(w *ResponseWriter, r *Request, prompt string) (string, bool) return "", false } -// Redirect replies to the request with a redirect to the given URL. -func Redirect(w *ResponseWriter, url string) { - w.WriteHeader(StatusRedirect, url) -} - -// PermanentRedirect replies to the request with a permanent redirect to the given URL. -func PermanentRedirect(w *ResponseWriter, url string) { - w.WriteHeader(StatusRedirectPermanent, url) -} - // Certificate returns the request certificate. If one is not provided, // it returns nil and responds with StatusCertificateRequired. func Certificate(w *ResponseWriter, r *Request) (*x509.Certificate, bool) { diff --git a/status.go b/status.go index 4c50f89..db87488 100644 --- a/status.go +++ b/status.go @@ -8,7 +8,7 @@ const ( StatusSensitiveInput Status = 11 StatusSuccess Status = 20 StatusRedirect Status = 30 - StatusRedirectPermanent Status = 31 + StatusPermanentRedirect Status = 31 StatusTemporaryFailure Status = 40 StatusServerUnavailable Status = 41 StatusCGIError Status = 42 @@ -52,7 +52,7 @@ func (s Status) Message() string { return "Success" case StatusRedirect: return "Redirect" - case StatusRedirectPermanent: + case StatusPermanentRedirect: return "Permanent redirect" case StatusTemporaryFailure: return "Temporary failure"