@ -50,7 +50,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -62,7 +62,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'r': // Prefix: "release-submissions"
|
||||
origElem := elem
|
||||
|
||||
if l := len("release-submissions"); len(elem) >= l && elem[0:l] == "release-submissions" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -81,9 +81,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "s"
|
||||
origElem := elem
|
||||
|
||||
if l := len("s"); len(elem) >= l && elem[0:l] == "s" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -95,7 +94,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'c': // Prefix: "cript"
|
||||
origElem := elem
|
||||
|
||||
if l := len("cript"); len(elem) >= l && elem[0:l] == "cript" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -107,7 +106,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '-': // Prefix: "-policy"
|
||||
origElem := elem
|
||||
|
||||
if l := len("-policy"); len(elem) >= l && elem[0:l] == "-policy" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -128,7 +127,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -136,7 +135,11 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
|
||||
// Param: "ScriptPolicyID"
|
||||
// Leaf parameter
|
||||
// Leaf parameter, slashes are prohibited
|
||||
idx := strings.IndexByte(elem, '/')
|
||||
if idx >= 0 {
|
||||
break
|
||||
}
|
||||
args[0] = elem
|
||||
elem = ""
|
||||
|
||||
@ -162,12 +165,10 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "s"
|
||||
origElem := elem
|
||||
|
||||
if l := len("s"); len(elem) >= l && elem[0:l] == "s" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -188,7 +189,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -196,7 +197,11 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
|
||||
// Param: "ScriptID"
|
||||
// Leaf parameter
|
||||
// Leaf parameter, slashes are prohibited
|
||||
idx := strings.IndexByte(elem, '/')
|
||||
if idx >= 0 {
|
||||
break
|
||||
}
|
||||
args[0] = elem
|
||||
elem = ""
|
||||
|
||||
@ -222,15 +227,12 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'u': // Prefix: "ubmissions"
|
||||
origElem := elem
|
||||
|
||||
if l := len("ubmissions"); len(elem) >= l && elem[0:l] == "ubmissions" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -251,7 +253,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -281,7 +283,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -293,7 +295,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'c': // Prefix: "completed"
|
||||
origElem := elem
|
||||
|
||||
if l := len("completed"); len(elem) >= l && elem[0:l] == "completed" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -314,9 +316,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'm': // Prefix: "model"
|
||||
origElem := elem
|
||||
|
||||
if l := len("model"); len(elem) >= l && elem[0:l] == "model" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -337,9 +338,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "status/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("status/"); len(elem) >= l && elem[0:l] == "status/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -351,7 +351,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'r': // Prefix: "re"
|
||||
origElem := elem
|
||||
|
||||
if l := len("re"); len(elem) >= l && elem[0:l] == "re" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -363,7 +363,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'j': // Prefix: "ject"
|
||||
origElem := elem
|
||||
|
||||
if l := len("ject"); len(elem) >= l && elem[0:l] == "ject" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -384,9 +384,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'q': // Prefix: "quest-changes"
|
||||
origElem := elem
|
||||
|
||||
if l := len("quest-changes"); len(elem) >= l && elem[0:l] == "quest-changes" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -407,9 +406,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'v': // Prefix: "voke"
|
||||
origElem := elem
|
||||
|
||||
if l := len("voke"); len(elem) >= l && elem[0:l] == "voke" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -430,12 +428,10 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "submit"
|
||||
origElem := elem
|
||||
|
||||
if l := len("submit"); len(elem) >= l && elem[0:l] == "submit" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -456,9 +452,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 't': // Prefix: "trigger-"
|
||||
origElem := elem
|
||||
|
||||
if l := len("trigger-"); len(elem) >= l && elem[0:l] == "trigger-" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -470,7 +465,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'u': // Prefix: "upload"
|
||||
origElem := elem
|
||||
|
||||
if l := len("upload"); len(elem) >= l && elem[0:l] == "upload" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -491,9 +486,8 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'v': // Prefix: "validate"
|
||||
origElem := elem
|
||||
|
||||
if l := len("validate"); len(elem) >= l && elem[0:l] == "validate" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -514,28 +508,20 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
}
|
||||
s.notFound(w, r)
|
||||
@ -617,7 +603,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -629,7 +615,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'r': // Prefix: "release-submissions"
|
||||
origElem := elem
|
||||
|
||||
if l := len("release-submissions"); len(elem) >= l && elem[0:l] == "release-submissions" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -652,9 +638,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "s"
|
||||
origElem := elem
|
||||
|
||||
if l := len("s"); len(elem) >= l && elem[0:l] == "s" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -666,7 +651,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'c': // Prefix: "cript"
|
||||
origElem := elem
|
||||
|
||||
if l := len("cript"); len(elem) >= l && elem[0:l] == "cript" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -678,7 +663,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '-': // Prefix: "-policy"
|
||||
origElem := elem
|
||||
|
||||
if l := len("-policy"); len(elem) >= l && elem[0:l] == "-policy" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -709,7 +694,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -717,7 +702,11 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
|
||||
// Param: "ScriptPolicyID"
|
||||
// Leaf parameter
|
||||
// Leaf parameter, slashes are prohibited
|
||||
idx := strings.IndexByte(elem, '/')
|
||||
if idx >= 0 {
|
||||
break
|
||||
}
|
||||
args[0] = elem
|
||||
elem = ""
|
||||
|
||||
@ -753,12 +742,10 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "s"
|
||||
origElem := elem
|
||||
|
||||
if l := len("s"); len(elem) >= l && elem[0:l] == "s" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -789,7 +776,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -797,7 +784,11 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
|
||||
// Param: "ScriptID"
|
||||
// Leaf parameter
|
||||
// Leaf parameter, slashes are prohibited
|
||||
idx := strings.IndexByte(elem, '/')
|
||||
if idx >= 0 {
|
||||
break
|
||||
}
|
||||
args[0] = elem
|
||||
elem = ""
|
||||
|
||||
@ -833,15 +824,12 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'u': // Prefix: "ubmissions"
|
||||
origElem := elem
|
||||
|
||||
if l := len("ubmissions"); len(elem) >= l && elem[0:l] == "ubmissions" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -872,7 +860,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -904,7 +892,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case '/': // Prefix: "/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("/"); len(elem) >= l && elem[0:l] == "/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -916,7 +904,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'c': // Prefix: "completed"
|
||||
origElem := elem
|
||||
|
||||
if l := len("completed"); len(elem) >= l && elem[0:l] == "completed" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -939,9 +927,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'm': // Prefix: "model"
|
||||
origElem := elem
|
||||
|
||||
if l := len("model"); len(elem) >= l && elem[0:l] == "model" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -964,9 +951,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "status/"
|
||||
origElem := elem
|
||||
|
||||
if l := len("status/"); len(elem) >= l && elem[0:l] == "status/" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -978,7 +964,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'r': // Prefix: "re"
|
||||
origElem := elem
|
||||
|
||||
if l := len("re"); len(elem) >= l && elem[0:l] == "re" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -990,7 +976,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'j': // Prefix: "ject"
|
||||
origElem := elem
|
||||
|
||||
if l := len("ject"); len(elem) >= l && elem[0:l] == "ject" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1013,9 +999,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'q': // Prefix: "quest-changes"
|
||||
origElem := elem
|
||||
|
||||
if l := len("quest-changes"); len(elem) >= l && elem[0:l] == "quest-changes" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1038,9 +1023,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'v': // Prefix: "voke"
|
||||
origElem := elem
|
||||
|
||||
if l := len("voke"); len(elem) >= l && elem[0:l] == "voke" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1063,12 +1047,10 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 's': // Prefix: "submit"
|
||||
origElem := elem
|
||||
|
||||
if l := len("submit"); len(elem) >= l && elem[0:l] == "submit" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1091,9 +1073,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 't': // Prefix: "trigger-"
|
||||
origElem := elem
|
||||
|
||||
if l := len("trigger-"); len(elem) >= l && elem[0:l] == "trigger-" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1105,7 +1086,7 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
switch elem[0] {
|
||||
case 'u': // Prefix: "upload"
|
||||
origElem := elem
|
||||
|
||||
if l := len("upload"); len(elem) >= l && elem[0:l] == "upload" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1128,9 +1109,8 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
case 'v': // Prefix: "validate"
|
||||
origElem := elem
|
||||
|
||||
if l := len("validate"); len(elem) >= l && elem[0:l] == "validate" {
|
||||
elem = elem[l:]
|
||||
} else {
|
||||
@ -1153,28 +1133,20 @@ func (s *Server) FindPath(method string, u *url.URL) (r Route, _ bool) {
|
||||
}
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
|
||||
elem = origElem
|
||||
}
|
||||
}
|
||||
return r, false
|
||||
|
Reference in New Issue
Block a user