Commit aa25675a authored by Matthew Finkel's avatar Matthew Finkel Committed by Arlo Breault
Browse files

Match Tor Browser and (new) Orfox UAS together

The two user agent strings are now nearly identical, we should try
combining the patterns (again). There are also new unit test strings
for this.

This roughly combines the pattern matching introduced in
749fd988 and
644e1c21.

We can remove the old Orfox-specific pattern (Gecko/38) after
users have a few weeks for upgrading to the new version.
parent 21b48f63
......@@ -55,7 +55,7 @@ func GetHost(r *http.Request) (host string, err error) {
return
}
var TBBUserAgents = regexp.MustCompile(`^Mozilla/5\.0 \(Windows NT 6\.1; rv:[\d]+\.0\) Gecko/20100101 Firefox/[\d]+\.0$`)
var TBBUserAgents = regexp.MustCompile(`^Mozilla/5\.0 \(((Windows NT 6\.1)|(Android; Mobile)); rv:[\d]+\.0\) Gecko/20100101 Firefox/[\d]+\.0$`)
var OrfoxUserAgents = regexp.MustCompile(`^Mozilla/5\.0 \(Android; Mobile; rv:38.0\) Gecko/38.0 Firefox/38.0$`)
func LikelyTBB(ua string) bool {
......
......@@ -12,6 +12,8 @@ var UserAgents = map[string]bool{
"Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Firefox/24.0": true,
"Mozilla/5.0 (Android; Mobile; rv:31.0) Gecko/31.0 Firefox/31.0": false,
"Mozilla/5.0 (Android; Mobile; rv:38.0) Gecko/38.0 Firefox/38.0": true,
"Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0": true,
"Mozilla/5.0 (Android; Mobile; rv:52.0) Gecko/20100101 Firefox/52.0": true,
}
func TestLikelyTBB(t *testing.T) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment