diff --git a/broker/broker.go b/broker/broker.go index e8900ea..482f0d2 100644 --- a/broker/broker.go +++ b/broker/broker.go @@ -53,7 +53,11 @@ func (ctx *BrokerContext) GetBridgeInfo(fingerprint bridgefingerprint.Fingerprin return ctx.bridgeList.GetBridgeInfo(fingerprint) } -func NewBrokerContext(metricsLogger *log.Logger) *BrokerContext { +func NewBrokerContext( + metricsLogger *log.Logger, + allowedRelayPattern, + presumedPatternForLegacyClient string, +) *BrokerContext { snowflakes := new(SnowflakeHeap) heap.Init(snowflakes) rSnowflakes := new(SnowflakeHeap) @@ -75,12 +79,14 @@ func NewBrokerContext(metricsLogger *log.Logger) *BrokerContext { bridgeListHolder.LoadBridgeInfo(bytes.NewReader([]byte(DefaultBridges))) return &BrokerContext{ - snowflakes: snowflakes, - restrictedSnowflakes: rSnowflakes, - idToSnowflake: make(map[string]*Snowflake), - proxyPolls: make(chan *ProxyPoll), - metrics: metrics, - bridgeList: bridgeListHolder, + snowflakes: snowflakes, + restrictedSnowflakes: rSnowflakes, + idToSnowflake: make(map[string]*Snowflake), + proxyPolls: make(chan *ProxyPoll), + metrics: metrics, + bridgeList: bridgeListHolder, + allowedRelayPattern: allowedRelayPattern, + presumedPatternForLegacyClient: presumedPatternForLegacyClient, } } @@ -161,12 +167,10 @@ func (ctx *BrokerContext) AddSnowflake(id string, proxyType string, natType stri return snowflake } -func (ctx *BrokerContext) InstallBridgeListProfile(reader io.Reader, relayPattern, presumedPatternForLegacyClient string) error { +func (ctx *BrokerContext) InstallBridgeListProfile(reader io.Reader) error { if err := ctx.bridgeList.LoadBridgeInfo(reader); err != nil { return err } - ctx.allowedRelayPattern = relayPattern - ctx.presumedPatternForLegacyClient = presumedPatternForLegacyClient return nil } @@ -244,14 +248,14 @@ func main() { metricsLogger := log.New(metricsFile, "", 0) - ctx := NewBrokerContext(metricsLogger) + ctx := NewBrokerContext(metricsLogger, allowedRelayPattern, presumedPatternForLegacyClient) if bridgeListFilePath != "" { bridgeListFile, err := os.Open(bridgeListFilePath) if err != nil { log.Fatal(err.Error()) } - err = ctx.InstallBridgeListProfile(bridgeListFile, allowedRelayPattern, presumedPatternForLegacyClient) + err = ctx.InstallBridgeListProfile(bridgeListFile) if err != nil { log.Fatal(err.Error()) } diff --git a/broker/snowflake-broker_test.go b/broker/snowflake-broker_test.go index bb4360e..8e9f4a0 100644 --- a/broker/snowflake-broker_test.go +++ b/broker/snowflake-broker_test.go @@ -89,7 +89,7 @@ func TestBroker(t *testing.T) { Convey("Context", t, func() { buf := new(bytes.Buffer) - ctx := NewBrokerContext(log.New(buf, "", 0)) + ctx := NewBrokerContext(log.New(buf, "", 0), "", "") i := &IPC{ctx} Convey("Adds Snowflake", func() { @@ -503,7 +503,7 @@ client-sqs-ips }) Convey("End-To-End", t, func() { - ctx := NewBrokerContext(NullLogger()) + ctx := NewBrokerContext(NullLogger(), "", "") i := &IPC{ctx} Convey("Check for client/proxy data race", func() { @@ -656,7 +656,7 @@ func TestSnowflakeHeap(t *testing.T) { func TestInvalidGeoipFile(t *testing.T) { Convey("Geoip", t, func() { // Make sure things behave properly if geoip file fails to load - ctx := NewBrokerContext(NullLogger()) + ctx := NewBrokerContext(NullLogger(), "", "") if err := ctx.metrics.LoadGeoipDatabases("invalid_filename", "invalid_filename6"); err != nil { log.Printf("loading geo ip databases returned error: %v", err) } @@ -670,7 +670,7 @@ func TestMetrics(t *testing.T) { Convey("Test metrics...", t, func() { done := make(chan bool) buf := new(bytes.Buffer) - ctx := NewBrokerContext(log.New(buf, "", 0)) + ctx := NewBrokerContext(log.New(buf, "", 0), "", "") i := &IPC{ctx} err := ctx.metrics.LoadGeoipDatabases("test_geoip", "test_geoip6") diff --git a/broker/sqs_test.go b/broker/sqs_test.go index 40b70ba..7c70390 100644 --- a/broker/sqs_test.go +++ b/broker/sqs_test.go @@ -22,7 +22,7 @@ func TestSQS(t *testing.T) { Convey("Context", t, func() { buf := new(bytes.Buffer) - ipcCtx := NewBrokerContext(log.New(buf, "", 0)) + ipcCtx := NewBrokerContext(log.New(buf, "", 0), "", "") i := &IPC{ipcCtx} var logBuffer bytes.Buffer