github.com/10XDev/rclone@v1.52.3-0.20200626220027-16af9ab76b2a/cmd/serve/proxy/proxy_code.go (about) 1 // +build ignore 2 3 // A simple auth proxy for testing purposes 4 package main 5 6 import ( 7 "encoding/json" 8 "log" 9 "os" 10 ) 11 12 func main() { 13 // Read the input 14 var in map[string]string 15 err := json.NewDecoder(os.Stdin).Decode(&in) 16 if err != nil { 17 log.Fatal(err) 18 } 19 20 // Write the output 21 var out = map[string]string{} 22 for k, v := range in { 23 switch k { 24 case "user": 25 v += "-test" 26 case "error": 27 log.Fatal(v) 28 } 29 out[k] = v 30 } 31 if out["type"] == "" { 32 out["type"] = "local" 33 } 34 if out["_root"] == "" { 35 out["_root"] = "" 36 } 37 json.NewEncoder(os.Stdout).Encode(&out) 38 if err != nil { 39 log.Fatal(err) 40 } 41 }