Fix race in sshExecuteCmdOneShotWithExitCode

The function wishes to return when the remote command
terminates.

However the main loop waits until either
* ChannelCondition.EXIT_STATUS is set; or
* ChannelCondition.EOF is set.

On my system the channel is closed (setting EOF), the
loop terminates and

             return sshSession.getExitStatus();

throws a NullPointerException because the process has not
terminated yet (and hence EXIT_STATUS is unset). Typically
the NPE was caught by an outer retry loop which retried
the command again, often succesfully due to lucky timing.

Since we need the exit code, we must wait until EXIT_STATUS
is set, and not EOF.

Signed-off-by: David Scott <dave.scott@citrix.com>