Add server-registry store methods with record-ID validation (step 1)

New IStore methods for a per-server registry (GetServers, GetServerByID,
CreateServer, DeleteServer, GetServerSettings/SaveServerSettings,
GetServerHashes/SaveServerHashes), all additive - existing single-server
methods untouched. Adds util.ValidateRecordID/ValidateInterfaceName and
applies them to every new method taking a server ID, closing a path-
traversal gap before serverID is ever driven by user input (flagged by
a security review pass).
This commit is contained in:
sysops
2026-07-11 22:39:53 +02:00
parent 40d7862702
commit 7eca2d01b8
3 changed files with 153 additions and 0 deletions
+8
View File
@@ -27,4 +27,12 @@ type IStore interface {
GetPath() string
SaveHashes(hashes model.ClientServerHashes) error
GetHashes() (model.ClientServerHashes, error)
GetServers() ([]model.Server, error)
GetServerByID(serverID string) (model.Server, error)
CreateServer(server model.Server) error
DeleteServer(serverID string) error
GetServerSettings(serverID string) (model.ServerSetting, error)
SaveServerSettings(serverID string, settings model.ServerSetting) error
GetServerHashes(serverID string) (model.ClientServerHashes, error)
SaveServerHashes(serverID string, hashes model.ClientServerHashes) error
}