Exemple #1
0
def connect(ns):
    password = ns.password
    if password is None:
        password = getpass.getpass()
    connect_args = dict(host=ns.host,
                        port=ns.port,
                        username=ns.username,
                        password=password,
                        key_filename=ns.privKeyFile,
                        hostkey_verify=False,
                        look_for_keys=False,
                        allow_agent=False)
    device_handler = manager.make_device_handler(None)
    if not ns.tcp and not ns.raw:
        # use the public API only
        session = transport.SSHSession(device_handler)
    elif ns.tcp:
        session = nctransport.TCPSession(device_handler, ns.raw)
    else:
        session = nctransport.SSHSession(device_handler, ns.raw)
    if not ns.tcp and ("hostkey_verify" not in connect_args
                       or connect_args["hostkey_verify"]):
        session.load_known_hosts()
    try:
        session.connect(**connect_args)
    except Exception:
        if session.transport:
            session.close()
        raise
    return manager.Manager(session, device_handler, **connect_args)
Exemple #2
0
 def test_manager_locked(self, mock_lock):
     conn = manager.Manager(None, None, timeout=20)
     conn.locked(None)
     mock_lock.assert_called_once_with(None, None, None)