mirror of https://github.com/XTLS/Xray-core
DNS outbound: Prevent panic from rejecting invalid domain (#4903)
Fixes https://github.com/XTLS/Xray-core/pull/4824#issuecomment-3078811352pull/4909/head
parent
79c6f99384
commit
83686ebfaa
|
@ -338,11 +338,16 @@ func (h *Handler) rejectNonIPQuery(id uint16, qType dnsmessage.Type, domain stri
|
||||||
})
|
})
|
||||||
builder.EnableCompression()
|
builder.EnableCompression()
|
||||||
common.Must(builder.StartQuestions())
|
common.Must(builder.StartQuestions())
|
||||||
common.Must(builder.Question(dnsmessage.Question{
|
err := builder.Question(dnsmessage.Question{
|
||||||
Name: dnsmessage.MustNewName(domain),
|
Name: dnsmessage.MustNewName(domain),
|
||||||
Class: dnsmessage.ClassINET,
|
Class: dnsmessage.ClassINET,
|
||||||
Type: qType,
|
Type: qType,
|
||||||
}))
|
})
|
||||||
|
if err != nil {
|
||||||
|
errors.LogInfo(context.Background(), "unexpected domain ", domain, " when building reject message: ", err)
|
||||||
|
b.Release()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
msgBytes, err := builder.Finish()
|
msgBytes, err := builder.Finish()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue