aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/python/Twisted/py2/twisted/conch/client/connect.py
blob: ac47187e49bbf7f9a3731176aa0cd50fe54787a2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.

#
from twisted.conch.client import direct

connectTypes = {"direct" : direct.connect}

def connect(host, port, options, verifyHostKey, userAuthObject):
    useConnects = ['direct']
    return _ebConnect(None, useConnects, host, port, options, verifyHostKey,
                      userAuthObject)

def _ebConnect(f, useConnects, host, port, options, vhk, uao):
    if not useConnects:
        return f
    connectType = useConnects.pop(0)
    f = connectTypes[connectType]
    d = f(host, port, options, vhk, uao)
    d.addErrback(_ebConnect, useConnects, host, port, options, vhk, uao)
    return d