Add dns client

This commit is contained in:
世界
2022-07-06 23:11:48 +08:00
parent 63e1b53a49
commit 001dc5f62c
23 changed files with 582 additions and 145 deletions

View File

@@ -9,21 +9,22 @@ import (
"github.com/sagernet/sing/common"
"github.com/sagernet/sing-box/adapter"
C "github.com/sagernet/sing-box/constant"
"golang.org/x/net/dns/dnsmessage"
)
var LocalTransportConstructor func() Transport
var LocalTransportConstructor func() adapter.DNSTransport
func NewLocalTransport() Transport {
func NewLocalTransport() adapter.DNSTransport {
if LocalTransportConstructor != nil {
return LocalTransportConstructor()
}
return &LocalTransport{}
}
var _ Transport = (*LocalTransport)(nil)
var _ adapter.DNSTransport = (*LocalTransport)(nil)
type LocalTransport struct {
resolver net.Resolver