Package it.baeyens.arduino.tools.uploaders

Source Code of it.baeyens.arduino.tools.uploaders.SSHPrompt

package it.baeyens.arduino.tools.uploaders;

import com.jcraft.jsch.Channel;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.UserInfo;

public class SSHPrompt {
    String host = "marvin1.local";
    String user = "root";
    String passwd = "Teensy2Graag";

    public void test() {

  try {
      JSch jsch = new JSch();

      Session session = jsch.getSession(user, host, 22);
      session.setPassword(passwd);

      MyUserInfo ui = new MyUserInfo(user, passwd);

      session.setUserInfo(ui);

      // It must not be recommended, but if you want to skip host-key check,
      // invoke following,
      // session.setConfig("StrictHostKeyChecking", "no");

      // session.connect();
      session.connect(30000); // making a connection with timeout.

      Channel channel = session.openChannel("shell");

      // Enable agent-forwarding.
      // ((ChannelShell)channel).setAgentForwarding(true);

      channel.setInputStream(System.in);
      /*
       * // a hack for MS-DOS prompt on Windows. channel.setInputStream(new FilterInputStream(System.in){ public int read(byte[] b, int off, int
       * len)throws IOException{ return in.read(b, off, (len>1024?1024:len)); } });
       */

      channel.setOutputStream(System.out);

      /*
       * // Choose the pty-type "vt102". ((ChannelShell)channel).setPtyType("vt102");
       */

      /*
       * // Set environment variable "LANG" as "ja_JP.eucJP". ((ChannelShell)channel).setEnv("LANG", "ja_JP.eucJP");
       */

      // channel.connect();
      channel.connect(3 * 1000);
  } catch (Exception e) {
      System.out.println(e);
  }
    }

    public class MyUserInfo implements UserInfo {

  String myUser;
  String myPasswd;

  public MyUserInfo(String user, String passwd) {
      myUser = user;
      myPasswd = passwd;
  }

  @Override
  public String getPassphrase() {
      // TODO Auto-generated method stub
      return null;
  }

  @Override
  public String getPassword() {
      // TODO Auto-generated method stub
      return myPasswd;
  }

  @Override
  public boolean promptPassphrase(String arg0) {
      // TODO Auto-generated method stub
      return false;
  }

  @Override
  public boolean promptPassword(String arg0) {
      // TODO Auto-generated method stub
      return false;
  }

  @Override
  public boolean promptYesNo(String arg0) {
      // TODO Auto-generated method stub
      return false;
  }

  @Override
  public void showMessage(String arg0) {
      // TODO Auto-generated method stub

  }
    }

    // public String getPassword(){ return null; }
    // public boolean promptYesNo(String str){ return false; }
    // public String getPassphrase(){ return null; }
    // public boolean promptPassphrase(String message){ return false; }
    // public boolean promptPassword(String message){ return false; }
    // public void showMessage(String message){ }
    // public String[] promptKeyboardInteractive(String destination,
    // String name,
    // String instruction,
    // String[] prompt,
    // boolean[] echo){
    // return null;
    // }
    // }
}
TOP

Related Classes of it.baeyens.arduino.tools.uploaders.SSHPrompt

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.