aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-04-10 15:07:22 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-04-10 15:07:22 +0200
commit31e097a19f5fac01cf3d744f582f4c07ec8fd3ca (patch)
tree31df412c373db9f40052c96b8cc3656bc575785b
parente39dbde1dabab7ecd33d8c1c10e48978c9f87939 (diff)
dashboard/app: stricter check on namespace names
Check that namespaces don't contain bad chars.
-rw-r--r--dashboard/app/config.go9
1 files changed, 5 insertions, 4 deletions
diff --git a/dashboard/app/config.go b/dashboard/app/config.go
index 1676bf6ce..c8a84eeab 100644
--- a/dashboard/app/config.go
+++ b/dashboard/app/config.go
@@ -135,8 +135,9 @@ type KernelRepo struct {
}
var (
- clientNameRe = regexp.MustCompile("^[a-zA-Z0-9-_]{4,100}$")
- clientKeyRe = regexp.MustCompile("^[a-zA-Z0-9]{16,128}$")
+ namespaceNameRe = regexp.MustCompile("^[a-zA-Z0-9-_.]{4,32}$")
+ clientNameRe = regexp.MustCompile("^[a-zA-Z0-9-_.]{4,100}$")
+ clientKeyRe = regexp.MustCompile("^[a-zA-Z0-9]{16,128}$")
)
type (
@@ -202,8 +203,8 @@ func checkConfig(cfg *GlobalConfig) {
}
func checkNamespace(ns string, cfg *Config, namespaces, clientNames map[string]bool) {
- if ns == "" {
- panic("empty namespace name")
+ if !namespaceNameRe.MatchString(ns) {
+ panic(fmt.Sprintf("bad namespace name: %q", ns))
}
if namespaces[ns] {
panic(fmt.Sprintf("duplicate namespace %q", ns))