package main import ( "fmt" "strconv" ) type Proxy struct { Domain string Port int } var proxyList map[int]string func ScriptedInit() { proxyList = make(map[int]string) } func GetProxy() ([]Proxy) { var p []Proxy for port, domain := range proxyList { p = append(p, Proxy{Domain: domain, Port: port}) } return p } func AddProxy(domain string, port string) { p, err := strconv.Atoi(port) if err != nil { fmt.Println(err) fmt.Printf("Error: proxy for %s, port is not a number: %s\n", domain, port) return } conflict, exists := proxyList[p] if exists == true { fmt.Println("Error: Conflicting proxy settings:") fmt.Printf(" %s:%s\n", conflict, p) fmt.Printf(" %s:%s\n", domain, p) return } proxyList[p] = domain }