mirror of
https://github.com/safing/portmaster
synced 2025-09-02 02:29:12 +00:00
Minor fixes
This commit is contained in:
parent
8ca384a13d
commit
652e27d3ce
2 changed files with 10 additions and 15 deletions
|
@ -39,20 +39,15 @@ func (tq *HTTPSQuery) MakeCacheRecord(reply *dns.Msg, resolverInfo *ResolverInfo
|
||||||
|
|
||||||
// NewHTTPSResolver returns a new HTTPSResolver.
|
// NewHTTPSResolver returns a new HTTPSResolver.
|
||||||
func NewHTTPSResolver(resolver *Resolver) *HTTPSResolver {
|
func NewHTTPSResolver(resolver *Resolver) *HTTPSResolver {
|
||||||
tr := &http.Transport{}
|
tr := &http.Transport{
|
||||||
|
TLSClientConfig: &tls.Config{
|
||||||
if resolver.Info.IP != nil {
|
MinVersion: tls.VersionTLS12,
|
||||||
tr = &http.Transport{
|
ServerName: resolver.Info.Domain,
|
||||||
TLSClientConfig: &tls.Config{
|
// TODO: use portbase rng
|
||||||
MinVersion: tls.VersionTLS12,
|
},
|
||||||
ServerName: resolver.Info.Domain,
|
|
||||||
// TODO: use portbase rng
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
client := &http.Client{Transport: tr}
|
client := &http.Client{Transport: tr}
|
||||||
|
|
||||||
newResolver := &HTTPSResolver{
|
newResolver := &HTTPSResolver{
|
||||||
BasicResolverConn: BasicResolverConn{
|
BasicResolverConn: BasicResolverConn{
|
||||||
resolver: resolver,
|
resolver: resolver,
|
||||||
|
@ -85,7 +80,6 @@ func (hr *HTTPSResolver) Query(ctx context.Context, q *Query) (*RRCache, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
request, err := http.NewRequestWithContext(ctx, http.MethodGet, url.String(), nil)
|
request, err := http.NewRequestWithContext(ctx, http.MethodGet, url.String(), nil)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -182,7 +182,6 @@ func createResolver(resolverURL, source string) (*Resolver, bool, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func checkAndSetResolverParamters(u *url.URL, resolver *Resolver) error {
|
func checkAndSetResolverParamters(u *url.URL, resolver *Resolver) error {
|
||||||
|
|
||||||
// Check if we are using domain name and if it's in a valid scheme
|
// Check if we are using domain name and if it's in a valid scheme
|
||||||
ip := net.ParseIP(u.Hostname())
|
ip := net.ParseIP(u.Hostname())
|
||||||
hostnameIsDomaion := (ip == nil)
|
hostnameIsDomaion := (ip == nil)
|
||||||
|
@ -220,7 +219,6 @@ func checkAndSetResolverParamters(u *url.URL, resolver *Resolver) error {
|
||||||
paramterServerIP := query.Get(parameterIP)
|
paramterServerIP := query.Get(parameterIP)
|
||||||
|
|
||||||
if u.Scheme == ServerTypeDoT || u.Scheme == ServerTypeDoH {
|
if u.Scheme == ServerTypeDoT || u.Scheme == ServerTypeDoH {
|
||||||
|
|
||||||
// Check if IP and Domain are set correctly
|
// Check if IP and Domain are set correctly
|
||||||
switch {
|
switch {
|
||||||
case hostnameIsDomaion && resolver.Info.Domain != "":
|
case hostnameIsDomaion && resolver.Info.Domain != "":
|
||||||
|
@ -244,7 +242,10 @@ func checkAndSetResolverParamters(u *url.URL, resolver *Resolver) error {
|
||||||
resolver.ServerAddress = net.JoinHostPort(resolver.Info.Domain, strconv.Itoa(int(port)))
|
resolver.ServerAddress = net.JoinHostPort(resolver.Info.Domain, strconv.Itoa(int(port)))
|
||||||
}
|
}
|
||||||
|
|
||||||
resolverInitDomains[dns.Fqdn(resolver.Info.Domain)] = struct{}{}
|
if ip == nil {
|
||||||
|
resolverInitDomains[dns.Fqdn(resolver.Info.Domain)] = struct{}{}
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if resolver.Info.Domain != "" {
|
if resolver.Info.Domain != "" {
|
||||||
return fmt.Errorf("domain verification is only supported by DoT and DoH servers")
|
return fmt.Errorf("domain verification is only supported by DoT and DoH servers")
|
||||||
|
|
Loading…
Add table
Reference in a new issue