U vf @ sJ d Z ddlZddlmZ ddlmZ ddlmZ dd ZG dd d Z dS ) z, Utility functions for dealing with primes. N)util) byte_mask)SSHExceptionc C st t | d }|d d }td|d d }t|}|dkrXt|d ||dd }t |d}|| k r,qpq,|S )z returns a random # from 0 to N-1 r N)r bit_lengthpowosurandomr Zinflate_long)nbitsZ byte_countZ hbyte_maskxnum r @/opt/alt/python38/lib/python3.8/site-packages/paramiko/primes.py_roll_random s r c @ s0 e Zd ZdZdd Zdd Zdd Zdd Zd S )ModulusPackzx convenience object for holding the contents of the /etc/ssh/moduli file, on systems that have such a file. c C s i | _ g | _d S )N)pack discarded)selfr r r __init__: s zModulusPack.__init__c C s | \}}}}}}}t|}t|}t|}t|}t|}t|d}|dk sp|dk sp|d@ r|dk r|dk r| j|df d S |dkrd}t|} | |kr| |d kr| j|d |f d S | | jkrg | j| <