/usr/lib/python3/dist-packages/twisted/conch/ssh/__pycache__
Edit: /usr/lib/python3/dist-packages/twisted/conch/ssh/__pycache__/factory.cpython-310.pyc (4412B)
o
b @ s^ d Z ddlZddlmZ ddlmZmZmZmZ ddl m
Z
ddlmZ G dd de
j
ZdS ) z
A Factory for SSH servers.
See also L{twisted.conch.openssh_compat.factory} for OpenSSH compatibility.
Maintainer: Paul Swartz
N)error)_kex
connection transportuserauth)protocol)Loggerc @ sb e Zd ZdZe ZejZe j
ejdZ
dd Zdd Zdd Zd d
Zdd Zd
d Zdd ZdS )
SSHFactoryz$
A Factory for SSH servers.
) ssh-userauths ssh-connectionc C sZ t | ds
| | _t | ds| | _| jr| jstdt | ds+| | _dS dS )z4
Check for public and private keys.
publicKeysprivateKeyszno host keys, failingprimesN) hasattr
getPublicKeysr getPrivateKeysr r
ConchError getPrimesr
self r ;/usr/lib/python3/dist-packages/twisted/conch/ssh/factory.pystartFactory" s
zSSHFactory.startFactoryc C sB t j| |}| j |_| js| jd dd |j D |_ |S )a=
Create an instance of the server side of the SSH protocol.
@type addr: L{twisted.internet.interfaces.IAddress} provider
@param addr: The address at which the server will listen.
@rtype: L{twisted.conch.ssh.transport.SSHServerTransport}
@return: The built transport.
zTdisabling non-fixed-group key exchange algorithms because we cannot find moduli filec S s$ g | ]}t |st |r|qS r )r isFixedGroupisEllipticCurve).0kexAlgorithmr r r
@ s z,SSHFactory.buildProtocol..)
r Factory
buildProtocolr keyssupportedPublicKeysr
_loginfosupportedKeyExchanges)r addrtr r r r / s
zSSHFactory.buildProtocolc C t d)z
Called when the factory is started to get the public portions of the
servers host keys. Returns a dictionary mapping SSH key types to
public key strings.
@rtype: L{dict}
zgetPublicKeys unimplementedNotImplementedErrorr r r r r G zSSHFactory.getPublicKeysc C r&