Tweak returned error for requests that are too long
Return ErrInvalidRequest instead of ErrInvalidURL in Request.Write.
This commit is contained in:
parent
c5ccbf023a
commit
92e7a309c6
@ -118,11 +118,14 @@ func ReadRequest(r io.Reader) (*Request, error) {
|
|||||||
// Write writes a Gemini request in wire format.
|
// Write writes a Gemini request in wire format.
|
||||||
// This method consults the request URL only.
|
// This method consults the request URL only.
|
||||||
func (r *Request) Write(w *bufio.Writer) error {
|
func (r *Request) Write(w *bufio.Writer) error {
|
||||||
url := r.URL.String()
|
if r.URL.User != nil {
|
||||||
// User is invalid
|
// User is not allowed
|
||||||
if r.URL.User != nil || len(url) > 1024 {
|
|
||||||
return ErrInvalidURL
|
return ErrInvalidURL
|
||||||
}
|
}
|
||||||
|
url := r.URL.String()
|
||||||
|
if len(url) > 1024 {
|
||||||
|
return ErrInvalidRequest
|
||||||
|
}
|
||||||
if _, err := w.WriteString(url); err != nil {
|
if _, err := w.WriteString(url); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user