summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormeskio <meskio@torproject.org>2022-10-17 12:36:19 +0200
committermeskio <meskio@torproject.org>2022-10-17 12:36:19 +0200
commitac8562803ab9621d037bd1b3710c59799c7aa6d5 (patch)
tree4ba8b9add7a57f2ecd79e0a4df4ffb222657413b
parent39df9b36b5694c6afd88a363f7c2984f00d26cb5 (diff)
parent21d74498518a600f9ad2124cb4da23d721b7fb41 (diff)
downloadsnowflake-ac8562803ab9621d037bd1b3710c59799c7aa6d5.tar.gz
snowflake-ac8562803ab9621d037bd1b3710c59799c7aa6d5.zip
Merge remote-tracking branch 'gitlab/mr/107'
-rw-r--r--proxy/lib/snowflake.go5
-rw-r--r--proxy/main.go14
2 files changed, 14 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..ea8f427 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,17 @@ func main() {
log.Fatal(err)
}
+ if ephemeralMinPort == 0 || ephemeralMaxPort == 0 {
+ log.Fatal("Ephemeral port cannot be zero")
+ }
+ if ephemeralMinPort > ephemeralMaxPort {
+ log.Fatal("Invalid port range: min > max")
+ }
+
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{