Merge pull request #90 from ns3777k/tcp-proxy-script-fix

fix: tcp_proxy module do not panic on empty script
This commit is contained in:
Simone Margaritelli 2018-02-26 23:04:42 +01:00 committed by GitHub
commit eab7997539
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -145,12 +145,16 @@ func (p *TcpProxy) doPipe(from, to net.Addr, src, dst io.ReadWriter, wg *sync.Wa
}
b := buff[:n]
ret := p.script.OnData(from, to, b)
if ret != nil {
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)
b = make([]byte, nret)
copy(b, ret)
if p.script != nil {
ret := p.script.OnData(from, to, b)
if ret != nil {
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)
b = make([]byte, nret)
copy(b, ret)
}
}
n, err = dst.Write(b)