Skip to content

Commit 29565e0

Browse files
committed
all: s/SetUserAgentForDoH/SetUserAgent
1 parent 66f47e8 commit 29565e0

6 files changed

Lines changed: 17 additions & 14 deletions

File tree

intra/backend/netstat.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ type RDNSInfo struct {
154154
Transparency bool
155155
PanicTest bool
156156
SystemDNSForUndelegated bool
157-
SendDohUserAgent bool
157+
SetUserAgent bool
158158

159159
Dialer4 bool
160160
Dialer6 bool

intra/doh/doh.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -674,8 +674,8 @@ func (t *transport) asDohRequest(msg *dns.Msg) (req *http.Request, err error) {
674674
}
675675
req.Header.Set("content-type", dohmimetype)
676676
req.Header.Set("accept", dohmimetype)
677-
if settings.SetUserAgentForDoH.Load() {
678-
req.Header.Set("user-agent", "Intra")
677+
if settings.SetUserAgent.Load() {
678+
req.Header.Set("user-agent", settings.IntraUa)
679679
}
680680
return
681681
}

intra/ipn/proxy.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -700,13 +700,9 @@ func httpsReaches(who string, c *http.Client, url *url.URL) (bool, error) {
700700
return false, fmt.Errorf("proxy: reaches: err creating req: %w", err)
701701
}
702702

703-
setua := settings.SetUserAgentForDoH.Load()
703+
setua := settings.SetUserAgent.Load()
704704
if setua {
705-
// standard for 204 connectivity checks
706-
// PROBE_HTTPS https://www.google.com/generate_204 time=183ms ret=204 request={Connection=[close], User-Agent=[Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.32 Safari/537.36]}
707-
// headers={null=[HTTP/1.1 204 No Content], Alt-Svc=[h3=":443"; ma=2592000,h3-29=":443"; ma=2592000], Connection=[close], Content-Length=[0], Cross-Origin-Resource-Policy=[cross-origin],
708-
// Date=[Fri, 27 Jun 2025 10:56:24 GMT], X-Android-Received-Millis=[1751021784573], X-Android-Response-Source=[NETWORK 204], X-Android-Selected-Protocol=[http/1.1], X-Android-Sent-Millis=[1751021784495]}
709-
req.Header.Set("User-Agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.32 Safari/537.36")
705+
req.Header.Set("User-Agent", settings.AndroidCcUa)
710706
}
711707

712708
resp, err := c.Do(req)

intra/settings/config.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,16 @@ var EndpointIndependentFiltering = atomic.Bool{}
4444
// for undelegated domains.
4545
var SystemDNSForUndelegatedDomains = atomic.Bool{}
4646

47-
// SetUserAgentForDoH is a global flag to set User-Agent for DoH requests
48-
// to "Intra".
49-
var SetUserAgentForDoH = atomic.Bool{}
47+
// SetUserAgent is a global flag to set User-Agent for DoH requests
48+
// to "Intra" and for HTTP "Reaches" checks to the Android default.
49+
var SetUserAgent = atomic.Bool{}
50+
51+
// Android's default user-agent as set for connectivity checks
52+
// PROBE_HTTPS https://www.google.com/generate_204 time=183ms ret=204 request={Connection=[close], User-Agent=[Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.32 Safari/537.36]}
53+
// headers={null=[HTTP/1.1 204 No Content], Alt-Svc=[h3=":443"; ma=2592000,h3-29=":443"; ma=2592000], Connection=[close], Content-Length=[0], Cross-Origin-Resource-Policy=[cross-origin],
54+
// Date=[Fri, 27 Jun 2025 10:56:24 GMT], X-Android-Received-Millis=[1751021784573], X-Android-Response-Source=[NETWORK 204], X-Android-Selected-Protocol=[http/1.1], X-Android-Sent-Millis=[1751021784495]}
55+
const AndroidCcUa = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.32 Safari/537.36"
56+
const IntraUa = "Intra"
5057

5158
// PanicAtRandom is a global flag to panic the network engine
5259
// every once in a while (for testing).

intra/tun2socks.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ func UndelegatedDomains(useSystemDNS bool) {
143143
func Transparency(eim, eif bool) {
144144
settings.EndpointIndependentMapping.Store(eim)
145145
settings.EndpointIndependentFiltering.Store(eif)
146-
settings.SetUserAgentForDoH.Store(eim || eif)
146+
settings.SetUserAgent.Store(eim || eif)
147147
log.I("tun: eim? %t / eif? %t", eim, eif)
148148
}
149149

intra/tunnel.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,7 @@ func (t *rtunnel) stat() (*x.NetStat, error) {
316316
out.RDNSIn.NewWireGuard = settings.ExperimentalWireGuard.Load()
317317
out.RDNSIn.Transparency = settings.EndpointIndependentFiltering.Load()
318318
out.RDNSIn.PanicTest = settings.PanicAtRandom.Load()
319-
out.RDNSIn.SendDohUserAgent = settings.SetUserAgentForDoH.Load()
319+
out.RDNSIn.SetUserAgent = settings.SetUserAgent.Load()
320320
out.RDNSIn.SystemDNSForUndelegated = settings.SystemDNSForUndelegatedDomains.Load()
321321
out.RDNSIn.Dialer4 = dialers.Use4()
322322
out.RDNSIn.Dialer6 = dialers.Use6()

0 commit comments

Comments
 (0)