fix: tcp_proxy module do not panic on empty script

This commit is contained in:
Nikita Safonov 2018-02-26 23:47:20 +03:00
parent b8e48e7f8a
commit 6115ea7e3f

View file

@ -145,13 +145,17 @@ func (p *TcpProxy) doPipe(from, to net.Addr, src, dst io.ReadWriter, wg *sync.Wa
} }
b := buff[:n] b := buff[:n]
if p.script != nil {
ret := p.script.OnData(from, to, b) ret := p.script.OnData(from, to, b)
if ret != nil { if ret != nil {
nret := len(ret) nret := len(ret)
log.Info("Overriding %d bytes of data from %s to %s with %d bytes of new data.", n, from.String(), to.String(), nret) log.Info("Overriding %d bytes of data from %s to %s with %d bytes of new data.",
n, from.String(), to.String(), nret)
b = make([]byte, nret) b = make([]byte, nret)
copy(b, ret) copy(b, ret)
} }
}
n, err = dst.Write(b) n, err = dst.Write(b)
if err != nil { if err != nil {