Refactor to miekg/dns

This commit is contained in:
世界
2022-09-13 16:18:39 +08:00
parent 1db7f45370
commit 007a278ac8
9 changed files with 55 additions and 119 deletions

View File

@@ -16,7 +16,7 @@ import (
N "github.com/sagernet/sing/common/network"
"github.com/sagernet/sing/common/task"
"golang.org/x/net/dns/dnsmessage"
mDNS "github.com/miekg/dns"
)
var _ adapter.Outbound = (*DNS)(nil)
@@ -72,7 +72,7 @@ func (d *DNS) handleConnection(ctx context.Context, conn net.Conn, metadata adap
if err != nil {
return err
}
var message dnsmessage.Message
var message mDNS.Msg
err = message.Unpack(buffer.Bytes())
if err != nil {
return err
@@ -88,7 +88,7 @@ func (d *DNS) handleConnection(ctx context.Context, conn net.Conn, metadata adap
responseBuffer := common.Dup(_responseBuffer)
defer responseBuffer.Release()
responseBuffer.Resize(2, 0)
n, err := response.AppendPack(responseBuffer.Index(0))
n, err := response.PackBuffer(responseBuffer.FreeBytes())
if err != nil {
return err
}
@@ -117,7 +117,7 @@ func (d *DNS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metada
if err != nil {
return err
}
var message dnsmessage.Message
var message mDNS.Msg
err = message.Unpack(buffer.Bytes())
if err != nil {
return err
@@ -131,7 +131,7 @@ func (d *DNS) NewPacketConnection(ctx context.Context, conn N.PacketConn, metada
}
timeout.Update()
responseBuffer := buf.NewPacket()
n, err := response.AppendPack(responseBuffer.Index(0))
n, err := response.PackBuffer(responseBuffer.FreeBytes())
if err != nil {
responseBuffer.Release()
return err