Package twisted :: Package conch :: Package ssh :: Module factory :: Class SSHFactory
[frames | no frames]

Class SSHFactory

Factory --+
          |
         SSHFactory

Known Subclasses:
OpenSSHFactory

Method Summary
  buildProtocol(self, addr)
Create an instance of a subclass of Protocol.
tuple getDHPrime(self, bits)
Return a tuple of (g, p) for a Diffe-Hellman process, with p being as close to bits bits as possible.
dict getPrimes(self)
Called when the factory is started to get Diffie-Hellman generators and primes to use.
dict getPrivateKeys(self)
Called when the factory is started to get the private portions of the servers host keys.
dict getPublicKeys(self)
Called when the factory is started to get the public portions of the servers host keys.
subclass of {service.SSHService} getService(self, transport, service)
Return a class to use as a service for the given transport.
  startFactory(self)
This will be called before I begin listening on a Port or Connector.
    Inherited from Factory
  doStart(self)
Make sure startFactory is called.
  doStop(self)
Make sure stopFactory is called.
  stopFactory(self)
This will be called before I stop listening on all Ports/Connectors.

Class Variable Summary
dict services = {'ssh-userauth': <Fake userauth.SSHUserAuthSe...
    Inherited from Factory
tuple __implements__ = (<class twisted.internet.interfaces.IPr...
str noisy = 'sure, why not'
int numPorts = 0                                                                     
NoneType protocol = None                                                                  

Method Details

buildProtocol(self, addr)

Create an instance of a subclass of Protocol.

The returned instance will handle input on an incoming server connection, and an attribute "factory" pointing to the creating factory.

Override this method to alter how Protocol instances get created.
Parameters:
addr - an object implementing twisted.internet.interfaces.IAddress
Overrides:
twisted.internet.protocol.Factory.buildProtocol (inherited documentation)

getDHPrime(self, bits)

Return a tuple of (g, p) for a Diffe-Hellman process, with p being as close to bits bits as possible.
Parameters:
bits
           (type=int)
Returns:
tuple

getPrimes(self)

Called when the factory is started to get Diffie-Hellman generators and primes to use. Returns a dictionary mapping number of bits to lists of tuple of (generator, prime).
Returns:
dict

getPrivateKeys(self)

Called when the factory is started to get the private portions of the servers host keys. Returns a dictionary mapping SSH key types to Crypto.PublicKey.pubkey.pubkey objects.
Returns:
dict

getPublicKeys(self)

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.
Returns:
dict

getService(self, transport, service)

Return a class to use as a service for the given transport.
Parameters:
transport
           (type=transport.SSHServerTransport)
service
           (type=stR)
Returns:
subclass of {service.SSHService}

startFactory(self)

This will be called before I begin listening on a Port or Connector.

It will only be called once, even if the factory is connected to multiple ports.

This can be used to perform 'unserialization' tasks that are best put off until things are actually running, such as connecting to a database, opening files, etcetera.
Overrides:
twisted.internet.protocol.Factory.startFactory (inherited documentation)

Class Variable Details

services

Type:
dict
Value:
{'ssh-connection': <class twisted.conch.ssh.connection.SSHConnection a\
t 0x87541bc>,
 'ssh-userauth': <Fake userauth.SSHUserAuthServer>}                    

Generated by Epydoc 2.0 on Sat May 15 20:07:54 2004 http://epydoc.sf.net