diff options
author | KokaKiwi <kokakiwi+tor@kokakiwi.net> | 2022-10-12 19:33:38 +0200 |
---|---|---|
committer | KokaKiwi <kokakiwi+tor@kokakiwi.net> | 2022-10-12 19:48:24 +0200 |
commit | 10c8173120cd205b54f446c9d0671572e8acc20b (patch) | |
tree | 6aff60629b417e90153e89032b88ed8f5146728d /proxy | |
parent | 8b1970a3ce85436e87a9ac868652c3fc3d8c4b58 (diff) | |
download | snowflake-10c8173120cd205b54f446c9d0671572e8acc20b.tar.gz snowflake-10c8173120cd205b54f446c9d0671572e8acc20b.zip |
proxy: Fix ephemeral ports range CLI flag (again)
Diffstat (limited to 'proxy')
-rw-r--r-- | proxy/lib/snowflake.go | 5 | ||||
-rw-r--r-- | proxy/main.go | 11 |
2 files changed, 11 insertions, 5 deletions
diff --git a/proxy/lib/snowflake.go b/proxy/lib/snowflake.go index 6891be0..f8a0f2c 100644 --- a/proxy/lib/snowflake.go +++ b/proxy/lib/snowflake.go @@ -354,7 +354,10 @@ func (sf *SnowflakeProxy) makeWebRTCAPI() *webrtc.API { settingsEngine := webrtc.SettingEngine{} if sf.EphemeralMinPort != 0 && sf.EphemeralMaxPort != 0 { - settingsEngine.SetEphemeralUDPPortRange(sf.EphemeralMinPort, sf.EphemeralMaxPort) + err := settingsEngine.SetEphemeralUDPPortRange(sf.EphemeralMinPort, sf.EphemeralMaxPort) + if err != nil { + log.Fatal("Invalid port range: min > max") + } } settingsEngine.SetICEMulticastDNSMode(ice.MulticastDNSModeDisabled) diff --git a/proxy/main.go b/proxy/main.go index 38c07b0..146a1f3 100644 --- a/proxy/main.go +++ b/proxy/main.go @@ -2,7 +2,6 @@ package main import ( "flag" - "fmt" "io" "io/ioutil" "log" @@ -31,7 +30,7 @@ func main() { SummaryInterval := flag.Duration("summary-interval", time.Hour, "the time interval to output summary, 0s disables summaries. Valid time units are \"s\", \"m\", \"h\". ") verboseLogging := flag.Bool("verbose", false, "increase log verbosity") - ephemeralPortsRangeFlag := flag.String("ephemeral-ports-range", "ICE UDP ephemeral ports range (format:\"[min]:[max]\")", "") + ephemeralPortsRangeFlag := flag.String("ephemeral-ports-range", "", "ICE UDP ephemeral ports range (format:\"<min>:<max>\")") var ephemeralPortsRange []uint16 = []uint16{0, 0} @@ -52,10 +51,14 @@ func main() { log.Fatal(err) } + if ephemeralMinPort == 0 || ephemeralMaxPort == 0 { + log.Fatal("Ephemeral port cannot be zero") + } + ephemeralPortsRange = []uint16{uint16(ephemeralMinPort), uint16(ephemeralMaxPort)} + } else { + log.Fatalf("Bad range port format: %v", *ephemeralPortsRangeFlag) } - - fmt.Printf("Bad range port format: %v", ephemeralPortsRangeFlag) } proxy := sf.SnowflakeProxy{ |