package main import ( "encoding/json" "os" ) type Gateway struct { Name string `json:"name"` Address string `json:"address"` } type Config struct { Controller string `json:"controller"` Gateway []Gateway `json:"gateway"` Protected []string `json:"protected"` Metric int `json:"metric"` Timeout int `json:"timeout"` Interval int `json:"interval"` Port int `json:"port"` Hotswap bool `json:"hotswap"` } func LoadConfig(path string) (*Config, error) { data, err := os.ReadFile(path) if err != nil { return nil, err } var cfg Config if err := json.Unmarshal(data, &cfg); err != nil { return nil, err } return &cfg, nil }