Optimize TPROXY Inbound UDP write back

Enhanced stability.
This commit is contained in:
RPRX 2021-01-20 23:58:59 +00:00 committed by GitHub
parent ae98dc75cf
commit b60cf02603
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 43 deletions

View file

@ -277,17 +277,17 @@ func (w *PacketWriter) WriteMultiBuffer(mb buf.MultiBuffer) error {
w.mark,
)
if err != nil {
newError(err).WriteToLog()
b.Release()
buf.ReleaseMulti(mb)
return err
continue
}
w.conns[*b.UDP] = conn
}
_, err = conn.WriteTo(b.Bytes(), w.back)
if err != nil {
conn.Close()
w.conns[*b.UDP] = nil
newError(err).WriteToLog()
w.conns[*b.UDP] = nil
conn.Close()
}
b.Release()
} else {