# 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