c.disconnect();
return new String(buffer);
}
protected String readDir(String path) throws Exception {
ChannelExec c = (ChannelExec) session.openChannel("exec");
c.setCommand("scp -f -r " + path);
c.connect();
OutputStream os = c.getOutputStream();
InputStream is = c.getInputStream();
String header = readLine(is);
assertTrue(header.startsWith("D0755 0 "));
os.write(0);
os.flush();
header = readLine(is);
assertEquals("C0644 11 out.txt", header);
int length = Integer.parseInt(header.substring(6, header.indexOf(' ', 6)));
os.write(0);
os.flush();
byte[] buffer = new byte[length];
length = is.read(buffer, 0, buffer.length);
assertEquals(length, buffer.length);
assertEquals(0, is.read());
os.write(0);
os.flush();
header = readLine(is);
assertEquals("E", header);
c.disconnect();
return new String(buffer);
}