]> Cypherpunks repositories - gostls13.git/commitdiff
net/http: clarify panic conditions in Handle, HandleFunc, AddInsecureBypassPattern
authorCole Garien <colegarien@gmail.com>
Sat, 13 Sep 2025 17:54:40 +0000 (17:54 +0000)
committerGopher Robot <gobot@golang.org>
Tue, 16 Sep 2025 00:31:50 +0000 (17:31 -0700)
Add explicit mention that these methods panic on both pattern conflict
and invalid syntax.

Fixes #75226

Change-Id: If7dbfc44e1ec4624ab156f0e5d7e66cee2c2fef3
GitHub-Last-Rev: acc9a9c3338373f5a9376ff2eb1decd30bbee04d
GitHub-Pull-Request: golang/go#75297
Reviewed-on: https://go-review.googlesource.com/c/go/+/701016
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Auto-Submit: Sean Liao <sean@liao.dev>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
Reviewed-by: Sean Liao <sean@liao.dev>
Reviewed-by: Mark Freeman <markfreeman@google.com>
src/net/http/csrf.go
src/net/http/server.go

index d088b9b615145b5ba9de15fcd1e58f848cb599f0..0b71b403899a2aef26eee2930731d438685f25ac 100644 (file)
@@ -90,6 +90,10 @@ var sentinelHandler Handler = &noopHandler{}
 // would redirect to a pattern (e.g. after cleaning the path or adding a
 // trailing slash) are not.
 //
+// AddInsecureBypassPattern panics if the pattern conflicts with one already
+// registered, or if the pattern is syntactically invalid (for example, an
+// improperly formed wildcard).
+//
 // AddInsecureBypassPattern can be called concurrently with other methods or
 // request handling, and applies to future requests.
 func (c *CrossOriginProtection) AddInsecureBypassPattern(pattern string) {
index 6fdcd51c0a677723145b46ce5d62eda0346e5960..4078c89906140997b7917f3690d5443fbc9ee57a 100644 (file)
@@ -2868,8 +2868,10 @@ func (mux *ServeMux) ServeHTTP(w ResponseWriter, r *Request) {
 // always refers to user code.
 
 // Handle registers the handler for the given pattern.
-// If the given pattern conflicts with one that is already registered, Handle
-// panics.
+// If the given pattern conflicts with one that is already registered
+// or if the pattern is invalid, Handle panics.
+//
+// See [ServeMux] for details on valid patterns and conflict rules.
 func (mux *ServeMux) Handle(pattern string, handler Handler) {
        if use121 {
                mux.mux121.handle(pattern, handler)
@@ -2879,8 +2881,10 @@ func (mux *ServeMux) Handle(pattern string, handler Handler) {
 }
 
 // HandleFunc registers the handler function for the given pattern.
-// If the given pattern conflicts with one that is already registered, HandleFunc
-// panics.
+// If the given pattern conflicts with one that is already registered
+// or if the pattern is invalid, HandleFunc panics.
+//
+// See [ServeMux] for details on valid patterns and conflict rules.
 func (mux *ServeMux) HandleFunc(pattern string, handler func(ResponseWriter, *Request)) {
        if use121 {
                mux.mux121.handleFunc(pattern, handler)