Null characters received in data from SshChannel.ExtendedDataReceived event

0 votes
asked Aug 21, 2018 by sparkplug (220 points)


My application runs SSH commands to an OpenSSH service running under WSL on Windows 10 using version 1.0.6755 of Rebex.SshShell.Full.

I am attempting to log the stderr response in a different colour to the stdout response. I also want to retrieve the exit code so that I can log a failure when the exitcode is non-zero.

I'm using the ExtendedDataReceived event to do this as shown in SshCommandRunner class code in this post:

As a test, I am running the command SshCommandRunner.RunCommand("cp feck /mnt/d/temp") where the file "feck" does not exist.

Sometimes the 'response' string in channel_ExtendedDataReceived contains the correct error message e.g. "cp: cannot stat 'feck': No such file or directory"

However, it often contains strange characters and repeats previous data e.g. "-status\0\0\0\0\u0001le or dir" followed by "-status\0\0\0\0\u0001le or directory\n"

Additionally, the ExitCode is sometimes 1 and sometimes 0.

Any idea why this could be happening? The post with the code sample is quite old now - is there a better way to do this now?


1 Answer

+1 vote
answered Aug 21, 2018 by Lukas Matyska (60,770 points)
edited Sep 4, 2018 by Lukas Matyska
Best answer


The issue was fixed in version 2018 R2.1.

It showed that this is a bug in the ExtendedDataReceived event. The received data can be overwritten before providing it to the event consumer.

We have fixed it. You can try the hotfix, which is available at

You can use this trial key:

// Add this line to your application to set your trial key before working with Rebex classes.
Rebex.Licensing.Key = "==AFq6gP2DYmHj+yh7bYWpmDGIm8zNJ5mOcifeKrc9ShEE==";

If you have already purchased a license, please send your order details to and we will send you full version of the hotfix.

Thank you for pointing to this. We are sorry for any inconveniences it may cause.

commented Aug 22, 2018 by sparkplug (220 points)
Works well. Thanks for the quick fix.