Logo Search packages:      
Sourcecode: paramiko version File versions  Download package

def paramiko::transport::Transport::load_server_moduli (   filename = None  ) 

I{(optional)}
Load a file of prime moduli for use in doing group-exchange key
negotiation in server mode.  It's a rather obscure option and can be
safely ignored.

In server mode, the remote client may request "group-exchange" key
negotiation, which asks the server to send a random prime number that
fits certain criteria.  These primes are pretty difficult to compute,
so they can't be generated on demand.  But many systems contain a file
of suitable primes (usually named something like C{/etc/ssh/moduli}).
If you call C{load_server_moduli} and it returns C{True}, then this
file of primes has been loaded and we will support "group-exchange" in
server mode.  Otherwise server mode will just claim that it doesn't
support that method of key negotiation.

@param filename: optional path to the moduli file, if you happen to
    know that it's not in a standard location.
@type filename: str
@return: True if a moduli file was successfully loaded; False
    otherwise.
@rtype: bool

@since: doduo

@note: This has no effect when used in client mode.

Definition at line 476 of file transport.py.

00476                                          :
        """
        I{(optional)}
        Load a file of prime moduli for use in doing group-exchange key
        negotiation in server mode.  It's a rather obscure option and can be
        safely ignored.

        In server mode, the remote client may request "group-exchange" key
        negotiation, which asks the server to send a random prime number that
        fits certain criteria.  These primes are pretty difficult to compute,
        so they can't be generated on demand.  But many systems contain a file
        of suitable primes (usually named something like C{/etc/ssh/moduli}).
        If you call C{load_server_moduli} and it returns C{True}, then this
        file of primes has been loaded and we will support "group-exchange" in
        server mode.  Otherwise server mode will just claim that it doesn't
        support that method of key negotiation.

        @param filename: optional path to the moduli file, if you happen to
            know that it's not in a standard location.
        @type filename: str
        @return: True if a moduli file was successfully loaded; False
            otherwise.
        @rtype: bool

        @since: doduo
        
        @note: This has no effect when used in client mode.
        """
        Transport._modulus_pack = ModulusPack(randpool)
        # places to look for the openssh "moduli" file
        file_list = [ '/etc/ssh/moduli', '/usr/local/etc/moduli' ]
        if filename is not None:
            file_list.insert(0, filename)
        for fn in file_list:
            try:
                Transport._modulus_pack.read_file(fn)
                return True
            except IOError:
                pass
        # none succeeded
        Transport._modulus_pack = None
        return False
    load_server_moduli = staticmethod(load_server_moduli)


Generated by  Doxygen 1.6.0   Back to index