in src/sessionmanagerplugin/session/portsession/standardstreamforwarding.go [56:72]
func (p *StandardStreamForwarding) ReadStream(log log.T) (err error) {
msg := make([]byte, config.StreamDataPayloadSize)
for {
numBytes, err := p.inputStream.Read(msg)
if err != nil {
return p.handleReadError(log, err)
}
log.Tracef("Received message of size %d from stdin.", numBytes)
if err = p.session.DataChannel.SendInputDataMessage(log, message.Output, msg[:numBytes]); err != nil {
log.Errorf("Failed to send packet: %v", err)
return err
}
// Sleep to process more data
time.Sleep(time.Millisecond)
}
}