def _get_controller(dut, cm, logfile): if cm == "ssh": try: del os.environ["TERM"] except KeyError: pass ssh = sshlib.get_ssh(dut, dut.user, dut.password, prompt=dut.prompt, logfile=logfile) ctor = ControllerShell(ssh) ctor.host = str(dut) ctor.user = dut.user ctor.password = dut.password return ctor elif cm == "serial": return NotImplemented elif cm == "telnet": return NotImplemented elif cm == "http": return NotImplemented elif cm == "https": return NotImplemented elif cm == "console": return NotImplemented elif cm == "snmp": return NotImplemented else: raise ValueError, "invalid configuration method: %s." % (cm,)
def remote_redir(host, lport, cport, laddr=None, caddr=None, extraopts=None, user=None, password=None, logfile=None): """run the port redirector on a remote host. Note that to redirect priviged ports the 'redir' program on the remote host must be suid root. SSH is used for this. If necessary, you can pass in a user and password for the ssh program.""" from pycopia import sshlib opts = "--lport=%d --cport=%d" % (lport, cport) if laddr: opts += " --laddr=%s" % (laddr, ) if caddr: opts += " --caddr=%s" % (caddr, ) cmd = "redir %s %s" % (opts, extraopts or "") rd = sshlib.get_ssh(host, user=user, password=password, logfile=logfile, cmd=cmd) return rd
def get_controller(equipment, logfile=None): try: del os.environ["TERM"] except KeyError: pass ssh = sshlib.get_ssh(equipment["hostname"], equipment["user"], equipment["password"], prompt=equipment["prompt"], logfile=logfile) ctor = ShellController(ssh) ctor.host = equipment["hostname"] ctor.user = equipment["user"] ctor.password = equipment["password"] return ctor
def remote_redir(host, lport, cport, laddr=None, caddr=None, extraopts=None, user=None, password=None, logfile=None): """run the port redirector on a remote host. Note that to redirect priviged ports the 'redir' program on the remote host must be suid root. SSH is used for this. If necessary, you can pass in a user and password for the ssh program.""" from pycopia import sshlib opts = "--lport=%d --cport=%d" % (lport, cport) if laddr: opts += " --laddr=%s" % (laddr,) if caddr: opts += " --caddr=%s" % (caddr,) cmd = "redir %s %s" % (opts, extraopts or "") rd = sshlib.get_ssh(host, user=user, password=password, logfile=logfile, cmd=cmd) return rd