mirror of
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
synced 2025-10-13 20:11:19 -04:00
Guard Proxy Relay URL Acceptance with Pattern Check
This commit is contained in:
parent
863a8296e8
commit
d5a87c3c02
1 changed files with 7 additions and 0 deletions
|
@ -30,6 +30,7 @@ import (
|
|||
"crypto/rand"
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
"git.torproject.org/pluggable-transports/snowflake.git/v2/common/namematcher"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
|
@ -494,6 +495,12 @@ func (sf *SnowflakeProxy) runSession(sid string) {
|
|||
tokens.ret()
|
||||
return
|
||||
}
|
||||
matcher := namematcher.NewNameMatcher(sf.RelayDomainNamePattern)
|
||||
if relayURL != "" && !matcher.IsMember(relayURL) {
|
||||
log.Printf("bad offer from broker: rejected Relay URL")
|
||||
tokens.ret()
|
||||
return
|
||||
}
|
||||
dataChan := make(chan struct{})
|
||||
dataChannelAdaptor := dataChannelHandlerWithRelayURL{RelayURL: relayURL, sf: sf}
|
||||
pc, err := sf.makePeerConnectionFromOffer(offer, config, dataChan, dataChannelAdaptor.datachannelHandler)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue