fix: 目录搜索转义 LIKE 通配符并拒绝编号 inline

This commit is contained in:
Nixevol
2026-09-30 16:21:51 +08:00
parent 05a3741fde
commit 8ca545ae99
6 changed files with 74 additions and 3 deletions
+3
View File
@@ -171,6 +171,9 @@ func (h *RegisterHandler) register(ctx context.Context, req *protocol.RegisterRe
}
return RegisterResult{}, apiErr(http.StatusBadRequest, code, msg)
}
if strings.EqualFold(req.ID, "inline") {
return RegisterResult{}, apiErr(http.StatusBadRequest, protocol.CodeBadRequest, "id reserved")
}
id := req.ID
loginPassword := req.LoginPassword
+12
View File
@@ -539,6 +539,18 @@ func TestRegister_LogOmitsSecrets(t *testing.T) {
}
}
func TestRegister_ReservedInlineID(t *testing.T) {
env := openTestEnv(t)
env.setRegistration(t, true, "inline-code1")
code, resp, _ := env.doRegister(t, `{"registration_code":"inline-code1","id":"inline","login_password":"password1"}`)
if code != http.StatusBadRequest || resp.Error == nil || resp.Error.Code != protocol.CodeBadRequest {
t.Fatalf("status=%d resp=%+v", code, resp)
}
if _, _, ok := env.getEndpoint(t, "inline"); ok {
t.Fatal("inline must not be created")
}
}
func TestRegister_NSTPasswordRejected(t *testing.T) {
env := openTestEnv(t)
env.setRegistration(t, true, "nst-code-01")