min yun law created SSHD-1085:
---------------------------------
Summary: channel.waitFor() get stuck when run reboot command
Key: SSHD-1085
URL: https://issues.apache.org/jira/browse/SSHD-1085
Project: MINA SSHD
Issue Type: Bug
Affects Versions: 2.5.1
Environment: linux
Reporter: min yun law
Trying to run linux command "reboot" by mina sshd to remote node, the node is
in reboot, but the ClientChannel object still keep open, not in closed status,
Here is the logic code in my project:
String command = "reboot";
ChannelExec channel = clientSession.createExecChannel(command);
if(!channel.isClosed())
{
ByteArrayOutputStream out = new ByteArrayOutputStream();
ByteArrayOutputStream err = new ByteArrayOutputStream();
channel.setOut(out);
channel.setErr(err);
channel.open().await(); //this passed
//follow call will cause stuck
Collection<ClientChannelEvent>
waitMask = channel.waitFor(REMOTE_COMMAND_WAIT_EVENTS, 0L);
String outputStr =
new String(out.toByteArray(), StandardCharsets.UTF_8);
//some case this will throw runtime exception
int exitStatus = channel.getExitStatus();
}
So why the ChannelExec cannot get the correct channel status when remote node
is rebooting?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]