Remove BIRDv1 support

This commit is contained in:
Lan Tian
2020-10-30 23:10:03 +08:00
parent 79431effb2
commit 3bcfc3d36c
12 changed files with 141 additions and 229 deletions

View File

@@ -50,10 +50,9 @@ func accessHandler(next http.Handler) http.Handler {
}
type settingType struct {
birdSocket string
bird6Socket string
listen string
allowedIPs []string
birdSocket string
listen string
allowedIPs []string
}
var setting settingType
@@ -63,7 +62,6 @@ func main() {
// Prepare default socket paths, use environment variable if possible
var settingDefault = settingType{
"/var/run/bird/bird.ctl",
"/var/run/bird/bird6.ctl",
":8000",
[]string{""},
}
@@ -71,9 +69,6 @@ func main() {
if birdSocketEnv := os.Getenv("BIRD_SOCKET"); birdSocketEnv != "" {
settingDefault.birdSocket = birdSocketEnv
}
if bird6SocketEnv := os.Getenv("BIRD6_SOCKET"); bird6SocketEnv != "" {
settingDefault.bird6Socket = bird6SocketEnv
}
if listenEnv := os.Getenv("BIRDLG_LISTEN"); listenEnv != "" {
settingDefault.listen = listenEnv
}
@@ -83,21 +78,17 @@ func main() {
// Allow parameters to override environment variables
birdParam := flag.String("bird", settingDefault.birdSocket, "socket file for bird, set either in parameter or environment variable BIRD_SOCKET")
bird6Param := flag.String("bird6", settingDefault.bird6Socket, "socket file for bird6, set either in parameter or environment variable BIRD6_SOCKET")
listenParam := flag.String("listen", settingDefault.listen, "listen address, set either in parameter or environment variable BIRDLG_LISTEN")
AllowedIPsParam := flag.String("allowed", strings.Join(settingDefault.allowedIPs, ","), "IPs allowed to access this proxy, separated by commas. Don't set to allow all IPs.")
flag.Parse()
setting.birdSocket = *birdParam
setting.bird6Socket = *bird6Param
setting.listen = *listenParam
setting.allowedIPs = strings.Split(*AllowedIPsParam, ",")
// Start HTTP server
http.HandleFunc("/", invalidHandler)
http.HandleFunc("/bird", birdHandler)
http.HandleFunc("/bird6", bird6Handler)
http.HandleFunc("/traceroute", tracerouteIPv4Wrapper)
http.HandleFunc("/traceroute6", tracerouteIPv6Wrapper)
http.HandleFunc("/traceroute", tracerouteHandler)
http.ListenAndServe(*listenParam, handlers.LoggingHandler(os.Stdout, accessHandler(http.DefaultServeMux)))
}