paramiko API Reference

Full documentation for paramiko (5.0.0)

paramiko.AUTH_FAILED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.AUTH_PARTIALLY_SUCCESSFUL
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.AUTH_SUCCESSFUL
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.Agent
Python Library Documentation: class Agent in module paramiko.agent

class Agent(AgentSSH)
 |  Client interface for using private keys from an SSH agent running on the
 |  local machine.  If an SSH agent is running, this class can be used to
 |  connect to it and retrieve `.PKey` objects which can be used when
 |  attempting to authenticate to remote SSH servers.
 |
 |  Upon initialization, a session with the local machine's SSH agent is
 |  opened, if one is running. If no agent is running, initialization will
 |  succeed, but `get_keys` will return an empty tuple.
 |
 |  :raises: `.SSHException` --
 |      if an SSH agent is found, but speaks an incompatible protocol
 |
 |  .. versionchanged:: 2.10
 |      Added support for native openssh agent on windows (extending previous
 |      putty pageant support)
 |
 |  Method resolution order:
 |      Agent
 |      AgentSSH
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  close(self)
 |      Close the SSH agent connection.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from AgentSSH:
 |
 |  get_keys(self)
 |      Return the list of keys available through the SSH agent, if any.  If
 |      no SSH agent was running (or it couldn't be contacted), an empty list
 |      will be returned.
 |
 |      This method performs no IO, just returns the list of keys retrieved
 |      when the connection was made.
 |
 |      :return:
 |          a tuple of `.AgentKey` objects representing keys available on the
 |          SSH agent
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AgentSSH:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.AgentKey
Python Library Documentation: class AgentKey in module paramiko.agent

class AgentKey(paramiko.pkey.PKey)
 |  AgentKey(agent: paramiko.agent.Agent, blob: bytes, comment: str = '')
 |
 |  Private key held in a local SSH agent.  This type of key can be used for
 |  authenticating to a remote server (signing).  Most other key operations
 |  work as expected.
 |
 |  .. versionchanged:: 3.2
 |      Added the ``comment`` kwarg and attribute.
 |
 |  .. versionchanged:: 3.2
 |      Added the ``.inner_key`` attribute holding a reference to the 'real'
 |      key instance this key is a proxy for, if one was obtainable, else None.
 |
 |  Method resolution order:
 |      AgentKey
 |      paramiko.pkey.PKey
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __getattr__(self, name)
 |      Proxy any un-implemented methods/properties to the inner_key.
 |
 |  __init__(self, agent: paramiko.agent.Agent, blob: bytes, comment: str = '')
 |      Create a new instance of this public key type.  If ``msg`` is given,
 |      the key's public part(s) will be filled in from the message.  If
 |      ``data`` is given, the key's public part(s) will be filled in from
 |      the string.
 |
 |      :param .Message msg:
 |          an optional SSH `.Message` containing a public key of this type.
 |      :param bytes data:
 |          optional, the bytes of a public key of this type
 |
 |      :raises: `.SSHException` --
 |          if a key cannot be created from the ``data`` or ``msg`` given, or
 |          no key was passed in.
 |
 |  asbytes(self)
 |      Return a string of an SSH `.Message` made up of the public part(s) of
 |      this key.  This string is suitable for passing to `__init__` to
 |      re-create the key object later.
 |
 |  get_bits(self)
 |      Return the number of significant bits in this key.  This is useful
 |      for judging the relative security of a key.
 |
 |      :return: bits in the key (as an `int`)
 |
 |  get_name(self)
 |      Return the name of this private key implementation.
 |
 |      :return:
 |          name of this private key type, in SSH terminology, as a `str` (for
 |          example, ``"ssh-rsa"``).
 |
 |  log(self, *args, **kwargs)
 |
 |  sign_ssh_data(self, data, algorithm=None)
 |      Sign a blob of data with this private key, and return a `.Message`
 |      representing an SSH signature message.
 |
 |      :param bytes data:
 |          the data to sign.
 |      :param str algorithm:
 |          the signature algorithm to use, if different from the key's
 |          internal name. Default: ``None``.
 |      :return: an SSH signature `message <.Message>`.
 |
 |      .. versionchanged:: 2.9
 |          Added the ``algorithm`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  _fields
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.pkey.PKey:
 |
 |  __bytes__(self)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __hash__(self)
 |      Return hash(self).
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  _check_type_and_load_cert(self, msg, key_type, cert_type)
 |      Perform message type-checking & optional certificate loading.
 |
 |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
 |      that the subsequent fields are the key numbers; thus the caller may
 |      expect to treat the message as key material afterwards either way.
 |
 |      The obtained key type is returned for classes which need to know what
 |      it was (e.g. ECDSA.)
 |
 |  _got_bad_key_format_id(self, id_)
 |
 |  _read_private_key(self, tag, f, password=None)
 |
 |  _read_private_key_file(self, tag, filename, password=None)
 |      Read an SSH2-format private key file, looking for a string of the type
 |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
 |      find, and return it as a string.  If the private key is encrypted and
 |      ``password`` is not ``None``, the given password will be used to
 |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
 |
 |      :param str tag:
 |          ``"RSA"`` (or etc), the tag used to mark the data block.
 |      :param str filename:
 |          name of the file to read.
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted.
 |      :return:
 |          the `bytes` that make up the private key.
 |
 |      :raises: ``IOError`` -- if there was an error reading the file.
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``.
 |      :raises: `.SSHException` -- if the key file is invalid.
 |
 |  _read_private_key_openssh(self, lines, password)
 |      Read the new OpenSSH SSH2 private key format available
 |      since OpenSSH version 6.5
 |      Reference:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
 |
 |  _read_private_key_pem(self, lines, end, password)
 |
 |  _uint32_cstruct_unpack(self, data, strformat)
 |      Used to read new OpenSSH private key format.
 |      Unpacks a c data structure containing a mix of 32-bit uints and
 |      variable length strings prefixed by 32-bit uint size field,
 |      according to the specified format. Returns the unpacked vars
 |      in a tuple.
 |      Format strings:
 |        s - denotes a string
 |        i - denotes a long integer, encoded as a byte string
 |        u - denotes a 32-bit unsigned integer
 |        r - the remainder of the input string, returned as a string
 |
 |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  can_sign(self)
 |      Return ``True`` if this key has the private part necessary for signing
 |      data.
 |
 |  get_base64(self)
 |      Return a base64 string containing the public part of this key.  Nothing
 |      secret is revealed.  This format is compatible with that used to store
 |      public key files or recognized host keys.
 |
 |      :return: a base64 `string <str>` containing the public part of the key.
 |
 |  get_fingerprint(self)
 |      Return an MD5 fingerprint of the public part of this key.  Nothing
 |      secret is revealed.
 |
 |      :return:
 |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
 |          format.
 |
 |  load_certificate(self, value)
 |      Supplement the private key contents with data loaded from an OpenSSH
 |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
 |      containing such a file, or a `.Message` object.
 |
 |      The .pub contents adds no real value, since the private key
 |      file includes sufficient information to derive the public
 |      key info. For certificates, however, this can be used on
 |      the client side to offer authentication requests to the server
 |      based on certificate instead of raw public key.
 |
 |      See:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
 |
 |      Note: very little effort is made to validate the certificate contents,
 |      that is for the server to decide if it is good enough to authenticate
 |      successfully.
 |
 |  verify_ssh_sig(self, data, msg)
 |      Given a blob of data, and an SSH message representing a signature of
 |      that data, verify that it was signed with this key.
 |
 |      :param bytes data: the data that was signed.
 |      :param .Message msg: an SSH signature message
 |      :return:
 |          ``True`` if the signature verifies correctly; ``False`` otherwise.
 |
 |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file (or file-like) object.  If the
 |      password is not ``None``, the key is encrypted before writing.
 |
 |      :param file_obj: the file-like object to write into
 |      :param str password: an optional password to use to encrypt the key
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing to the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file.  If the password is not
 |      ``None``, the key is encrypted before writing.
 |
 |      :param str filename: name of the file to write
 |      :param str password:
 |          an optional password to use to encrypt the key file
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from paramiko.pkey.PKey:
 |
 |  from_private_key(file_obj, password=None)
 |      Create a key object by reading a private key from a file (or file-like)
 |      object.  If the private key is encrypted and ``password`` is not
 |      ``None``, the given password will be used to decrypt the key (otherwise
 |      `.PasswordRequiredException` is thrown).
 |
 |      :param file_obj: the file-like object to read from
 |      :param str password:
 |          an optional password to use to decrypt the key, if it's encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the key
 |      :raises: `.PasswordRequiredException` --
 |          if the private key file is encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  from_private_key_file(filename, password=None)
 |      Create a key object by reading a private key file.  If the private
 |      key is encrypted and ``password`` is not ``None``, the given password
 |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
 |      is thrown).  Through the magic of Python, this factory method will
 |      exist in all subclasses of PKey (such as `.RSAKey`), but
 |      is useless on the abstract PKey class.
 |
 |      :param str filename: name of the file to read
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  identifiers()
 |      returns an iterable of key format/name strings this class can handle.
 |
 |      Most classes only have a single identifier, and thus this default
 |      implementation suffices; see `.ECDSAKey` for one example of an
 |      override.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from paramiko.pkey.PKey:
 |
 |  from_path(path, password: Optional[str] = None)
 |      Attempt to instantiate appropriate key subclass from given file path.
 |
 |      :param pathlib.Path path: The path to load (may also be a `str`).
 |      :param str password: Optional decryption password.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Renamed ``passphrase`` argument to ``password`` for consistency
 |          with older methods.
 |
 |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
 |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
 |
 |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
 |      will (if successful) return a new `.Ed25519Key`.
 |
 |      :param str key_type:
 |          The key type, eg ``"ssh-ed25519"``.
 |      :param bytes key_bytes:
 |          The raw byte data forming the key material, as expected by
 |          subclasses' ``data`` parameter.
 |      :param str password:
 |          Optional password used to decrypt ``key_bytes``.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if no registered classes knew about this type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Added the ``password`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.pkey.PKey:
 |
 |  algorithm_name
 |      Return the key algorithm identifier for this key.
 |
 |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
 |      protocol field value.
 |
 |  fingerprint
 |      Modern fingerprint property designed to be comparable to OpenSSH.
 |
 |      Currently only does SHA256 (the OpenSSH default).
 |
 |      .. versionadded:: 3.2
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.pkey.PKey:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.pkey.PKey:
 |
 |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
 |
 |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
 |
 |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
 |
 |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
 |
 |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1
paramiko.AuthFailure
Python Library Documentation: class AuthFailure in module paramiko.auth_strategy

class AuthFailure(paramiko.ssh_exception.AuthenticationException)
 |  AuthFailure(result)
 |
 |  Basic exception wrapping an `AuthResult` indicating overall auth failure.
 |
 |  Note that `AuthFailure` descends from `AuthenticationException` but is
 |  generally "higher level"; the latter is now only raised by individual
 |  `AuthSource` attempts and should typically only be seen by users when
 |  encapsulated in this class. It subclasses `AuthenticationException`
 |  primarily for backwards compatibility reasons.
 |
 |  Method resolution order:
 |      AuthFailure
 |      paramiko.ssh_exception.AuthenticationException
 |      paramiko.ssh_exception.SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, result)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.ssh_exception.SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.AuthHandler
Python Library Documentation: class AuthHandler in module paramiko.auth_handler

class AuthHandler(builtins.object)
 |  AuthHandler(transport)
 |
 |  Internal class to handle the mechanics of authentication.
 |
 |  Methods defined here:
 |
 |  __init__(self, transport)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  abort(self)
 |
 |  auth_interactive(self, username, handler, event, submethods='')
 |      response_list = handler(title, instructions, prompt_list)
 |
 |  auth_none(self, username, event)
 |
 |  auth_password(self, username, password, event)
 |
 |  auth_publickey(self, username, key, event)
 |
 |  get_username(self)
 |
 |  is_authenticated(self)
 |
 |  wait_for_response(self, event)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.AuthResult
Python Library Documentation: class AuthResult in module paramiko.auth_strategy

class AuthResult(builtins.list)
 |  AuthResult(strategy, *args, **kwargs)
 |
 |  Represents a partial or complete SSH authentication attempt.
 |
 |  This class conceptually extends `AuthStrategy` by pairing the former's
 |  authentication **sources** with the **results** of trying to authenticate
 |  with them.
 |
 |  `AuthResult` is a (subclass of) `list` of `namedtuple`, which are of the
 |  form ``namedtuple('SourceResult', 'source', 'result')`` (where the
 |  ``source`` member is an `AuthSource` and the ``result`` member is either a
 |  return value from the relevant `.Transport` method, or an exception
 |  object).
 |
 |  .. note::
 |      Transport auth method results are always themselves a ``list`` of "next
 |      allowable authentication methods".
 |
 |      In the simple case of "you just authenticated successfully", it's an
 |      empty list; if your auth was rejected but you're allowed to try again,
 |      it will be a list of string method names like ``pubkey`` or
 |      ``password``.
 |
 |      The ``__str__`` of this class represents the empty-list scenario as the
 |      word ``success``, which should make reading the result of an
 |      authentication session more obvious to humans.
 |
 |  Instances also have a `strategy` attribute referencing the `AuthStrategy`
 |  which was attempted.
 |
 |  Method resolution order:
 |      AuthResult
 |      builtins.list
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, strategy, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.list:
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __contains__(self, key, /)
 |      Return bool(key in self).
 |
 |  __delitem__(self, key, /)
 |      Delete self[key].
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getitem__(self, index, /)
 |      Return self[index].
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __iadd__(self, value, /)
 |      Implement self+=value.
 |
 |  __imul__(self, value, /)
 |      Implement self*=value.
 |
 |  __iter__(self, /)
 |      Implement iter(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __len__(self, /)
 |      Return len(self).
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __reversed__(self, /)
 |      Return a reverse iterator over the list.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __setitem__(self, key, value, /)
 |      Set self[key] to value.
 |
 |  __sizeof__(self, /)
 |      Return the size of the list in memory, in bytes.
 |
 |  append(self, object, /)
 |      Append object to the end of the list.
 |
 |  clear(self, /)
 |      Remove all items from list.
 |
 |  copy(self, /)
 |      Return a shallow copy of the list.
 |
 |  count(self, value, /)
 |      Return number of occurrences of value.
 |
 |  extend(self, iterable, /)
 |      Extend list by appending elements from the iterable.
 |
 |  index(self, value, start=0, stop=9223372036854775807, /)
 |      Return first index of value.
 |
 |      Raises ValueError if the value is not present.
 |
 |  insert(self, index, object, /)
 |      Insert object before index.
 |
 |  pop(self, index=-1, /)
 |      Remove and return item at index (default last).
 |
 |      Raises IndexError if list is empty or index is out of range.
 |
 |  remove(self, value, /)
 |      Remove first occurrence of value.
 |
 |      Raises ValueError if the value is not present.
 |
 |  reverse(self, /)
 |      Reverse *IN PLACE*.
 |
 |  sort(self, /, *, key=None, reverse=False)
 |      Sort the list in ascending order and return None.
 |
 |      The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
 |      order of two equal elements is maintained).
 |
 |      If a key function is given, apply it once to each list item and sort them,
 |      ascending or descending, according to their function values.
 |
 |      The reverse flag can be set to sort in descending order.
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from builtins.list:
 |
 |  __class_getitem__(...)
 |      See PEP 585
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.list:
 |
 |  __new__(*args, **kwargs) class method of builtins.list
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from builtins.list:
 |
 |  __hash__ = None
paramiko.AuthSource
Python Library Documentation: class AuthSource in module paramiko.auth_strategy

class AuthSource(builtins.object)
 |  AuthSource(username)
 |
 |  Some SSH authentication source, such as a password, private key, or agent.
 |
 |  See subclasses in this module for concrete implementations.
 |
 |  All implementations must accept at least a ``username`` (``str``) kwarg.
 |
 |  Methods defined here:
 |
 |  __init__(self, username)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.AuthStrategy
Python Library Documentation: class AuthStrategy in module paramiko.auth_strategy

class AuthStrategy(builtins.object)
 |  AuthStrategy(ssh_config)
 |
 |  This class represents one or more attempts to auth with an SSH server.
 |
 |  By default, subclasses must at least accept an ``ssh_config``
 |  (`.SSHConfig`) keyword argument, but may opt to accept more as needed for
 |  their particular strategy.
 |
 |  Methods defined here:
 |
 |  __init__(self, ssh_config)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  authenticate(self, transport)
 |      Handles attempting `AuthSource` instances yielded from `get_sources`.
 |
 |      You *normally* won't need to override this, but it's an option for
 |      advanced users.
 |
 |  get_sources(self)
 |      Generator yielding `AuthSource` instances, in the order to try.
 |
 |      This is the primary override point for subclasses: you figure out what
 |      sources you need, and ``yield`` them.
 |
 |      Subclasses _of_ subclasses may find themselves wanting to do things
 |      like filtering or discarding around a call to `super`.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.AuthenticationException
Python Library Documentation: class AuthenticationException in module paramiko.ssh_exception

class AuthenticationException(SSHException)
 |  Exception raised when authentication failed for some reason.  It may be
 |  possible to retry with different credentials.  (Other classes specify more
 |  specific reasons.)
 |
 |  .. versionadded:: 1.6
 |
 |  Method resolution order:
 |      AuthenticationException
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.AutoAddPolicy
Python Library Documentation: class AutoAddPolicy in module paramiko.client

class AutoAddPolicy(MissingHostKeyPolicy)
 |  Policy for automatically adding the hostname and new host key to the
 |  local `.HostKeys` object, and saving it.  This is used by `.SSHClient`.
 |
 |  Method resolution order:
 |      AutoAddPolicy
 |      MissingHostKeyPolicy
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  missing_host_key(self, client, hostname, key)
 |      Called when an `.SSHClient` receives a server key for a server that
 |      isn't in either the system or local `.HostKeys` object.  To accept
 |      the key, simply return.  To reject, raised an exception (which will
 |      be passed to the calling application).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from MissingHostKeyPolicy:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.BadAuthenticationType
Python Library Documentation: class BadAuthenticationType in module paramiko.ssh_exception

class BadAuthenticationType(AuthenticationException)
 |  BadAuthenticationType(explanation, types)
 |
 |  Exception raised when an authentication type (like password) is used, but
 |  the server isn't allowing that type.  (It may only allow public-key, for
 |  example.)
 |
 |  .. versionadded:: 1.1
 |
 |  Method resolution order:
 |      BadAuthenticationType
 |      AuthenticationException
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, explanation, types)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  allowed_types = []
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.BadHostKeyException
Python Library Documentation: class BadHostKeyException in module paramiko.ssh_exception

class BadHostKeyException(SSHException)
 |  BadHostKeyException(hostname, got_key, expected_key)
 |
 |  The host key given by the SSH server did not match what we were expecting.
 |
 |  :param str hostname: the hostname of the SSH server
 |  :param PKey got_key: the host key presented by the server
 |  :param PKey expected_key: the host key expected
 |
 |  .. versionadded:: 1.6
 |
 |  Method resolution order:
 |      BadHostKeyException
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, hostname, got_key, expected_key)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.BaseSFTP
Python Library Documentation: class BaseSFTP in module paramiko.sftp

class BaseSFTP(builtins.object)
 |  Methods defined here:
 |
 |  __init__(self)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.BufferedFile
Python Library Documentation: class BufferedFile in module paramiko.file

class BufferedFile(paramiko.util.ClosingContextManager)
 |  Reusable base class to implement Python-style file buffering around a
 |  simpler stream.
 |
 |  Method resolution order:
 |      BufferedFile
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __del__(self)
 |
 |  __init__(self)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __iter__(self)
 |      Returns an iterator that can be used to iterate over the lines in this
 |      file.  This iterator happens to return the file itself, since a file is
 |      its own iterator.
 |
 |      :raises: ``ValueError`` -- if the file is closed.
 |
 |  __next__(self)
 |      Returns the next line from the input, or raises ``StopIteration``
 |      when EOF is hit.  Unlike python file objects, it's okay to mix
 |      calls to `.next` and `.readline`.
 |
 |      :raises: ``StopIteration`` -- when the end of the file is reached.
 |
 |      :returns:
 |          a line (`str`, or `bytes` if the file was opened in binary mode)
 |          read from the file.
 |
 |  close(self)
 |      Close the file.  Future read and write operations will fail.
 |
 |  flush(self)
 |      Write out any data in the write buffer.  This may do nothing if write
 |      buffering is not turned on.
 |
 |  read(self, size=None)
 |      Read at most ``size`` bytes from the file (less if we hit the end of
 |      the file first).  If the ``size`` argument is negative or omitted,
 |      read all the remaining data in the file.
 |
 |      .. note::
 |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
 |          ``self._flags``), because SSH treats all files as binary, since we
 |          have no idea what encoding the file is in, or even if the file is
 |          text data.
 |
 |      :param int size: maximum number of bytes to read
 |      :returns:
 |          data read from the file (as bytes), or an empty string if EOF was
 |          encountered immediately
 |
 |  readable(self)
 |      Check if the file can be read from.
 |
 |      :returns:
 |          `True` if the file can be read from. If `False`, `read` will raise
 |          an exception.
 |
 |  readinto(self, buff)
 |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
 |      number of bytes read.
 |
 |      :returns:
 |          The number of bytes read.
 |
 |  readline(self, size=None)
 |      Read one entire line from the file.  A trailing newline character is
 |      kept in the string (but may be absent when a file ends with an
 |      incomplete line).  If the size argument is present and non-negative, it
 |      is a maximum byte count (including the trailing newline) and an
 |      incomplete line may be returned.  An empty string is returned only when
 |      EOF is encountered immediately.
 |
 |      .. note::
 |          Unlike stdio's ``fgets``, the returned string contains null
 |          characters (``'\0'``) if they occurred in the input.
 |
 |      :param int size: maximum length of returned string.
 |      :returns:
 |          next line of the file, or an empty string if the end of the
 |          file has been reached.
 |
 |          If the file was opened in binary (``'b'``) mode: bytes are returned
 |          Else: the encoding of the file is assumed to be UTF-8 and character
 |          strings (`str`) are returned
 |
 |  readlines(self, sizehint=None)
 |      Read all remaining lines using `readline` and return them as a list.
 |      If the optional ``sizehint`` argument is present, instead of reading up
 |      to EOF, whole lines totalling approximately sizehint bytes (possibly
 |      after rounding up to an internal buffer size) are read.
 |
 |      :param int sizehint: desired maximum number of bytes to read.
 |      :returns: list of lines read from the file.
 |
 |  seek(self, offset, whence=0)
 |      Set the file's current position, like stdio's ``fseek``.  Not all file
 |      objects support seeking.
 |
 |      .. note::
 |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
 |          operations will be undone at the next write (as the file position
 |          will move back to the end of the file).
 |
 |      :param int offset:
 |          position to move to within the file, relative to ``whence``.
 |      :param int whence:
 |          type of movement: 0 = absolute; 1 = relative to the current
 |          position; 2 = relative to the end of the file.
 |
 |      :raises: ``IOError`` -- if the file doesn't support random access.
 |
 |  seekable(self)
 |      Check if the file supports random access.
 |
 |      :returns:
 |          `True` if the file supports random access. If `False`, `seek` will
 |          raise an exception.
 |
 |  tell(self)
 |      Return the file's current position.  This may not be accurate or
 |      useful if the underlying file doesn't support random access, or was
 |      opened in append mode.
 |
 |      :returns: file position (`number <int>` of bytes).
 |
 |  writable(self)
 |      Check if the file can be written to.
 |
 |      :returns:
 |          `True` if the file can be written to. If `False`, `write` will
 |          raise an exception.
 |
 |  write(self, data)
 |      Write data to the file.  If write buffering is on (``bufsize`` was
 |      specified and non-zero), some or all of the data may not actually be
 |      written yet.  (Use `flush` or `close` to force buffered data to be
 |      written out.)
 |
 |      :param data: ``str``/``bytes`` data to write
 |
 |  writelines(self, sequence)
 |      Write a sequence of strings to the file.  The sequence can be any
 |      iterable object producing strings, typically a list of strings.  (The
 |      name is intended to match `readlines`; `writelines` does not add line
 |      separators.)
 |
 |      :param sequence: an iterable sequence of strings.
 |
 |  xreadlines(self)
 |      Identical to ``iter(f)``.  This is a deprecated file interface that
 |      predates Python iterator support.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  FLAG_APPEND = 4
 |
 |  FLAG_BINARY = 16
 |
 |  FLAG_BUFFERED = 32
 |
 |  FLAG_LINE_BUFFERED = 64
 |
 |  FLAG_READ = 1
 |
 |  FLAG_UNIVERSAL_NEWLINE = 128
 |
 |  FLAG_WRITE = 2
 |
 |  SEEK_CUR = 1
 |
 |  SEEK_END = 2
 |
 |  SEEK_SET = 0
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.Channel
Python Library Documentation: class Channel in module paramiko.channel

class Channel(paramiko.util.ClosingContextManager)
 |  Channel(chanid)
 |
 |  A secure tunnel across an SSH `.Transport`.  A Channel is meant to behave
 |  like a socket, and has an API that should be indistinguishable from the
 |  Python socket API.
 |
 |  Because SSH2 has a windowing kind of flow control, if you stop reading data
 |  from a Channel and its buffer fills up, the server will be unable to send
 |  you any more data until you read some of it.  (This won't affect other
 |  channels on the same transport -- all channels on a single transport are
 |  flow-controlled independently.)  Similarly, if the server isn't reading
 |  data you send, calls to `send` may block, unless you set a timeout.  This
 |  is exactly like a normal network socket, so it shouldn't be too surprising.
 |
 |  Instances of this class may be used as context managers.
 |
 |  Method resolution order:
 |      Channel
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __del__(self)
 |
 |  __init__(self, chanid)
 |      Create a new channel.  The channel is not associated with any
 |      particular session or `.Transport` until the Transport attaches it.
 |      Normally you would only call this method from the constructor of a
 |      subclass of `.Channel`.
 |
 |      :param int chanid:
 |          the ID of this channel, as passed by an existing `.Transport`.
 |
 |  __repr__(self)
 |      Return a string representation of this object, for debugging.
 |
 |  close(self)
 |      Close the channel.  All future read/write operations on the channel
 |      will fail.  The remote end will receive no more data (after queued data
 |      is flushed).  Channels are automatically closed when their `.Transport`
 |      is closed or when they are garbage collected.
 |
 |  exec_command(self, command)
 |      Execute a command on the server.  If the server allows it, the channel
 |      will then be directly connected to the stdin, stdout, and stderr of
 |      the command being executed.
 |
 |      When the command finishes executing, the channel will be closed and
 |      can't be reused.  You must open a new channel if you wish to execute
 |      another command.
 |
 |      :param str command: a shell command to execute.
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  exit_status_ready(self)
 |      Return true if the remote process has exited and returned an exit
 |      status. You may use this to poll the process status if you don't
 |      want to block in `recv_exit_status`. Note that the server may not
 |      return an exit status in some cases (like bad servers).
 |
 |      :return:
 |          ``True`` if `recv_exit_status` will return immediately, else
 |          ``False``.
 |
 |      .. versionadded:: 1.7.3
 |
 |  fileno(self)
 |      Returns an OS-level file descriptor which can be used for polling, but
 |      but not for reading or writing.  This is primarily to allow Python's
 |      ``select`` module to work.
 |
 |      The first time ``fileno`` is called on a channel, a pipe is created to
 |      simulate real OS-level file descriptor (FD) behavior.  Because of this,
 |      two OS-level FDs are created, which will use up FDs faster than normal.
 |      (You won't notice this effect unless you have hundreds of channels
 |      open at the same time.)
 |
 |      :return: an OS-level file descriptor (`int`)
 |
 |      .. warning::
 |          This method causes channel reads to be slightly less efficient.
 |
 |  get_id(self)
 |      Return the `int` ID # for this channel.
 |
 |      The channel ID is unique across a `.Transport` and usually a small
 |      number.  It's also the number passed to
 |      `.ServerInterface.check_channel_request` when determining whether to
 |      accept a channel request in server mode.
 |
 |  get_name(self)
 |      Get the name of this channel that was previously set by `set_name`.
 |
 |  get_pty(self, term='vt100', width=80, height=24, width_pixels=0, height_pixels=0)
 |      Request a pseudo-terminal from the server.  This is usually used right
 |      after creating a client channel, to ask the server to provide some
 |      basic terminal semantics for a shell invoked with `invoke_shell`.
 |      It isn't necessary (or desirable) to call this method if you're going
 |      to execute a single command with `exec_command`.
 |
 |      :param str term: the terminal type to emulate
 |          (for example, ``'vt100'``)
 |      :param int width: width (in characters) of the terminal screen
 |      :param int height: height (in characters) of the terminal screen
 |      :param int width_pixels: width (in pixels) of the terminal screen
 |      :param int height_pixels: height (in pixels) of the terminal screen
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  get_transport(self)
 |      Return the `.Transport` associated with this channel.
 |
 |  getpeername(self)
 |      Return the address of the remote side of this Channel, if possible.
 |
 |      This simply wraps `.Transport.getpeername`, used to provide enough of a
 |      socket-like interface to allow asyncore to work. (asyncore likes to
 |      call ``'getpeername'``.)
 |
 |  gettimeout(self)
 |      Returns the timeout in seconds (as a float) associated with socket
 |      operations, or ``None`` if no timeout is set.  This reflects the last
 |      call to `setblocking` or `settimeout`.
 |
 |  invoke_shell(self)
 |      Request an interactive shell session on this channel.  If the server
 |      allows it, the channel will then be directly connected to the stdin,
 |      stdout, and stderr of the shell.
 |
 |      Normally you would call `get_pty` before this, in which case the
 |      shell will operate through the pty, and the channel will be connected
 |      to the stdin and stdout of the pty.
 |
 |      When the shell exits, the channel will be closed and can't be reused.
 |      You must open a new channel if you wish to open another shell.
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  invoke_subsystem(self, subsystem)
 |      Request a subsystem on the server (for example, ``sftp``).  If the
 |      server allows it, the channel will then be directly connected to the
 |      requested subsystem.
 |
 |      When the subsystem finishes, the channel will be closed and can't be
 |      reused.
 |
 |      :param str subsystem: name of the subsystem being requested.
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  makefile(self, *params)
 |      Return a file-like object associated with this channel.  The optional
 |      ``mode`` and ``bufsize`` arguments are interpreted the same way as by
 |      the built-in ``file()`` function in Python.
 |
 |      :return: `.ChannelFile` object which can be used for Python file I/O.
 |
 |  makefile_stderr(self, *params)
 |      Return a file-like object associated with this channel's stderr
 |      stream.   Only channels using `exec_command` or `invoke_shell`
 |      without a pty will ever have data on the stderr stream.
 |
 |      The optional ``mode`` and ``bufsize`` arguments are interpreted the
 |      same way as by the built-in ``file()`` function in Python.  For a
 |      client, it only makes sense to open this file for reading.  For a
 |      server, it only makes sense to open this file for writing.
 |
 |      :returns:
 |          `.ChannelStderrFile` object which can be used for Python file I/O.
 |
 |      .. versionadded:: 1.1
 |
 |  makefile_stdin(self, *params)
 |      Return a file-like object associated with this channel's stdin
 |      stream.
 |
 |      The optional ``mode`` and ``bufsize`` arguments are interpreted the
 |      same way as by the built-in ``file()`` function in Python.  For a
 |      client, it only makes sense to open this file for writing.  For a
 |      server, it only makes sense to open this file for reading.
 |
 |      :returns:
 |          `.ChannelStdinFile` object which can be used for Python file I/O.
 |
 |      .. versionadded:: 2.6
 |
 |  recv(self, nbytes)
 |      Receive data from the channel.  The return value is a string
 |      representing the data received.  The maximum amount of data to be
 |      received at once is specified by ``nbytes``.  If a string of
 |      length zero is returned, the channel stream has closed.
 |
 |      :param int nbytes: maximum number of bytes to read.
 |      :return: received data, as a `bytes`.
 |
 |      :raises socket.timeout:
 |          if no data is ready before the timeout set by `settimeout`.
 |
 |  recv_exit_status(self)
 |      Return the exit status from the process on the server.  This is
 |      mostly useful for retrieving the results of an `exec_command`.
 |      If the command hasn't finished yet, this method will wait until
 |      it does, or until the channel is closed.  If no exit status is
 |      provided by the server, -1 is returned.
 |
 |      .. warning::
 |          In some situations, receiving remote output larger than the current
 |          `.Transport` or session's ``window_size`` (e.g. that set by the
 |          ``default_window_size`` kwarg for `.Transport.__init__`) will cause
 |          `.recv_exit_status` to hang indefinitely if it is called prior to a
 |          sufficiently large `.Channel.recv` (or if there are no threads
 |          calling `.Channel.recv` in the background).
 |
 |          In these cases, ensuring that `.recv_exit_status` is called *after*
 |          `.Channel.recv` (or, again, using threads) can avoid the hang.
 |
 |      :return: the exit code (as an `int`) of the process on the server.
 |
 |      .. versionadded:: 1.2
 |
 |  recv_ready(self)
 |      Returns true if data is buffered and ready to be read from this
 |      channel.  A ``False`` result does not mean that the channel has closed;
 |      it means you may need to wait before more data arrives.
 |
 |      :return:
 |          ``True`` if a `recv` call on this channel would immediately return
 |          at least one byte; ``False`` otherwise.
 |
 |  recv_stderr(self, nbytes)
 |      Receive data from the channel's stderr stream.  Only channels using
 |      `exec_command` or `invoke_shell` without a pty will ever have data
 |      on the stderr stream.  The return value is a string representing the
 |      data received.  The maximum amount of data to be received at once is
 |      specified by ``nbytes``.  If a string of length zero is returned, the
 |      channel stream has closed.
 |
 |      :param int nbytes: maximum number of bytes to read.
 |      :return: received data as a `bytes`
 |
 |      :raises socket.timeout: if no data is ready before the timeout set by
 |          `settimeout`.
 |
 |      .. versionadded:: 1.1
 |
 |  recv_stderr_ready(self)
 |      Returns true if data is buffered and ready to be read from this
 |      channel's stderr stream.  Only channels using `exec_command` or
 |      `invoke_shell` without a pty will ever have data on the stderr
 |      stream.
 |
 |      :return:
 |          ``True`` if a `recv_stderr` call on this channel would immediately
 |          return at least one byte; ``False`` otherwise.
 |
 |      .. versionadded:: 1.1
 |
 |  request_forward_agent(self, handler)
 |      Request for a forward SSH Agent on this channel.
 |      This is only valid for an ssh-agent from OpenSSH !!!
 |
 |      :param handler:
 |          a required callable handler to use for incoming SSH Agent
 |          connections
 |
 |      :return: True if we are ok, else False
 |          (at that time we always return ok)
 |
 |      :raises: SSHException in case of channel problem.
 |
 |  request_x11(self, screen_number=0, auth_protocol=None, auth_cookie=None, single_connection=False, handler=None)
 |      Request an x11 session on this channel.  If the server allows it,
 |      further x11 requests can be made from the server to the client,
 |      when an x11 application is run in a shell session.
 |
 |      From :rfc:`4254`::
 |
 |          It is RECOMMENDED that the 'x11 authentication cookie' that is
 |          sent be a fake, random cookie, and that the cookie be checked and
 |          replaced by the real cookie when a connection request is received.
 |
 |      If you omit the auth_cookie, a new secure random 128-bit value will be
 |      generated, used, and returned.  You will need to use this value to
 |      verify incoming x11 requests and replace them with the actual local
 |      x11 cookie (which requires some knowledge of the x11 protocol).
 |
 |      If a handler is passed in, the handler is called from another thread
 |      whenever a new x11 connection arrives.  The default handler queues up
 |      incoming x11 connections, which may be retrieved using
 |      `.Transport.accept`.  The handler's calling signature is::
 |
 |          handler(channel: Channel, (address: str, port: int))
 |
 |      :param int screen_number: the x11 screen number (0, 10, etc.)
 |      :param str auth_protocol:
 |          the name of the X11 authentication method used; if none is given,
 |          ``"MIT-MAGIC-COOKIE-1"`` is used
 |      :param str auth_cookie:
 |          hexadecimal string containing the x11 auth cookie; if none is
 |          given, a secure random 128-bit value is generated
 |      :param bool single_connection:
 |          if True, only a single x11 connection will be forwarded (by
 |          default, any number of x11 connections can arrive over this
 |          session)
 |      :param handler:
 |          an optional callable handler to use for incoming X11 connections
 |      :return: the auth_cookie used
 |
 |  resize_pty(self, width=80, height=24, width_pixels=0, height_pixels=0)
 |      Resize the pseudo-terminal.  This can be used to change the width and
 |      height of the terminal emulation created in a previous `get_pty` call.
 |
 |      :param int width: new width (in characters) of the terminal screen
 |      :param int height: new height (in characters) of the terminal screen
 |      :param int width_pixels: new width (in pixels) of the terminal screen
 |      :param int height_pixels: new height (in pixels) of the terminal screen
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  send(self, s)
 |      Send data to the channel.  Returns the number of bytes sent, or 0 if
 |      the channel stream is closed.  Applications are responsible for
 |      checking that all data has been sent: if only some of the data was
 |      transmitted, the application needs to attempt delivery of the remaining
 |      data.
 |
 |      :param bytes s: data to send
 |      :return: number of bytes actually sent, as an `int`
 |
 |      :raises socket.timeout: if no data could be sent before the timeout set
 |          by `settimeout`.
 |
 |  send_exit_status(self, status)
 |      Send the exit status of an executed command to the client.  (This
 |      really only makes sense in server mode.)  Many clients expect to
 |      get some sort of status code back from an executed command after
 |      it completes.
 |
 |      :param int status: the exit code of the process
 |
 |      .. versionadded:: 1.2
 |
 |  send_ready(self)
 |      Returns true if data can be written to this channel without blocking.
 |      This means the channel is either closed (so any write attempt would
 |      return immediately) or there is at least one byte of space in the
 |      outbound buffer. If there is at least one byte of space in the
 |      outbound buffer, a `send` call will succeed immediately and return
 |      the number of bytes actually written.
 |
 |      :return:
 |          ``True`` if a `send` call on this channel would immediately succeed
 |          or fail
 |
 |  send_stderr(self, s)
 |      Send data to the channel on the "stderr" stream.  This is normally
 |      only used by servers to send output from shell commands -- clients
 |      won't use this.  Returns the number of bytes sent, or 0 if the channel
 |      stream is closed.  Applications are responsible for checking that all
 |      data has been sent: if only some of the data was transmitted, the
 |      application needs to attempt delivery of the remaining data.
 |
 |      :param bytes s: data to send.
 |      :return: number of bytes actually sent, as an `int`.
 |
 |      :raises socket.timeout:
 |          if no data could be sent before the timeout set by `settimeout`.
 |
 |      .. versionadded:: 1.1
 |
 |  sendall(self, s)
 |      Send data to the channel, without allowing partial results.  Unlike
 |      `send`, this method continues to send data from the given string until
 |      either all data has been sent or an error occurs.  Nothing is returned.
 |
 |      :param bytes s: data to send.
 |
 |      :raises socket.timeout:
 |          if sending stalled for longer than the timeout set by `settimeout`.
 |      :raises socket.error:
 |          if an error occurred before the entire string was sent.
 |
 |      .. note::
 |          If the channel is closed while only part of the data has been
 |          sent, there is no way to determine how much data (if any) was sent.
 |          This is irritating, but identically follows Python's API.
 |
 |  sendall_stderr(self, s)
 |      Send data to the channel's "stderr" stream, without allowing partial
 |      results.  Unlike `send_stderr`, this method continues to send data
 |      from the given bytestring until all data has been sent or an error
 |      occurs. Nothing is returned.
 |
 |      :param bytes s: data to send to the client as "stderr" output.
 |
 |      :raises socket.timeout:
 |          if sending stalled for longer than the timeout set by `settimeout`.
 |      :raises socket.error:
 |          if an error occurred before the entire string was sent.
 |
 |      .. versionadded:: 1.1
 |
 |  set_combine_stderr(self, combine)
 |      Set whether stderr should be combined into stdout on this channel.
 |      The default is ``False``, but in some cases it may be convenient to
 |      have both streams combined.
 |
 |      If this is ``False``, and `exec_command` is called (or ``invoke_shell``
 |      with no pty), output to stderr will not show up through the `recv`
 |      and `recv_ready` calls.  You will have to use `recv_stderr` and
 |      `recv_stderr_ready` to get stderr output.
 |
 |      If this is ``True``, data will never show up via `recv_stderr` or
 |      `recv_stderr_ready`.
 |
 |      :param bool combine:
 |          ``True`` if stderr output should be combined into stdout on this
 |          channel.
 |      :return: the previous setting (a `bool`).
 |
 |      .. versionadded:: 1.1
 |
 |  set_environment_variable(self, name, value)
 |      Set the value of an environment variable.
 |
 |      .. warning::
 |          The server may reject this request depending on its ``AcceptEnv``
 |          setting; such rejections will fail silently (which is common client
 |          practice for this particular request type). Make sure you
 |          understand your server's configuration before using!
 |
 |      :param str name: name of the environment variable
 |      :param str value: value of the environment variable
 |
 |      :raises:
 |          `.SSHException` -- if the request was rejected or the channel was
 |          closed
 |
 |  set_name(self, name)
 |      Set a name for this channel.  Currently it's only used to set the name
 |      of the channel in logfile entries.  The name can be fetched with the
 |      `get_name` method.
 |
 |      :param str name: new channel name
 |
 |  setblocking(self, blocking)
 |      Set blocking or non-blocking mode of the channel: if ``blocking`` is 0,
 |      the channel is set to non-blocking mode; otherwise it's set to blocking
 |      mode. Initially all channels are in blocking mode.
 |
 |      In non-blocking mode, if a `recv` call doesn't find any data, or if a
 |      `send` call can't immediately dispose of the data, an error exception
 |      is raised. In blocking mode, the calls block until they can proceed. An
 |      EOF condition is considered "immediate data" for `recv`, so if the
 |      channel is closed in the read direction, it will never block.
 |
 |      ``chan.setblocking(0)`` is equivalent to ``chan.settimeout(0)``;
 |      ``chan.setblocking(1)`` is equivalent to ``chan.settimeout(None)``.
 |
 |      :param int blocking:
 |          0 to set non-blocking mode; non-0 to set blocking mode.
 |
 |  settimeout(self, timeout)
 |      Set a timeout on blocking read/write operations.  The ``timeout``
 |      argument can be a nonnegative float expressing seconds, or ``None``.
 |      If a float is given, subsequent channel read/write operations will
 |      raise a timeout exception if the timeout period value has elapsed
 |      before the operation has completed.  Setting a timeout of ``None``
 |      disables timeouts on socket operations.
 |
 |      ``chan.settimeout(0.0)`` is equivalent to ``chan.setblocking(0)``;
 |      ``chan.settimeout(None)`` is equivalent to ``chan.setblocking(1)``.
 |
 |      :param float timeout:
 |          seconds to wait for a pending read/write operation before raising
 |          ``socket.timeout``, or ``None`` for no timeout.
 |
 |  shutdown(self, how)
 |      Shut down one or both halves of the connection.  If ``how`` is 0,
 |      further receives are disallowed.  If ``how`` is 1, further sends
 |      are disallowed.  If ``how`` is 2, further sends and receives are
 |      disallowed.  This closes the stream in one or both directions.
 |
 |      :param int how:
 |          0 (stop receiving), 1 (stop sending), or 2 (stop receiving and
 |            sending).
 |
 |  shutdown_read(self)
 |      Shutdown the receiving side of this socket, closing the stream in
 |      the incoming direction.  After this call, future reads on this
 |      channel will fail instantly.  This is a convenience method, equivalent
 |      to ``shutdown(0)``, for people who don't make it a habit to
 |      memorize unix constants from the 1970s.
 |
 |      .. versionadded:: 1.2
 |
 |  shutdown_write(self)
 |      Shutdown the sending side of this socket, closing the stream in
 |      the outgoing direction.  After this call, future writes on this
 |      channel will fail instantly.  This is a convenience method, equivalent
 |      to ``shutdown(1)``, for people who don't make it a habit to
 |      memorize unix constants from the 1970s.
 |
 |      .. versionadded:: 1.2
 |
 |  update_environment(self, environment)
 |      Updates this channel's remote shell environment.
 |
 |      .. note::
 |          This operation is additive - i.e. the current environment is not
 |          reset before the given environment variables are set.
 |
 |      .. warning::
 |          Servers may silently reject some environment variables; see the
 |          warning in `set_environment_variable` for details.
 |
 |      :param dict environment:
 |          a dictionary containing the name and respective values to set
 |      :raises:
 |          `.SSHException` -- if any of the environment variables was rejected
 |          by the server or the channel was closed
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ChannelException
Python Library Documentation: class ChannelException in module paramiko.ssh_exception

class ChannelException(SSHException)
 |  ChannelException(code, text)
 |
 |  Exception raised when an attempt to open a new `.Channel` fails.
 |
 |  :param int code: the error code returned by the server
 |
 |  .. versionadded:: 1.6
 |
 |  Method resolution order:
 |      ChannelException
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, code, text)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.ChannelFile
Python Library Documentation: class ChannelFile in module paramiko.channel

class ChannelFile(paramiko.file.BufferedFile)
 |  ChannelFile(channel, mode='r', bufsize=-1)
 |
 |  A file-like wrapper around `.Channel`.  A ChannelFile is created by calling
 |  `Channel.makefile`.
 |
 |  .. warning::
 |      To correctly emulate the file object created from a socket's `makefile
 |      <python:socket.socket.makefile>` method, a `.Channel` and its
 |      `.ChannelFile` should be able to be closed or garbage-collected
 |      independently. Currently, closing the `ChannelFile` does nothing but
 |      flush the buffer.
 |
 |  Method resolution order:
 |      ChannelFile
 |      paramiko.file.BufferedFile
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, channel, mode='r', bufsize=-1)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.file.BufferedFile:
 |
 |  __del__(self)
 |
 |  __iter__(self)
 |      Returns an iterator that can be used to iterate over the lines in this
 |      file.  This iterator happens to return the file itself, since a file is
 |      its own iterator.
 |
 |      :raises: ``ValueError`` -- if the file is closed.
 |
 |  __next__(self)
 |      Returns the next line from the input, or raises ``StopIteration``
 |      when EOF is hit.  Unlike python file objects, it's okay to mix
 |      calls to `.next` and `.readline`.
 |
 |      :raises: ``StopIteration`` -- when the end of the file is reached.
 |
 |      :returns:
 |          a line (`str`, or `bytes` if the file was opened in binary mode)
 |          read from the file.
 |
 |  close(self)
 |      Close the file.  Future read and write operations will fail.
 |
 |  flush(self)
 |      Write out any data in the write buffer.  This may do nothing if write
 |      buffering is not turned on.
 |
 |  read(self, size=None)
 |      Read at most ``size`` bytes from the file (less if we hit the end of
 |      the file first).  If the ``size`` argument is negative or omitted,
 |      read all the remaining data in the file.
 |
 |      .. note::
 |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
 |          ``self._flags``), because SSH treats all files as binary, since we
 |          have no idea what encoding the file is in, or even if the file is
 |          text data.
 |
 |      :param int size: maximum number of bytes to read
 |      :returns:
 |          data read from the file (as bytes), or an empty string if EOF was
 |          encountered immediately
 |
 |  readable(self)
 |      Check if the file can be read from.
 |
 |      :returns:
 |          `True` if the file can be read from. If `False`, `read` will raise
 |          an exception.
 |
 |  readinto(self, buff)
 |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
 |      number of bytes read.
 |
 |      :returns:
 |          The number of bytes read.
 |
 |  readline(self, size=None)
 |      Read one entire line from the file.  A trailing newline character is
 |      kept in the string (but may be absent when a file ends with an
 |      incomplete line).  If the size argument is present and non-negative, it
 |      is a maximum byte count (including the trailing newline) and an
 |      incomplete line may be returned.  An empty string is returned only when
 |      EOF is encountered immediately.
 |
 |      .. note::
 |          Unlike stdio's ``fgets``, the returned string contains null
 |          characters (``'\0'``) if they occurred in the input.
 |
 |      :param int size: maximum length of returned string.
 |      :returns:
 |          next line of the file, or an empty string if the end of the
 |          file has been reached.
 |
 |          If the file was opened in binary (``'b'``) mode: bytes are returned
 |          Else: the encoding of the file is assumed to be UTF-8 and character
 |          strings (`str`) are returned
 |
 |  readlines(self, sizehint=None)
 |      Read all remaining lines using `readline` and return them as a list.
 |      If the optional ``sizehint`` argument is present, instead of reading up
 |      to EOF, whole lines totalling approximately sizehint bytes (possibly
 |      after rounding up to an internal buffer size) are read.
 |
 |      :param int sizehint: desired maximum number of bytes to read.
 |      :returns: list of lines read from the file.
 |
 |  seek(self, offset, whence=0)
 |      Set the file's current position, like stdio's ``fseek``.  Not all file
 |      objects support seeking.
 |
 |      .. note::
 |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
 |          operations will be undone at the next write (as the file position
 |          will move back to the end of the file).
 |
 |      :param int offset:
 |          position to move to within the file, relative to ``whence``.
 |      :param int whence:
 |          type of movement: 0 = absolute; 1 = relative to the current
 |          position; 2 = relative to the end of the file.
 |
 |      :raises: ``IOError`` -- if the file doesn't support random access.
 |
 |  seekable(self)
 |      Check if the file supports random access.
 |
 |      :returns:
 |          `True` if the file supports random access. If `False`, `seek` will
 |          raise an exception.
 |
 |  tell(self)
 |      Return the file's current position.  This may not be accurate or
 |      useful if the underlying file doesn't support random access, or was
 |      opened in append mode.
 |
 |      :returns: file position (`number <int>` of bytes).
 |
 |  writable(self)
 |      Check if the file can be written to.
 |
 |      :returns:
 |          `True` if the file can be written to. If `False`, `write` will
 |          raise an exception.
 |
 |  write(self, data)
 |      Write data to the file.  If write buffering is on (``bufsize`` was
 |      specified and non-zero), some or all of the data may not actually be
 |      written yet.  (Use `flush` or `close` to force buffered data to be
 |      written out.)
 |
 |      :param data: ``str``/``bytes`` data to write
 |
 |  writelines(self, sequence)
 |      Write a sequence of strings to the file.  The sequence can be any
 |      iterable object producing strings, typically a list of strings.  (The
 |      name is intended to match `readlines`; `writelines` does not add line
 |      separators.)
 |
 |      :param sequence: an iterable sequence of strings.
 |
 |  xreadlines(self)
 |      Identical to ``iter(f)``.  This is a deprecated file interface that
 |      predates Python iterator support.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.file.BufferedFile:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.file.BufferedFile:
 |
 |  FLAG_APPEND = 4
 |
 |  FLAG_BINARY = 16
 |
 |  FLAG_BUFFERED = 32
 |
 |  FLAG_LINE_BUFFERED = 64
 |
 |  FLAG_READ = 1
 |
 |  FLAG_UNIVERSAL_NEWLINE = 128
 |
 |  FLAG_WRITE = 2
 |
 |  SEEK_CUR = 1
 |
 |  SEEK_END = 2
 |
 |  SEEK_SET = 0
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ChannelStderrFile
Python Library Documentation: class ChannelStderrFile in module paramiko.channel

class ChannelStderrFile(ChannelFile)
 |  ChannelStderrFile(channel, mode='r', bufsize=-1)
 |
 |  A file-like wrapper around `.Channel` stderr.
 |
 |  See `Channel.makefile_stderr` for details.
 |
 |  Method resolution order:
 |      ChannelStderrFile
 |      ChannelFile
 |      paramiko.file.BufferedFile
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods inherited from ChannelFile:
 |
 |  __init__(self, channel, mode='r', bufsize=-1)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.file.BufferedFile:
 |
 |  __del__(self)
 |
 |  __iter__(self)
 |      Returns an iterator that can be used to iterate over the lines in this
 |      file.  This iterator happens to return the file itself, since a file is
 |      its own iterator.
 |
 |      :raises: ``ValueError`` -- if the file is closed.
 |
 |  __next__(self)
 |      Returns the next line from the input, or raises ``StopIteration``
 |      when EOF is hit.  Unlike python file objects, it's okay to mix
 |      calls to `.next` and `.readline`.
 |
 |      :raises: ``StopIteration`` -- when the end of the file is reached.
 |
 |      :returns:
 |          a line (`str`, or `bytes` if the file was opened in binary mode)
 |          read from the file.
 |
 |  close(self)
 |      Close the file.  Future read and write operations will fail.
 |
 |  flush(self)
 |      Write out any data in the write buffer.  This may do nothing if write
 |      buffering is not turned on.
 |
 |  read(self, size=None)
 |      Read at most ``size`` bytes from the file (less if we hit the end of
 |      the file first).  If the ``size`` argument is negative or omitted,
 |      read all the remaining data in the file.
 |
 |      .. note::
 |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
 |          ``self._flags``), because SSH treats all files as binary, since we
 |          have no idea what encoding the file is in, or even if the file is
 |          text data.
 |
 |      :param int size: maximum number of bytes to read
 |      :returns:
 |          data read from the file (as bytes), or an empty string if EOF was
 |          encountered immediately
 |
 |  readable(self)
 |      Check if the file can be read from.
 |
 |      :returns:
 |          `True` if the file can be read from. If `False`, `read` will raise
 |          an exception.
 |
 |  readinto(self, buff)
 |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
 |      number of bytes read.
 |
 |      :returns:
 |          The number of bytes read.
 |
 |  readline(self, size=None)
 |      Read one entire line from the file.  A trailing newline character is
 |      kept in the string (but may be absent when a file ends with an
 |      incomplete line).  If the size argument is present and non-negative, it
 |      is a maximum byte count (including the trailing newline) and an
 |      incomplete line may be returned.  An empty string is returned only when
 |      EOF is encountered immediately.
 |
 |      .. note::
 |          Unlike stdio's ``fgets``, the returned string contains null
 |          characters (``'\0'``) if they occurred in the input.
 |
 |      :param int size: maximum length of returned string.
 |      :returns:
 |          next line of the file, or an empty string if the end of the
 |          file has been reached.
 |
 |          If the file was opened in binary (``'b'``) mode: bytes are returned
 |          Else: the encoding of the file is assumed to be UTF-8 and character
 |          strings (`str`) are returned
 |
 |  readlines(self, sizehint=None)
 |      Read all remaining lines using `readline` and return them as a list.
 |      If the optional ``sizehint`` argument is present, instead of reading up
 |      to EOF, whole lines totalling approximately sizehint bytes (possibly
 |      after rounding up to an internal buffer size) are read.
 |
 |      :param int sizehint: desired maximum number of bytes to read.
 |      :returns: list of lines read from the file.
 |
 |  seek(self, offset, whence=0)
 |      Set the file's current position, like stdio's ``fseek``.  Not all file
 |      objects support seeking.
 |
 |      .. note::
 |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
 |          operations will be undone at the next write (as the file position
 |          will move back to the end of the file).
 |
 |      :param int offset:
 |          position to move to within the file, relative to ``whence``.
 |      :param int whence:
 |          type of movement: 0 = absolute; 1 = relative to the current
 |          position; 2 = relative to the end of the file.
 |
 |      :raises: ``IOError`` -- if the file doesn't support random access.
 |
 |  seekable(self)
 |      Check if the file supports random access.
 |
 |      :returns:
 |          `True` if the file supports random access. If `False`, `seek` will
 |          raise an exception.
 |
 |  tell(self)
 |      Return the file's current position.  This may not be accurate or
 |      useful if the underlying file doesn't support random access, or was
 |      opened in append mode.
 |
 |      :returns: file position (`number <int>` of bytes).
 |
 |  writable(self)
 |      Check if the file can be written to.
 |
 |      :returns:
 |          `True` if the file can be written to. If `False`, `write` will
 |          raise an exception.
 |
 |  write(self, data)
 |      Write data to the file.  If write buffering is on (``bufsize`` was
 |      specified and non-zero), some or all of the data may not actually be
 |      written yet.  (Use `flush` or `close` to force buffered data to be
 |      written out.)
 |
 |      :param data: ``str``/``bytes`` data to write
 |
 |  writelines(self, sequence)
 |      Write a sequence of strings to the file.  The sequence can be any
 |      iterable object producing strings, typically a list of strings.  (The
 |      name is intended to match `readlines`; `writelines` does not add line
 |      separators.)
 |
 |      :param sequence: an iterable sequence of strings.
 |
 |  xreadlines(self)
 |      Identical to ``iter(f)``.  This is a deprecated file interface that
 |      predates Python iterator support.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.file.BufferedFile:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.file.BufferedFile:
 |
 |  FLAG_APPEND = 4
 |
 |  FLAG_BINARY = 16
 |
 |  FLAG_BUFFERED = 32
 |
 |  FLAG_LINE_BUFFERED = 64
 |
 |  FLAG_READ = 1
 |
 |  FLAG_UNIVERSAL_NEWLINE = 128
 |
 |  FLAG_WRITE = 2
 |
 |  SEEK_CUR = 1
 |
 |  SEEK_END = 2
 |
 |  SEEK_SET = 0
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ChannelStdinFile
Python Library Documentation: class ChannelStdinFile in module paramiko.channel

class ChannelStdinFile(ChannelFile)
 |  ChannelStdinFile(channel, mode='r', bufsize=-1)
 |
 |  A file-like wrapper around `.Channel` stdin.
 |
 |  See `Channel.makefile_stdin` for details.
 |
 |  Method resolution order:
 |      ChannelStdinFile
 |      ChannelFile
 |      paramiko.file.BufferedFile
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  close(self)
 |      Close the file.  Future read and write operations will fail.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from ChannelFile:
 |
 |  __init__(self, channel, mode='r', bufsize=-1)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.file.BufferedFile:
 |
 |  __del__(self)
 |
 |  __iter__(self)
 |      Returns an iterator that can be used to iterate over the lines in this
 |      file.  This iterator happens to return the file itself, since a file is
 |      its own iterator.
 |
 |      :raises: ``ValueError`` -- if the file is closed.
 |
 |  __next__(self)
 |      Returns the next line from the input, or raises ``StopIteration``
 |      when EOF is hit.  Unlike python file objects, it's okay to mix
 |      calls to `.next` and `.readline`.
 |
 |      :raises: ``StopIteration`` -- when the end of the file is reached.
 |
 |      :returns:
 |          a line (`str`, or `bytes` if the file was opened in binary mode)
 |          read from the file.
 |
 |  flush(self)
 |      Write out any data in the write buffer.  This may do nothing if write
 |      buffering is not turned on.
 |
 |  read(self, size=None)
 |      Read at most ``size`` bytes from the file (less if we hit the end of
 |      the file first).  If the ``size`` argument is negative or omitted,
 |      read all the remaining data in the file.
 |
 |      .. note::
 |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
 |          ``self._flags``), because SSH treats all files as binary, since we
 |          have no idea what encoding the file is in, or even if the file is
 |          text data.
 |
 |      :param int size: maximum number of bytes to read
 |      :returns:
 |          data read from the file (as bytes), or an empty string if EOF was
 |          encountered immediately
 |
 |  readable(self)
 |      Check if the file can be read from.
 |
 |      :returns:
 |          `True` if the file can be read from. If `False`, `read` will raise
 |          an exception.
 |
 |  readinto(self, buff)
 |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
 |      number of bytes read.
 |
 |      :returns:
 |          The number of bytes read.
 |
 |  readline(self, size=None)
 |      Read one entire line from the file.  A trailing newline character is
 |      kept in the string (but may be absent when a file ends with an
 |      incomplete line).  If the size argument is present and non-negative, it
 |      is a maximum byte count (including the trailing newline) and an
 |      incomplete line may be returned.  An empty string is returned only when
 |      EOF is encountered immediately.
 |
 |      .. note::
 |          Unlike stdio's ``fgets``, the returned string contains null
 |          characters (``'\0'``) if they occurred in the input.
 |
 |      :param int size: maximum length of returned string.
 |      :returns:
 |          next line of the file, or an empty string if the end of the
 |          file has been reached.
 |
 |          If the file was opened in binary (``'b'``) mode: bytes are returned
 |          Else: the encoding of the file is assumed to be UTF-8 and character
 |          strings (`str`) are returned
 |
 |  readlines(self, sizehint=None)
 |      Read all remaining lines using `readline` and return them as a list.
 |      If the optional ``sizehint`` argument is present, instead of reading up
 |      to EOF, whole lines totalling approximately sizehint bytes (possibly
 |      after rounding up to an internal buffer size) are read.
 |
 |      :param int sizehint: desired maximum number of bytes to read.
 |      :returns: list of lines read from the file.
 |
 |  seek(self, offset, whence=0)
 |      Set the file's current position, like stdio's ``fseek``.  Not all file
 |      objects support seeking.
 |
 |      .. note::
 |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
 |          operations will be undone at the next write (as the file position
 |          will move back to the end of the file).
 |
 |      :param int offset:
 |          position to move to within the file, relative to ``whence``.
 |      :param int whence:
 |          type of movement: 0 = absolute; 1 = relative to the current
 |          position; 2 = relative to the end of the file.
 |
 |      :raises: ``IOError`` -- if the file doesn't support random access.
 |
 |  seekable(self)
 |      Check if the file supports random access.
 |
 |      :returns:
 |          `True` if the file supports random access. If `False`, `seek` will
 |          raise an exception.
 |
 |  tell(self)
 |      Return the file's current position.  This may not be accurate or
 |      useful if the underlying file doesn't support random access, or was
 |      opened in append mode.
 |
 |      :returns: file position (`number <int>` of bytes).
 |
 |  writable(self)
 |      Check if the file can be written to.
 |
 |      :returns:
 |          `True` if the file can be written to. If `False`, `write` will
 |          raise an exception.
 |
 |  write(self, data)
 |      Write data to the file.  If write buffering is on (``bufsize`` was
 |      specified and non-zero), some or all of the data may not actually be
 |      written yet.  (Use `flush` or `close` to force buffered data to be
 |      written out.)
 |
 |      :param data: ``str``/``bytes`` data to write
 |
 |  writelines(self, sequence)
 |      Write a sequence of strings to the file.  The sequence can be any
 |      iterable object producing strings, typically a list of strings.  (The
 |      name is intended to match `readlines`; `writelines` does not add line
 |      separators.)
 |
 |      :param sequence: an iterable sequence of strings.
 |
 |  xreadlines(self)
 |      Identical to ``iter(f)``.  This is a deprecated file interface that
 |      predates Python iterator support.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.file.BufferedFile:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.file.BufferedFile:
 |
 |  FLAG_APPEND = 4
 |
 |  FLAG_BINARY = 16
 |
 |  FLAG_BUFFERED = 32
 |
 |  FLAG_LINE_BUFFERED = 64
 |
 |  FLAG_READ = 1
 |
 |  FLAG_UNIVERSAL_NEWLINE = 128
 |
 |  FLAG_WRITE = 2
 |
 |  SEEK_CUR = 1
 |
 |  SEEK_END = 2
 |
 |  SEEK_SET = 0
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ConfigParseError
Python Library Documentation: class ConfigParseError in module paramiko.ssh_exception

class ConfigParseError(SSHException)
 |  A fatal error was encountered trying to parse SSH config data.
 |
 |  Typically this means a config file violated the ``ssh_config``
 |  specification in a manner that requires exiting immediately, such as not
 |  matching ``key = value`` syntax or misusing certain ``Match`` keywords.
 |
 |  .. versionadded:: 2.7
 |
 |  Method resolution order:
 |      ConfigParseError
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.CouldNotCanonicalize
Python Library Documentation: class CouldNotCanonicalize in module paramiko.ssh_exception

class CouldNotCanonicalize(SSHException)
 |  Raised when hostname canonicalization fails & fallback is disabled.
 |
 |  .. versionadded:: 2.7
 |
 |  Method resolution order:
 |      CouldNotCanonicalize
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.ECDSAKey
Python Library Documentation: class ECDSAKey in module paramiko.ecdsakey

class ECDSAKey(paramiko.pkey.PKey)
 |  ECDSAKey(msg=None, data=None, filename=None, password=None, vals=None, file_obj=None, validate_point=True)
 |
 |  Representation of an ECDSA key which can be used to sign and verify SSH2
 |  data.
 |
 |  Method resolution order:
 |      ECDSAKey
 |      paramiko.pkey.PKey
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, msg=None, data=None, filename=None, password=None, vals=None, file_obj=None, validate_point=True)
 |      Create a new instance of this public key type.  If ``msg`` is given,
 |      the key's public part(s) will be filled in from the message.  If
 |      ``data`` is given, the key's public part(s) will be filled in from
 |      the string.
 |
 |      :param .Message msg:
 |          an optional SSH `.Message` containing a public key of this type.
 |      :param bytes data:
 |          optional, the bytes of a public key of this type
 |
 |      :raises: `.SSHException` --
 |          if a key cannot be created from the ``data`` or ``msg`` given, or
 |          no key was passed in.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  _decode_key(self, data)
 |
 |  _from_private_key(self, file_obj, password)
 |
 |  _from_private_key_file(self, filename, password)
 |
 |  _sigdecode(self, sig)
 |
 |  _sigencode(self, r, s)
 |
 |  asbytes(self)
 |      Return a string of an SSH `.Message` made up of the public part(s) of
 |      this key.  This string is suitable for passing to `__init__` to
 |      re-create the key object later.
 |
 |  can_sign(self)
 |      Return ``True`` if this key has the private part necessary for signing
 |      data.
 |
 |  get_bits(self)
 |      Return the number of significant bits in this key.  This is useful
 |      for judging the relative security of a key.
 |
 |      :return: bits in the key (as an `int`)
 |
 |  get_name(self)
 |      Return the name of this private key implementation.
 |
 |      :return:
 |          name of this private key type, in SSH terminology, as a `str` (for
 |          example, ``"ssh-rsa"``).
 |
 |  sign_ssh_data(self, data, algorithm=None)
 |      Sign a blob of data with this private key, and return a `.Message`
 |      representing an SSH signature message.
 |
 |      :param bytes data:
 |          the data to sign.
 |      :param str algorithm:
 |          the signature algorithm to use, if different from the key's
 |          internal name. Default: ``None``.
 |      :return: an SSH signature `message <.Message>`.
 |
 |      .. versionchanged:: 2.9
 |          Added the ``algorithm`` kwarg.
 |
 |  verify_ssh_sig(self, data, msg)
 |      Given a blob of data, and an SSH message representing a signature of
 |      that data, verify that it was signed with this key.
 |
 |      :param bytes data: the data that was signed.
 |      :param .Message msg: an SSH signature message
 |      :return:
 |          ``True`` if the signature verifies correctly; ``False`` otherwise.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  generate(curve=<cryptography.hazmat.primitives.asymmetric.ec.SECP256R1 object at 0x000002919E1C8740>, progress_func=None, bits=None)
 |      Generate a new private ECDSA key.  This factory function can be used to
 |      generate a new host key or authentication key.
 |
 |      :param progress_func: Not used for this type of key.
 |      :returns: A new private key (`.ECDSAKey`) object
 |
 |  identifiers()
 |      returns an iterable of key format/name strings this class can handle.
 |
 |      Most classes only have a single identifier, and thus this default
 |      implementation suffices; see `.ECDSAKey` for one example of an
 |      override.
 |
 |  supported_key_format_identifiers()
 |      # TODO (backwards incompat): deprecate/remove
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  _fields
 |
 |  private_key
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  _ECDSA_CURVES = <paramiko.ecdsakey._ECDSACurveSet object>
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.pkey.PKey:
 |
 |  __bytes__(self)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __hash__(self)
 |      Return hash(self).
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  _check_type_and_load_cert(self, msg, key_type, cert_type)
 |      Perform message type-checking & optional certificate loading.
 |
 |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
 |      that the subsequent fields are the key numbers; thus the caller may
 |      expect to treat the message as key material afterwards either way.
 |
 |      The obtained key type is returned for classes which need to know what
 |      it was (e.g. ECDSA.)
 |
 |  _got_bad_key_format_id(self, id_)
 |
 |  _read_private_key(self, tag, f, password=None)
 |
 |  _read_private_key_file(self, tag, filename, password=None)
 |      Read an SSH2-format private key file, looking for a string of the type
 |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
 |      find, and return it as a string.  If the private key is encrypted and
 |      ``password`` is not ``None``, the given password will be used to
 |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
 |
 |      :param str tag:
 |          ``"RSA"`` (or etc), the tag used to mark the data block.
 |      :param str filename:
 |          name of the file to read.
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted.
 |      :return:
 |          the `bytes` that make up the private key.
 |
 |      :raises: ``IOError`` -- if there was an error reading the file.
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``.
 |      :raises: `.SSHException` -- if the key file is invalid.
 |
 |  _read_private_key_openssh(self, lines, password)
 |      Read the new OpenSSH SSH2 private key format available
 |      since OpenSSH version 6.5
 |      Reference:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
 |
 |  _read_private_key_pem(self, lines, end, password)
 |
 |  _uint32_cstruct_unpack(self, data, strformat)
 |      Used to read new OpenSSH private key format.
 |      Unpacks a c data structure containing a mix of 32-bit uints and
 |      variable length strings prefixed by 32-bit uint size field,
 |      according to the specified format. Returns the unpacked vars
 |      in a tuple.
 |      Format strings:
 |        s - denotes a string
 |        i - denotes a long integer, encoded as a byte string
 |        u - denotes a 32-bit unsigned integer
 |        r - the remainder of the input string, returned as a string
 |
 |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  get_base64(self)
 |      Return a base64 string containing the public part of this key.  Nothing
 |      secret is revealed.  This format is compatible with that used to store
 |      public key files or recognized host keys.
 |
 |      :return: a base64 `string <str>` containing the public part of the key.
 |
 |  get_fingerprint(self)
 |      Return an MD5 fingerprint of the public part of this key.  Nothing
 |      secret is revealed.
 |
 |      :return:
 |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
 |          format.
 |
 |  load_certificate(self, value)
 |      Supplement the private key contents with data loaded from an OpenSSH
 |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
 |      containing such a file, or a `.Message` object.
 |
 |      The .pub contents adds no real value, since the private key
 |      file includes sufficient information to derive the public
 |      key info. For certificates, however, this can be used on
 |      the client side to offer authentication requests to the server
 |      based on certificate instead of raw public key.
 |
 |      See:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
 |
 |      Note: very little effort is made to validate the certificate contents,
 |      that is for the server to decide if it is good enough to authenticate
 |      successfully.
 |
 |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file (or file-like) object.  If the
 |      password is not ``None``, the key is encrypted before writing.
 |
 |      :param file_obj: the file-like object to write into
 |      :param str password: an optional password to use to encrypt the key
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing to the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file.  If the password is not
 |      ``None``, the key is encrypted before writing.
 |
 |      :param str filename: name of the file to write
 |      :param str password:
 |          an optional password to use to encrypt the key file
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from paramiko.pkey.PKey:
 |
 |  from_private_key(file_obj, password=None)
 |      Create a key object by reading a private key from a file (or file-like)
 |      object.  If the private key is encrypted and ``password`` is not
 |      ``None``, the given password will be used to decrypt the key (otherwise
 |      `.PasswordRequiredException` is thrown).
 |
 |      :param file_obj: the file-like object to read from
 |      :param str password:
 |          an optional password to use to decrypt the key, if it's encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the key
 |      :raises: `.PasswordRequiredException` --
 |          if the private key file is encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  from_private_key_file(filename, password=None)
 |      Create a key object by reading a private key file.  If the private
 |      key is encrypted and ``password`` is not ``None``, the given password
 |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
 |      is thrown).  Through the magic of Python, this factory method will
 |      exist in all subclasses of PKey (such as `.RSAKey`), but
 |      is useless on the abstract PKey class.
 |
 |      :param str filename: name of the file to read
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from paramiko.pkey.PKey:
 |
 |  from_path(path, password: Optional[str] = None)
 |      Attempt to instantiate appropriate key subclass from given file path.
 |
 |      :param pathlib.Path path: The path to load (may also be a `str`).
 |      :param str password: Optional decryption password.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Renamed ``passphrase`` argument to ``password`` for consistency
 |          with older methods.
 |
 |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
 |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
 |
 |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
 |      will (if successful) return a new `.Ed25519Key`.
 |
 |      :param str key_type:
 |          The key type, eg ``"ssh-ed25519"``.
 |      :param bytes key_bytes:
 |          The raw byte data forming the key material, as expected by
 |          subclasses' ``data`` parameter.
 |      :param str password:
 |          Optional password used to decrypt ``key_bytes``.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if no registered classes knew about this type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Added the ``password`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.pkey.PKey:
 |
 |  algorithm_name
 |      Return the key algorithm identifier for this key.
 |
 |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
 |      protocol field value.
 |
 |  fingerprint
 |      Modern fingerprint property designed to be comparable to OpenSSH.
 |
 |      Currently only does SHA256 (the OpenSSH default).
 |
 |      .. versionadded:: 3.2
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.pkey.PKey:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.pkey.PKey:
 |
 |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
 |
 |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
 |
 |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
 |
 |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
 |
 |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1
paramiko.Ed25519Key
Python Library Documentation: class Ed25519Key in module paramiko.ed25519key

class Ed25519Key(paramiko.pkey.PKey)
 |  Ed25519Key(msg=None, data=None, filename=None, password=None, file_obj=None)
 |
 |  Representation of an `Ed25519 <https://ed25519.cr.yp.to/>`_ key.
 |
 |  .. note::
 |      Ed25519 key support was added to OpenSSH in version 6.5.
 |
 |  .. versionadded:: 2.2
 |  .. versionchanged:: 2.3
 |      Added a ``file_obj`` parameter to match other key classes.
 |
 |  Method resolution order:
 |      Ed25519Key
 |      paramiko.pkey.PKey
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, msg=None, data=None, filename=None, password=None, file_obj=None)
 |      Create a new instance of this public key type.  If ``msg`` is given,
 |      the key's public part(s) will be filled in from the message.  If
 |      ``data`` is given, the key's public part(s) will be filled in from
 |      the string.
 |
 |      :param .Message msg:
 |          an optional SSH `.Message` containing a public key of this type.
 |      :param bytes data:
 |          optional, the bytes of a public key of this type
 |
 |      :raises: `.SSHException` --
 |          if a key cannot be created from the ``data`` or ``msg`` given, or
 |          no key was passed in.
 |
 |  _parse_signing_key_data(self, data, password)
 |
 |  asbytes(self)
 |      Return a string of an SSH `.Message` made up of the public part(s) of
 |      this key.  This string is suitable for passing to `__init__` to
 |      re-create the key object later.
 |
 |  can_sign(self)
 |      Return ``True`` if this key has the private part necessary for signing
 |      data.
 |
 |  can_verify(self)
 |
 |  get_bits(self)
 |      Return the number of significant bits in this key.  This is useful
 |      for judging the relative security of a key.
 |
 |      :return: bits in the key (as an `int`)
 |
 |  get_name(self)
 |      Return the name of this private key implementation.
 |
 |      :return:
 |          name of this private key type, in SSH terminology, as a `str` (for
 |          example, ``"ssh-rsa"``).
 |
 |  sign_ssh_data(self, data, algorithm=None)
 |      Sign a blob of data with this private key, and return a `.Message`
 |      representing an SSH signature message.
 |
 |      :param bytes data:
 |          the data to sign.
 |      :param str algorithm:
 |          the signature algorithm to use, if different from the key's
 |          internal name. Default: ``None``.
 |      :return: an SSH signature `message <.Message>`.
 |
 |      .. versionchanged:: 2.9
 |          Added the ``algorithm`` kwarg.
 |
 |  verify_ssh_sig(self, data, msg)
 |      Given a blob of data, and an SSH message representing a signature of
 |      that data, verify that it was signed with this key.
 |
 |      :param bytes data: the data that was signed.
 |      :param .Message msg: an SSH signature message
 |      :return:
 |          ``True`` if the signature verifies correctly; ``False`` otherwise.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  _fields
 |
 |  verifying_key
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  name = 'ssh-ed25519'
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.pkey.PKey:
 |
 |  __bytes__(self)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __hash__(self)
 |      Return hash(self).
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  _check_type_and_load_cert(self, msg, key_type, cert_type)
 |      Perform message type-checking & optional certificate loading.
 |
 |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
 |      that the subsequent fields are the key numbers; thus the caller may
 |      expect to treat the message as key material afterwards either way.
 |
 |      The obtained key type is returned for classes which need to know what
 |      it was (e.g. ECDSA.)
 |
 |  _got_bad_key_format_id(self, id_)
 |
 |  _read_private_key(self, tag, f, password=None)
 |
 |  _read_private_key_file(self, tag, filename, password=None)
 |      Read an SSH2-format private key file, looking for a string of the type
 |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
 |      find, and return it as a string.  If the private key is encrypted and
 |      ``password`` is not ``None``, the given password will be used to
 |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
 |
 |      :param str tag:
 |          ``"RSA"`` (or etc), the tag used to mark the data block.
 |      :param str filename:
 |          name of the file to read.
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted.
 |      :return:
 |          the `bytes` that make up the private key.
 |
 |      :raises: ``IOError`` -- if there was an error reading the file.
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``.
 |      :raises: `.SSHException` -- if the key file is invalid.
 |
 |  _read_private_key_openssh(self, lines, password)
 |      Read the new OpenSSH SSH2 private key format available
 |      since OpenSSH version 6.5
 |      Reference:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
 |
 |  _read_private_key_pem(self, lines, end, password)
 |
 |  _uint32_cstruct_unpack(self, data, strformat)
 |      Used to read new OpenSSH private key format.
 |      Unpacks a c data structure containing a mix of 32-bit uints and
 |      variable length strings prefixed by 32-bit uint size field,
 |      according to the specified format. Returns the unpacked vars
 |      in a tuple.
 |      Format strings:
 |        s - denotes a string
 |        i - denotes a long integer, encoded as a byte string
 |        u - denotes a 32-bit unsigned integer
 |        r - the remainder of the input string, returned as a string
 |
 |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  get_base64(self)
 |      Return a base64 string containing the public part of this key.  Nothing
 |      secret is revealed.  This format is compatible with that used to store
 |      public key files or recognized host keys.
 |
 |      :return: a base64 `string <str>` containing the public part of the key.
 |
 |  get_fingerprint(self)
 |      Return an MD5 fingerprint of the public part of this key.  Nothing
 |      secret is revealed.
 |
 |      :return:
 |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
 |          format.
 |
 |  load_certificate(self, value)
 |      Supplement the private key contents with data loaded from an OpenSSH
 |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
 |      containing such a file, or a `.Message` object.
 |
 |      The .pub contents adds no real value, since the private key
 |      file includes sufficient information to derive the public
 |      key info. For certificates, however, this can be used on
 |      the client side to offer authentication requests to the server
 |      based on certificate instead of raw public key.
 |
 |      See:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
 |
 |      Note: very little effort is made to validate the certificate contents,
 |      that is for the server to decide if it is good enough to authenticate
 |      successfully.
 |
 |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file (or file-like) object.  If the
 |      password is not ``None``, the key is encrypted before writing.
 |
 |      :param file_obj: the file-like object to write into
 |      :param str password: an optional password to use to encrypt the key
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing to the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file.  If the password is not
 |      ``None``, the key is encrypted before writing.
 |
 |      :param str filename: name of the file to write
 |      :param str password:
 |          an optional password to use to encrypt the key file
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from paramiko.pkey.PKey:
 |
 |  from_private_key(file_obj, password=None)
 |      Create a key object by reading a private key from a file (or file-like)
 |      object.  If the private key is encrypted and ``password`` is not
 |      ``None``, the given password will be used to decrypt the key (otherwise
 |      `.PasswordRequiredException` is thrown).
 |
 |      :param file_obj: the file-like object to read from
 |      :param str password:
 |          an optional password to use to decrypt the key, if it's encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the key
 |      :raises: `.PasswordRequiredException` --
 |          if the private key file is encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  from_private_key_file(filename, password=None)
 |      Create a key object by reading a private key file.  If the private
 |      key is encrypted and ``password`` is not ``None``, the given password
 |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
 |      is thrown).  Through the magic of Python, this factory method will
 |      exist in all subclasses of PKey (such as `.RSAKey`), but
 |      is useless on the abstract PKey class.
 |
 |      :param str filename: name of the file to read
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  identifiers()
 |      returns an iterable of key format/name strings this class can handle.
 |
 |      Most classes only have a single identifier, and thus this default
 |      implementation suffices; see `.ECDSAKey` for one example of an
 |      override.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from paramiko.pkey.PKey:
 |
 |  from_path(path, password: Optional[str] = None)
 |      Attempt to instantiate appropriate key subclass from given file path.
 |
 |      :param pathlib.Path path: The path to load (may also be a `str`).
 |      :param str password: Optional decryption password.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Renamed ``passphrase`` argument to ``password`` for consistency
 |          with older methods.
 |
 |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
 |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
 |
 |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
 |      will (if successful) return a new `.Ed25519Key`.
 |
 |      :param str key_type:
 |          The key type, eg ``"ssh-ed25519"``.
 |      :param bytes key_bytes:
 |          The raw byte data forming the key material, as expected by
 |          subclasses' ``data`` parameter.
 |      :param str password:
 |          Optional password used to decrypt ``key_bytes``.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if no registered classes knew about this type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Added the ``password`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.pkey.PKey:
 |
 |  algorithm_name
 |      Return the key algorithm identifier for this key.
 |
 |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
 |      protocol field value.
 |
 |  fingerprint
 |      Modern fingerprint property designed to be comparable to OpenSSH.
 |
 |      Currently only does SHA256 (the OpenSSH default).
 |
 |      .. versionadded:: 3.2
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.pkey.PKey:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.pkey.PKey:
 |
 |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
 |
 |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
 |
 |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
 |
 |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
 |
 |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1
paramiko.HostKeys
Python Library Documentation: class HostKeys in module paramiko.hostkeys

class HostKeys(collections.abc.MutableMapping)
 |  HostKeys(filename=None)
 |
 |  Representation of an OpenSSH-style "known hosts" file.  Host keys can be
 |  read from one or more files, and then individual hosts can be looked up to
 |  verify server keys during SSH negotiation.
 |
 |  A `.HostKeys` object can be treated like a dict; any dict lookup is
 |  equivalent to calling `lookup`.
 |
 |  .. versionadded:: 1.5.3
 |
 |  Method resolution order:
 |      HostKeys
 |      collections.abc.MutableMapping
 |      collections.abc.Mapping
 |      collections.abc.Collection
 |      collections.abc.Sized
 |      collections.abc.Iterable
 |      collections.abc.Container
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __delitem__(self, key)
 |
 |  __getitem__(self, key)
 |
 |  __init__(self, filename=None)
 |      Create a new HostKeys object, optionally loading keys from an OpenSSH
 |      style host-key file.
 |
 |      :param str filename: filename to load host keys from, or ``None``
 |
 |  __iter__(self)
 |
 |  __len__(self)
 |
 |  __setitem__(self, hostname, entry)
 |
 |  add(self, hostname, keytype, key)
 |      Add a host key entry to the table.  Any existing entry for a
 |      ``(hostname, keytype)`` pair will be replaced.
 |
 |      :param str hostname: the hostname (or IP) to add
 |      :param str keytype: key type (in ``"ssh-<type>"`` format)
 |      :param .PKey key: the key to add
 |
 |  check(self, hostname, key)
 |      Return True if the given key is associated with the given hostname
 |      in this dictionary.
 |
 |      :param str hostname: hostname (or IP) of the SSH server
 |      :param .PKey key: the key to check
 |      :return:
 |          ``True`` if the key is associated with the hostname; else ``False``
 |
 |  clear(self)
 |      Remove all host keys from the dictionary.
 |
 |  keys(self)
 |      D.keys() -> a set-like object providing a view on D's keys
 |
 |  load(self, filename)
 |      Read a file of known SSH host keys, in the format used by OpenSSH.
 |      This type of file unfortunately doesn't exist on Windows, but on
 |      posix, it will usually be stored in
 |      ``os.path.expanduser("~/.ssh/known_hosts")``.
 |
 |      If this method is called multiple times, the host keys are merged,
 |      not cleared.  So multiple calls to `load` will just call `add`,
 |      replacing any existing entries and adding new ones.
 |
 |      :param str filename: name of the file to read host keys from
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |
 |  lookup(self, hostname)
 |      Find a hostkey entry for a given hostname or IP.  If no entry is found,
 |      ``None`` is returned.  Otherwise a dictionary of keytype to key is
 |      returned.
 |
 |      :param str hostname: the hostname (or IP) to lookup
 |      :return: dict of `str` -> `.PKey` keys associated with this host
 |          (or ``None``)
 |
 |  save(self, filename)
 |      Save host keys into a file, in the format used by OpenSSH.  The order
 |      of keys in the file will be preserved when possible (if these keys were
 |      loaded from a file originally).  The single exception is that combined
 |      lines will be split into individual key lines, which is arguably a bug.
 |
 |      :param str filename: name of the file to write
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |
 |      .. versionadded:: 1.6.1
 |
 |  values(self)
 |      D.values() -> an object providing a view on D's values
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  hash_host(hostname, salt=None)
 |      Return a "hashed" form of the hostname, as used by OpenSSH when storing
 |      hashed hostnames in the known_hosts file.
 |
 |      :param str hostname: the hostname to hash
 |      :param str salt: optional salt to use when hashing
 |          (must be 20 bytes long)
 |      :return: the hashed hostname as a `str`
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  __abstractmethods__ = frozenset()
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from collections.abc.MutableMapping:
 |
 |  pop(self, key, default=<object object at 0x000002919ACF81F0>)
 |      D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
 |      If key is not found, d is returned if given, otherwise KeyError is raised.
 |
 |  popitem(self)
 |      D.popitem() -> (k, v), remove and return some (key, value) pair
 |      as a 2-tuple; but raise KeyError if D is empty.
 |
 |  setdefault(self, key, default=None)
 |      D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
 |
 |  update(self, other=(), /, **kwds)
 |      D.update([E, ]**F) -> None.  Update D from mapping/iterable E and F.
 |      If E present and has a .keys() method, does:     for k in E: D[k] = E[k]
 |      If E present and lacks .keys() method, does:     for (k, v) in E: D[k] = v
 |      In either case, this is followed by: for k, v in F.items(): D[k] = v
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from collections.abc.Mapping:
 |
 |  __contains__(self, key)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  get(self, key, default=None)
 |      D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
 |
 |  items(self)
 |      D.items() -> a set-like object providing a view on D's items
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from collections.abc.Mapping:
 |
 |  __hash__ = None
 |
 |  __reversed__ = None
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from collections.abc.Collection:
 |
 |  __subclasshook__(C)
 |      Abstract classes can override this to customize issubclass().
 |
 |      This is invoked early on by abc.ABCMeta.__subclasscheck__().
 |      It should return True, False or NotImplemented.  If it returns
 |      NotImplemented, the normal algorithm is used.  Otherwise, it
 |      overrides the normal algorithm (and the outcome is cached).
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from collections.abc.Iterable:
 |
 |  __class_getitem__ = GenericAlias(...)
 |      Represent a PEP 585 generic type
 |
 |      E.g. for t = list[int], t.__origin__ is list and t.__args__ is (int,).
paramiko.InMemoryPrivateKey
Python Library Documentation: class InMemoryPrivateKey in module paramiko.auth_strategy

class InMemoryPrivateKey(PrivateKey)
 |  InMemoryPrivateKey(username, pkey)
 |
 |  An in-memory, decrypted `.PKey` object.
 |
 |  Method resolution order:
 |      InMemoryPrivateKey
 |      PrivateKey
 |      AuthSource
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, username, pkey)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from PrivateKey:
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AuthSource:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.IncompatiblePeer
Python Library Documentation: class IncompatiblePeer in module paramiko.ssh_exception

class IncompatiblePeer(SSHException)
 |  A disagreement arose regarding an algorithm required for key exchange.
 |
 |  .. versionadded:: 2.9
 |
 |  Method resolution order:
 |      IncompatiblePeer
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.InteractiveQuery
Python Library Documentation: class InteractiveQuery in module paramiko.server

class InteractiveQuery(builtins.object)
 |  InteractiveQuery(name='', instructions='', *prompts)
 |
 |  A query (set of prompts) for a user during interactive authentication.
 |
 |  Methods defined here:
 |
 |  __init__(self, name='', instructions='', *prompts)
 |      Create a new interactive query to send to the client.  The name and
 |      instructions are optional, but are generally displayed to the end
 |      user.  A list of prompts may be included, or they may be added via
 |      the `add_prompt` method.
 |
 |      :param str name: name of this query
 |      :param str instructions:
 |          user instructions (usually short) about this query
 |      :param str prompts: one or more authentication prompts
 |
 |  add_prompt(self, prompt, echo=True)
 |      Add a prompt to this query.  The prompt should be a (reasonably short)
 |      string.  Multiple prompts can be added to the same query.
 |
 |      :param str prompt: the user prompt
 |      :param bool echo:
 |          ``True`` (default) if the user's response should be echoed;
 |          ``False`` if not (for a password or similar)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.Message
Python Library Documentation: class Message in module paramiko.message

class Message(builtins.object)
 |  Message(content=None)
 |
 |  An SSH2 message is a stream of bytes that encodes some combination of
 |  strings, integers, bools, and infinite-precision integers.  This class
 |  builds or breaks down such a byte stream.
 |
 |  Normally you don't need to deal with anything this low-level, but it's
 |  exposed for people implementing custom extensions, or features that
 |  paramiko doesn't support yet.
 |
 |  Methods defined here:
 |
 |  __bytes__(self)
 |
 |  __init__(self, content=None)
 |      Create a new SSH2 message.
 |
 |      :param bytes content:
 |          the byte stream to use as the message content (passed in only when
 |          decomposing a message).
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  add(self, *seq)
 |      Add a sequence of items to the stream.  The values are encoded based
 |      on their type: bytes, str, int, bool, or list.
 |
 |      .. warning::
 |          Longs are encoded non-deterministically.  Don't use this method.
 |
 |      :param seq: the sequence of items
 |
 |  add_adaptive_int(self, n)
 |      Add an integer to the stream.
 |
 |      :param int n: integer to add
 |
 |  add_boolean(self, b)
 |      Add a boolean value to the stream.
 |
 |      :param bool b: boolean value to add
 |
 |  add_byte(self, b)
 |      Write a single byte to the stream, without any formatting.
 |
 |      :param bytes b: byte to add
 |
 |  add_bytes(self, b)
 |      Write bytes to the stream, without any formatting.
 |
 |      :param bytes b: bytes to add
 |
 |  add_int(self, n)
 |      Add an integer to the stream.
 |
 |      :param int n: integer to add
 |
 |  add_int64(self, n)
 |      Add a 64-bit int to the stream.
 |
 |      :param int n: long int to add
 |
 |  add_list(self, l)
 |      Add a list of strings to the stream.  They are encoded identically to
 |      a single string of values separated by commas.  (Yes, really, that's
 |      how SSH2 does it.)
 |
 |      :param l: list of strings to add
 |
 |  add_mpint(self, z)
 |      Add a long int to the stream, encoded as an infinite-precision
 |      integer.  This method only works on positive numbers.
 |
 |      :param int z: long int to add
 |
 |  add_string(self, s)
 |      Add a bytestring to the stream.
 |
 |      :param byte s: bytestring to add
 |
 |  asbytes(self)
 |      Return the byte stream content of this Message, as a `bytes`.
 |
 |  get_adaptive_int(self)
 |      Fetch an int from the stream.
 |
 |      :return: a 32-bit unsigned `int`.
 |
 |  get_binary(self)
 |      Alias for `get_string` (obtains a bytestring).
 |
 |  get_boolean(self)
 |      Fetch a boolean from the stream.
 |
 |  get_byte(self)
 |      Return the next byte of the message, without decomposing it.  This
 |      is equivalent to `get_bytes(1) <get_bytes>`.
 |
 |      :return:
 |          the next (`bytes`) byte of the message, or ``b''`` if there
 |          aren't any bytes remaining.
 |
 |  get_bytes(self, n)
 |      Return the next ``n`` bytes of the message, without decomposing into an
 |      int, decoded string, etc.  Just the raw bytes are returned. Returns a
 |      string of ``n`` zero bytes if there weren't ``n`` bytes remaining in
 |      the message.
 |
 |  get_int(self)
 |      Fetch an int from the stream.
 |
 |  get_int64(self)
 |      Fetch a 64-bit int from the stream.
 |
 |      :return: a 64-bit unsigned integer (`int`).
 |
 |  get_list(self)
 |      Fetch a list of `strings <str>` from the stream.
 |
 |      These are trivially encoded as comma-separated values in a string.
 |
 |  get_mpint(self)
 |      Fetch a long int (mpint) from the stream.
 |
 |      :return: an arbitrary-length integer (`int`).
 |
 |  get_remainder(self)
 |      Return the `bytes` of this message that haven't already been parsed and
 |      returned.
 |
 |  get_so_far(self)
 |      Returns the `bytes` of this message that have been parsed and
 |      returned. The string passed into a message's constructor can be
 |      regenerated by concatenating ``get_so_far`` and `get_remainder`.
 |
 |  get_string(self)
 |      Fetch a "string" from the stream.  This will actually be a `bytes`
 |      object, and may contain unprintable characters.  (It's not unheard of
 |      for a string to contain another byte-stream message.)
 |
 |  get_text(self)
 |      Fetch a Unicode string from the stream.
 |
 |      This currently operates by attempting to encode the next "string" as
 |      ``utf-8``.
 |
 |  rewind(self)
 |      Rewind the message to the beginning as if no items had been parsed
 |      out of it yet.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  big_int = 4278190080
paramiko.MessageOrderError
Python Library Documentation: class MessageOrderError in module paramiko.ssh_exception

class MessageOrderError(SSHException)
 |  Out-of-order protocol messages were received, violating "strict kex" mode.
 |
 |  .. versionadded:: 3.4
 |
 |  Method resolution order:
 |      MessageOrderError
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.MissingHostKeyPolicy
Python Library Documentation: class MissingHostKeyPolicy in module paramiko.client

class MissingHostKeyPolicy(builtins.object)
 |  Interface for defining the policy that `.SSHClient` should use when the
 |  SSH server's hostname is not in either the system host keys or the
 |  application's keys.  Pre-made classes implement policies for automatically
 |  adding the key to the application's `.HostKeys` object (`.AutoAddPolicy`),
 |  and for automatically rejecting the key (`.RejectPolicy`).
 |
 |  This function may be used to ask the user to verify the key, for example.
 |
 |  Methods defined here:
 |
 |  missing_host_key(self, client, hostname, key)
 |      Called when an `.SSHClient` receives a server key for a server that
 |      isn't in either the system or local `.HostKeys` object.  To accept
 |      the key, simply return.  To reject, raised an exception (which will
 |      be passed to the calling application).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.NoneAuth
Python Library Documentation: class NoneAuth in module paramiko.auth_strategy

class NoneAuth(AuthSource)
 |  NoneAuth(username)
 |
 |  Auth type "none", ie https://www.rfc-editor.org/rfc/rfc4252#section-5.2 .
 |
 |  Method resolution order:
 |      NoneAuth
 |      AuthSource
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from AuthSource:
 |
 |  __init__(self, username)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AuthSource:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.OPEN_FAILED_CONNECT_FAILED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.OPEN_FAILED_RESOURCE_SHORTAGE
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.OPEN_SUCCEEDED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.OnDiskPrivateKey
Python Library Documentation: class OnDiskPrivateKey in module paramiko.auth_strategy

class OnDiskPrivateKey(PrivateKey)
 |  OnDiskPrivateKey(username, source, path, pkey)
 |
 |  Some on-disk private key that needs opening and possibly decrypting.
 |
 |  :param str source:
 |      String tracking where this key's path was specified; should be one of
 |      ``"ssh-config"``, ``"python-config"``, or ``"implicit-home"``.
 |  :param Path path:
 |      The filesystem path this key was loaded from.
 |  :param PKey pkey:
 |      The `PKey` object this auth source uses/represents.
 |
 |  Method resolution order:
 |      OnDiskPrivateKey
 |      PrivateKey
 |      AuthSource
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, username, source, path, pkey)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from PrivateKey:
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AuthSource:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.PKey
Python Library Documentation: class PKey in module paramiko.pkey

class PKey(builtins.object)
 |  PKey(msg=None, data=None)
 |
 |  Base class for public keys.
 |
 |  Also includes some "meta" level convenience constructors such as
 |  `.from_type_string`.
 |
 |  Methods defined here:
 |
 |  __bytes__(self)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __hash__(self)
 |      Return hash(self).
 |
 |  __init__(self, msg=None, data=None)
 |      Create a new instance of this public key type.  If ``msg`` is given,
 |      the key's public part(s) will be filled in from the message.  If
 |      ``data`` is given, the key's public part(s) will be filled in from
 |      the string.
 |
 |      :param .Message msg:
 |          an optional SSH `.Message` containing a public key of this type.
 |      :param bytes data:
 |          optional, the bytes of a public key of this type
 |
 |      :raises: `.SSHException` --
 |          if a key cannot be created from the ``data`` or ``msg`` given, or
 |          no key was passed in.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  _check_type_and_load_cert(self, msg, key_type, cert_type)
 |      Perform message type-checking & optional certificate loading.
 |
 |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
 |      that the subsequent fields are the key numbers; thus the caller may
 |      expect to treat the message as key material afterwards either way.
 |
 |      The obtained key type is returned for classes which need to know what
 |      it was (e.g. ECDSA.)
 |
 |  _got_bad_key_format_id(self, id_)
 |
 |  _read_private_key(self, tag, f, password=None)
 |
 |  _read_private_key_file(self, tag, filename, password=None)
 |      Read an SSH2-format private key file, looking for a string of the type
 |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
 |      find, and return it as a string.  If the private key is encrypted and
 |      ``password`` is not ``None``, the given password will be used to
 |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
 |
 |      :param str tag:
 |          ``"RSA"`` (or etc), the tag used to mark the data block.
 |      :param str filename:
 |          name of the file to read.
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted.
 |      :return:
 |          the `bytes` that make up the private key.
 |
 |      :raises: ``IOError`` -- if there was an error reading the file.
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``.
 |      :raises: `.SSHException` -- if the key file is invalid.
 |
 |  _read_private_key_openssh(self, lines, password)
 |      Read the new OpenSSH SSH2 private key format available
 |      since OpenSSH version 6.5
 |      Reference:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
 |
 |  _read_private_key_pem(self, lines, end, password)
 |
 |  _uint32_cstruct_unpack(self, data, strformat)
 |      Used to read new OpenSSH private key format.
 |      Unpacks a c data structure containing a mix of 32-bit uints and
 |      variable length strings prefixed by 32-bit uint size field,
 |      according to the specified format. Returns the unpacked vars
 |      in a tuple.
 |      Format strings:
 |        s - denotes a string
 |        i - denotes a long integer, encoded as a byte string
 |        u - denotes a 32-bit unsigned integer
 |        r - the remainder of the input string, returned as a string
 |
 |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  asbytes(self)
 |      Return a string of an SSH `.Message` made up of the public part(s) of
 |      this key.  This string is suitable for passing to `__init__` to
 |      re-create the key object later.
 |
 |  can_sign(self)
 |      Return ``True`` if this key has the private part necessary for signing
 |      data.
 |
 |  get_base64(self)
 |      Return a base64 string containing the public part of this key.  Nothing
 |      secret is revealed.  This format is compatible with that used to store
 |      public key files or recognized host keys.
 |
 |      :return: a base64 `string <str>` containing the public part of the key.
 |
 |  get_bits(self)
 |      Return the number of significant bits in this key.  This is useful
 |      for judging the relative security of a key.
 |
 |      :return: bits in the key (as an `int`)
 |
 |  get_fingerprint(self)
 |      Return an MD5 fingerprint of the public part of this key.  Nothing
 |      secret is revealed.
 |
 |      :return:
 |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
 |          format.
 |
 |  get_name(self)
 |      Return the name of this private key implementation.
 |
 |      :return:
 |          name of this private key type, in SSH terminology, as a `str` (for
 |          example, ``"ssh-rsa"``).
 |
 |  load_certificate(self, value)
 |      Supplement the private key contents with data loaded from an OpenSSH
 |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
 |      containing such a file, or a `.Message` object.
 |
 |      The .pub contents adds no real value, since the private key
 |      file includes sufficient information to derive the public
 |      key info. For certificates, however, this can be used on
 |      the client side to offer authentication requests to the server
 |      based on certificate instead of raw public key.
 |
 |      See:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
 |
 |      Note: very little effort is made to validate the certificate contents,
 |      that is for the server to decide if it is good enough to authenticate
 |      successfully.
 |
 |  sign_ssh_data(self, data, algorithm=None)
 |      Sign a blob of data with this private key, and return a `.Message`
 |      representing an SSH signature message.
 |
 |      :param bytes data:
 |          the data to sign.
 |      :param str algorithm:
 |          the signature algorithm to use, if different from the key's
 |          internal name. Default: ``None``.
 |      :return: an SSH signature `message <.Message>`.
 |
 |      .. versionchanged:: 2.9
 |          Added the ``algorithm`` kwarg.
 |
 |  verify_ssh_sig(self, data, msg)
 |      Given a blob of data, and an SSH message representing a signature of
 |      that data, verify that it was signed with this key.
 |
 |      :param bytes data: the data that was signed.
 |      :param .Message msg: an SSH signature message
 |      :return:
 |          ``True`` if the signature verifies correctly; ``False`` otherwise.
 |
 |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file (or file-like) object.  If the
 |      password is not ``None``, the key is encrypted before writing.
 |
 |      :param file_obj: the file-like object to write into
 |      :param str password: an optional password to use to encrypt the key
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing to the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file.  If the password is not
 |      ``None``, the key is encrypted before writing.
 |
 |      :param str filename: name of the file to write
 |      :param str password:
 |          an optional password to use to encrypt the key file
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_private_key(file_obj, password=None)
 |      Create a key object by reading a private key from a file (or file-like)
 |      object.  If the private key is encrypted and ``password`` is not
 |      ``None``, the given password will be used to decrypt the key (otherwise
 |      `.PasswordRequiredException` is thrown).
 |
 |      :param file_obj: the file-like object to read from
 |      :param str password:
 |          an optional password to use to decrypt the key, if it's encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the key
 |      :raises: `.PasswordRequiredException` --
 |          if the private key file is encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  from_private_key_file(filename, password=None)
 |      Create a key object by reading a private key file.  If the private
 |      key is encrypted and ``password`` is not ``None``, the given password
 |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
 |      is thrown).  Through the magic of Python, this factory method will
 |      exist in all subclasses of PKey (such as `.RSAKey`), but
 |      is useless on the abstract PKey class.
 |
 |      :param str filename: name of the file to read
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  identifiers()
 |      returns an iterable of key format/name strings this class can handle.
 |
 |      Most classes only have a single identifier, and thus this default
 |      implementation suffices; see `.ECDSAKey` for one example of an
 |      override.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  from_path(path, password: Optional[str] = None)
 |      Attempt to instantiate appropriate key subclass from given file path.
 |
 |      :param pathlib.Path path: The path to load (may also be a `str`).
 |      :param str password: Optional decryption password.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Renamed ``passphrase`` argument to ``password`` for consistency
 |          with older methods.
 |
 |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
 |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
 |
 |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
 |      will (if successful) return a new `.Ed25519Key`.
 |
 |      :param str key_type:
 |          The key type, eg ``"ssh-ed25519"``.
 |      :param bytes key_bytes:
 |          The raw byte data forming the key material, as expected by
 |          subclasses' ``data`` parameter.
 |      :param str password:
 |          Optional password used to decrypt ``key_bytes``.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if no registered classes knew about this type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Added the ``password`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  _fields
 |
 |  algorithm_name
 |      Return the key algorithm identifier for this key.
 |
 |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
 |      protocol field value.
 |
 |  fingerprint
 |      Modern fingerprint property designed to be comparable to OpenSSH.
 |
 |      Currently only does SHA256 (the OpenSSH default).
 |
 |      .. versionadded:: 3.2
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
 |
 |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
 |
 |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
 |
 |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
 |
 |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1
paramiko.Packetizer
Python Library Documentation: class Packetizer in module paramiko.packet

class Packetizer(builtins.object)
 |  Packetizer(socket)
 |
 |  Implementation of the base SSH packet protocol.
 |
 |  Methods defined here:
 |
 |  __init__(self, socket)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  close(self)
 |
 |  complete_handshake(self)
 |      Tells `Packetizer` that the handshake has completed.
 |
 |  get_hexdump(self)
 |
 |  get_mac_size_in(self)
 |
 |  get_mac_size_out(self)
 |
 |  handshake_timed_out(self)
 |      Checks if the handshake has timed out.
 |
 |      If `start_handshake` wasn't called before the call to this function,
 |      the return value will always be `False`. If the handshake completed
 |      before a timeout was reached, the return value will be `False`
 |
 |      :return: handshake time out status, as a `bool`
 |
 |  need_rekey(self)
 |      Returns ``True`` if a new set of keys needs to be negotiated.  This
 |      will be triggered during a packet read or write, so it should be
 |      checked after every read or write, or at least after every few.
 |
 |  read_all(self, n, check_rekey=False)
 |      Read as close to N bytes as possible, blocking as long as necessary.
 |
 |      :param int n: number of bytes to read
 |      :return: the data read, as a `str`
 |
 |      :raises:
 |          ``EOFError`` -- if the socket was closed before all the bytes could
 |          be read
 |
 |  read_message(self)
 |      Only one thread should ever be in this function (no other locking is
 |      done).
 |
 |      :raises: `.SSHException` -- if the packet is mangled
 |      :raises: `.NeedRekeyException` -- if the transport should rekey
 |
 |  read_timer(self)
 |
 |  readline(self, timeout)
 |      Read a line from the socket.  We assume no data is pending after the
 |      line, so it's okay to attempt large reads.
 |
 |  reset_seqno_in(self)
 |
 |  reset_seqno_out(self)
 |
 |  send_message(self, data)
 |      Write a block of data using the current cipher, as an SSH block.
 |
 |  set_hexdump(self, hexdump)
 |
 |  set_inbound_cipher(self, block_engine, block_size, mac_engine, mac_size, mac_key, etm=False, aead=False, iv_in=None)
 |      Switch inbound data cipher.
 |      :param etm: Set encrypt-then-mac from OpenSSH
 |
 |  set_inbound_compressor(self, compressor)
 |
 |  set_keepalive(self, interval, callback)
 |      Turn on/off the callback keepalive.  If ``interval`` seconds pass with
 |      no data read from or written to the socket, the callback will be
 |      executed and the timer will be reset.
 |
 |  set_log(self, log)
 |      Set the Python log object to use for logging.
 |
 |  set_outbound_cipher(self, block_engine, block_size, mac_engine, mac_size, mac_key, sdctr=False, etm=False, aead=False, iv_out=None)
 |      Switch outbound data cipher.
 |      :param etm: Set encrypt-then-mac from OpenSSH
 |
 |  set_outbound_compressor(self, compressor)
 |
 |  start_handshake(self, timeout)
 |      Tells `Packetizer` that the handshake process started.
 |      Starts a book keeping timer that can signal a timeout in the
 |      handshake process.
 |
 |      :param float timeout: amount of seconds to wait before timing out
 |
 |  write_all(self, out)
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  REKEY_BYTES = 536870912
 |
 |  REKEY_BYTES_OVERFLOW_MAX = 536870912
 |
 |  REKEY_PACKETS = 536870912
 |
 |  REKEY_PACKETS_OVERFLOW_MAX = 536870912
paramiko.Password
Python Library Documentation: class Password in module paramiko.auth_strategy

class Password(AuthSource)
 |  Password(username, password_getter)
 |
 |  Password authentication.
 |
 |  :param callable password_getter:
 |      A lazy callable that should return a `str` password value at
 |      authentication time, such as a `functools.partial` wrapping
 |      `getpass.getpass`, an API call to a secrets store, or similar.
 |
 |      If you already know the password at instantiation time, you should
 |      simply use something like ``lambda: "my literal"`` (for a literal, but
 |      also, shame on you!) or ``lambda: variable_name`` (for something stored
 |      in a variable).
 |
 |  Method resolution order:
 |      Password
 |      AuthSource
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, username, password_getter)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AuthSource:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.PasswordRequiredException
Python Library Documentation: class PasswordRequiredException in module paramiko.ssh_exception

class PasswordRequiredException(AuthenticationException)
 |  Exception raised when a password is needed to unlock a private key file.
 |
 |  Method resolution order:
 |      PasswordRequiredException
 |      AuthenticationException
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.PrivateKey
Python Library Documentation: class PrivateKey in module paramiko.auth_strategy

class PrivateKey(AuthSource)
 |  PrivateKey(username)
 |
 |  Essentially a mixin for private keys.
 |
 |  Knows how to auth, but leaves key material discovery/loading/decryption to
 |  subclasses.
 |
 |  Subclasses **must** ensure that they've set ``self.pkey`` to a decrypted
 |  `.PKey` instance before calling ``super().authenticate``; typically
 |  either in their ``__init__``, or in an overridden ``authenticate`` prior to
 |  its `super` call.
 |
 |  Method resolution order:
 |      PrivateKey
 |      AuthSource
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  authenticate(self, transport)
 |      Perform authentication.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from AuthSource:
 |
 |  __init__(self, username)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from AuthSource:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ProxyCommand
Python Library Documentation: class ProxyCommand in module paramiko.proxy

class ProxyCommand(paramiko.util.ClosingContextManager)
 |  ProxyCommand(command_line)
 |
 |  Wraps a subprocess running ProxyCommand-driven programs.
 |
 |  This class implements a the socket-like interface needed by the
 |  `.Transport` and `.Packetizer` classes. Using this class instead of a
 |  regular socket makes it possible to talk with a Popen'd command that will
 |  proxy traffic between the client and a server hosted in another machine.
 |
 |  Instances of this class may be used as context managers.
 |
 |  Method resolution order:
 |      ProxyCommand
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, command_line)
 |      Create a new CommandProxy instance. The instance created by this
 |      class can be passed as an argument to the `.Transport` class.
 |
 |      :param str command_line:
 |          the command that should be executed and used as the proxy.
 |
 |  close(self)
 |
 |  recv(self, size)
 |      Read from the standard output of the forked program.
 |
 |      :param int size: how many chars should be read
 |
 |      :return: the string of bytes read, which may be shorter than requested
 |
 |  send(self, content)
 |      Write the content received from the SSH client to the standard
 |      input of the forked command.
 |
 |      :param str content: string to be sent to the forked command
 |
 |  settimeout(self, timeout)
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ProxyCommandFailure
Python Library Documentation: class ProxyCommandFailure in module paramiko.ssh_exception

class ProxyCommandFailure(SSHException)
 |  ProxyCommandFailure(command, error)
 |
 |  The "ProxyCommand" found in the .ssh/config file returned an error.
 |
 |  :param str command: The command line that is generating this exception.
 |  :param str error: The error captured from the proxy command output.
 |
 |  Method resolution order:
 |      ProxyCommandFailure
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, command, error)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from SSHException:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.PublicBlob
Python Library Documentation: class PublicBlob in module paramiko.pkey

class PublicBlob(builtins.object)
 |  PublicBlob(type_, blob, comment=None)
 |
 |  OpenSSH plain public key or OpenSSH signed public key (certificate).
 |
 |  Tries to be as dumb as possible and barely cares about specific
 |  per-key-type data.
 |
 |  .. note::
 |
 |      Most of the time you'll want to call `from_file`, `from_string` or
 |      `from_message` for useful instantiation, the main constructor is
 |      basically "I should be using ``attrs`` for this."
 |
 |  Methods defined here:
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __init__(self, type_, blob, comment=None)
 |      Create a new public blob of given type and contents.
 |
 |      :param str type_: Type indicator, eg ``ssh-rsa``.
 |      :param bytes blob: The blob bytes themselves.
 |      :param str comment: A comment, if one was given (e.g. file-based.)
 |
 |  __ne__(self, other)
 |      Return self!=value.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_file(filename)
 |      Create a public blob from a ``-cert.pub``-style file on disk.
 |
 |  from_message(message)
 |      Create a public blob from a network `.Message`.
 |
 |      Specifically, a cert-bearing pubkey auth packet, because by definition
 |      OpenSSH-style certificates 'are' their own network representation."
 |
 |  from_string(string)
 |      Create a public blob from a ``-cert.pub``-style string.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  __hash__ = None
paramiko.RSAKey
Python Library Documentation: class RSAKey in module paramiko.rsakey

class RSAKey(paramiko.pkey.PKey)
 |  RSAKey(msg=None, data=None, filename=None, password=None, key=None, file_obj=None)
 |
 |  Representation of an RSA key which can be used to sign and verify SSH2
 |  data.
 |
 |  Method resolution order:
 |      RSAKey
 |      paramiko.pkey.PKey
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, msg=None, data=None, filename=None, password=None, key=None, file_obj=None)
 |      Create a new instance of this public key type.  If ``msg`` is given,
 |      the key's public part(s) will be filled in from the message.  If
 |      ``data`` is given, the key's public part(s) will be filled in from
 |      the string.
 |
 |      :param .Message msg:
 |          an optional SSH `.Message` containing a public key of this type.
 |      :param bytes data:
 |          optional, the bytes of a public key of this type
 |
 |      :raises: `.SSHException` --
 |          if a key cannot be created from the ``data`` or ``msg`` given, or
 |          no key was passed in.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  _decode_key(self, data)
 |
 |  _from_private_key(self, file_obj, password)
 |
 |  _from_private_key_file(self, filename, password)
 |
 |  asbytes(self)
 |      Return a string of an SSH `.Message` made up of the public part(s) of
 |      this key.  This string is suitable for passing to `__init__` to
 |      re-create the key object later.
 |
 |  can_sign(self)
 |      Return ``True`` if this key has the private part necessary for signing
 |      data.
 |
 |  get_bits(self)
 |      Return the number of significant bits in this key.  This is useful
 |      for judging the relative security of a key.
 |
 |      :return: bits in the key (as an `int`)
 |
 |  get_name(self)
 |      Return the name of this private key implementation.
 |
 |      :return:
 |          name of this private key type, in SSH terminology, as a `str` (for
 |          example, ``"ssh-rsa"``).
 |
 |  sign_ssh_data(self, data, algorithm=None)
 |      Sign a blob of data with this private key, and return a `.Message`
 |      representing an SSH signature message.
 |
 |      :param bytes data:
 |          the data to sign.
 |      :param str algorithm:
 |          the signature algorithm to use, if different from the key's
 |          internal name. Default: ``None``.
 |      :return: an SSH signature `message <.Message>`.
 |
 |      .. versionchanged:: 2.9
 |          Added the ``algorithm`` kwarg.
 |
 |  verify_ssh_sig(self, data, msg)
 |      Given a blob of data, and an SSH message representing a signature of
 |      that data, verify that it was signed with this key.
 |
 |      :param bytes data: the data that was signed.
 |      :param .Message msg: an SSH signature message
 |      :return:
 |          ``True`` if the signature verifies correctly; ``False`` otherwise.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  identifiers()
 |      returns an iterable of key format/name strings this class can handle.
 |
 |      Most classes only have a single identifier, and thus this default
 |      implementation suffices; see `.ECDSAKey` for one example of an
 |      override.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  generate(bits, progress_func=None)
 |      Generate a new private RSA key.  This factory function can be used to
 |      generate a new host key or authentication key.
 |
 |      :param int bits: number of bits the generated key should be.
 |      :param progress_func: Unused
 |      :return: new `.RSAKey` private key
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  _fields
 |
 |  private_key
 |
 |  public_numbers
 |
 |  size
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  HASHES = {'rsa-sha2-256': <class 'cryptography.hazmat.primitives.hashe...
 |
 |  name = 'ssh-rsa'
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.pkey.PKey:
 |
 |  __bytes__(self)
 |
 |  __eq__(self, other)
 |      Return self==value.
 |
 |  __hash__(self)
 |      Return hash(self).
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  _check_type_and_load_cert(self, msg, key_type, cert_type)
 |      Perform message type-checking & optional certificate loading.
 |
 |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
 |      that the subsequent fields are the key numbers; thus the caller may
 |      expect to treat the message as key material afterwards either way.
 |
 |      The obtained key type is returned for classes which need to know what
 |      it was (e.g. ECDSA.)
 |
 |  _got_bad_key_format_id(self, id_)
 |
 |  _read_private_key(self, tag, f, password=None)
 |
 |  _read_private_key_file(self, tag, filename, password=None)
 |      Read an SSH2-format private key file, looking for a string of the type
 |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
 |      find, and return it as a string.  If the private key is encrypted and
 |      ``password`` is not ``None``, the given password will be used to
 |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
 |
 |      :param str tag:
 |          ``"RSA"`` (or etc), the tag used to mark the data block.
 |      :param str filename:
 |          name of the file to read.
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted.
 |      :return:
 |          the `bytes` that make up the private key.
 |
 |      :raises: ``IOError`` -- if there was an error reading the file.
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``.
 |      :raises: `.SSHException` -- if the key file is invalid.
 |
 |  _read_private_key_openssh(self, lines, password)
 |      Read the new OpenSSH SSH2 private key format available
 |      since OpenSSH version 6.5
 |      Reference:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
 |
 |  _read_private_key_pem(self, lines, end, password)
 |
 |  _uint32_cstruct_unpack(self, data, strformat)
 |      Used to read new OpenSSH private key format.
 |      Unpacks a c data structure containing a mix of 32-bit uints and
 |      variable length strings prefixed by 32-bit uint size field,
 |      according to the specified format. Returns the unpacked vars
 |      in a tuple.
 |      Format strings:
 |        s - denotes a string
 |        i - denotes a long integer, encoded as a byte string
 |        u - denotes a 32-bit unsigned integer
 |        r - the remainder of the input string, returned as a string
 |
 |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
 |
 |  get_base64(self)
 |      Return a base64 string containing the public part of this key.  Nothing
 |      secret is revealed.  This format is compatible with that used to store
 |      public key files or recognized host keys.
 |
 |      :return: a base64 `string <str>` containing the public part of the key.
 |
 |  get_fingerprint(self)
 |      Return an MD5 fingerprint of the public part of this key.  Nothing
 |      secret is revealed.
 |
 |      :return:
 |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
 |          format.
 |
 |  load_certificate(self, value)
 |      Supplement the private key contents with data loaded from an OpenSSH
 |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
 |      containing such a file, or a `.Message` object.
 |
 |      The .pub contents adds no real value, since the private key
 |      file includes sufficient information to derive the public
 |      key info. For certificates, however, this can be used on
 |      the client side to offer authentication requests to the server
 |      based on certificate instead of raw public key.
 |
 |      See:
 |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
 |
 |      Note: very little effort is made to validate the certificate contents,
 |      that is for the server to decide if it is good enough to authenticate
 |      successfully.
 |
 |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file (or file-like) object.  If the
 |      password is not ``None``, the key is encrypted before writing.
 |
 |      :param file_obj: the file-like object to write into
 |      :param str password: an optional password to use to encrypt the key
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing to the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
 |      Write private key contents into a file.  If the password is not
 |      ``None``, the key is encrypted before writing.
 |
 |      :param str filename: name of the file to write
 |      :param str password:
 |          an optional password to use to encrypt the key file
 |      :param FileFormat file_format:
 |          what format+encoding pair to use; defaults to the original
 |          behavior, namely PEM.
 |
 |      :raises: ``IOError`` -- if there was an error writing the file
 |      :raises: `.SSHException` -- if the key is invalid
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from paramiko.pkey.PKey:
 |
 |  from_private_key(file_obj, password=None)
 |      Create a key object by reading a private key from a file (or file-like)
 |      object.  If the private key is encrypted and ``password`` is not
 |      ``None``, the given password will be used to decrypt the key (otherwise
 |      `.PasswordRequiredException` is thrown).
 |
 |      :param file_obj: the file-like object to read from
 |      :param str password:
 |          an optional password to use to decrypt the key, if it's encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the key
 |      :raises: `.PasswordRequiredException` --
 |          if the private key file is encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  from_private_key_file(filename, password=None)
 |      Create a key object by reading a private key file.  If the private
 |      key is encrypted and ``password`` is not ``None``, the given password
 |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
 |      is thrown).  Through the magic of Python, this factory method will
 |      exist in all subclasses of PKey (such as `.RSAKey`), but
 |      is useless on the abstract PKey class.
 |
 |      :param str filename: name of the file to read
 |      :param str password:
 |          an optional password to use to decrypt the key file, if it's
 |          encrypted
 |      :return: a new `.PKey` based on the given private key
 |
 |      :raises: ``IOError`` -- if there was an error reading the file
 |      :raises: `.PasswordRequiredException` -- if the private key file is
 |          encrypted, and ``password`` is ``None``
 |      :raises: `.SSHException` -- if the key file is invalid
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from paramiko.pkey.PKey:
 |
 |  from_path(path, password: Optional[str] = None)
 |      Attempt to instantiate appropriate key subclass from given file path.
 |
 |      :param pathlib.Path path: The path to load (may also be a `str`).
 |      :param str password: Optional decryption password.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Renamed ``passphrase`` argument to ``password`` for consistency
 |          with older methods.
 |
 |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
 |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
 |
 |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
 |      will (if successful) return a new `.Ed25519Key`.
 |
 |      :param str key_type:
 |          The key type, eg ``"ssh-ed25519"``.
 |      :param bytes key_bytes:
 |          The raw byte data forming the key material, as expected by
 |          subclasses' ``data`` parameter.
 |      :param str password:
 |          Optional password used to decrypt ``key_bytes``.
 |
 |      :returns:
 |          A `PKey` subclass instance.
 |
 |      :raises:
 |          `UnknownKeyType`, if no registered classes knew about this type.
 |
 |      .. versionadded:: 3.2
 |      .. versionchanged:: 5.0
 |          Added the ``password`` kwarg.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.pkey.PKey:
 |
 |  algorithm_name
 |      Return the key algorithm identifier for this key.
 |
 |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
 |      protocol field value.
 |
 |  fingerprint
 |      Modern fingerprint property designed to be comparable to OpenSSH.
 |
 |      Currently only does SHA256 (the OpenSSH default).
 |
 |      .. versionadded:: 3.2
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.pkey.PKey:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.pkey.PKey:
 |
 |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
 |
 |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
 |
 |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
 |
 |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
 |
 |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1
paramiko.RejectPolicy
Python Library Documentation: class RejectPolicy in module paramiko.client

class RejectPolicy(MissingHostKeyPolicy)
 |  Policy for automatically rejecting the unknown hostname & key.  This is
 |  used by `.SSHClient`.
 |
 |  Method resolution order:
 |      RejectPolicy
 |      MissingHostKeyPolicy
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  missing_host_key(self, client, hostname, key)
 |      Called when an `.SSHClient` receives a server key for a server that
 |      isn't in either the system or local `.HostKeys` object.  To accept
 |      the key, simply return.  To reject, raised an exception (which will
 |      be passed to the calling application).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from MissingHostKeyPolicy:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.SFTP
Python Library Documentation: class SFTP in module paramiko.sftp_client

class SFTP(SFTPClient)
 |  SFTP(sock)
 |
 |  An alias for `.SFTPClient` for backwards compatibility.
 |
 |  Method resolution order:
 |      SFTP
 |      SFTPClient
 |      paramiko.sftp.BaseSFTP
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods inherited from SFTPClient:
 |
 |  __init__(self, sock)
 |      Create an SFTP client from an existing `.Channel`.  The channel
 |      should already have requested the ``"sftp"`` subsystem.
 |
 |      An alternate way to create an SFTP client context is by using
 |      `from_transport`.
 |
 |      :param .Channel sock: an open `.Channel` using the ``"sftp"`` subsystem
 |
 |      :raises:
 |          `.SSHException` -- if there's an exception while negotiating sftp
 |
 |  chdir(self, path=None)
 |      Change the "current directory" of this SFTP session.  Since SFTP
 |      doesn't really have the concept of a current working directory, this is
 |      emulated by Paramiko.  Once you use this method to set a working
 |      directory, all operations on this `.SFTPClient` object will be relative
 |      to that path. You can pass in ``None`` to stop using a current working
 |      directory.
 |
 |      :param str path: new current working directory
 |
 |      :raises:
 |          ``IOError`` -- if the requested path doesn't exist on the server
 |
 |      .. versionadded:: 1.4
 |
 |  chmod(self, path, mode)
 |      Change the mode (permissions) of a file.  The permissions are
 |      unix-style and identical to those used by Python's `os.chmod`
 |      function.
 |
 |      :param str path: path of the file to change the permissions of
 |      :param int mode: new permissions
 |
 |  chown(self, path, uid, gid)
 |      Change the owner (``uid``) and group (``gid``) of a file.  As with
 |      Python's `os.chown` function, you must pass both arguments, so if you
 |      only want to change one, use `stat` first to retrieve the current
 |      owner and group.
 |
 |      :param str path: path of the file to change the owner and group of
 |      :param int uid: new owner's uid
 |      :param int gid: new group id
 |
 |  close(self)
 |      Close the SFTP session and its underlying channel.
 |
 |      .. versionadded:: 1.4
 |
 |  file = open(self, filename, mode='r', bufsize=-1)
 |
 |  get(self, remotepath, localpath, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
 |      Copy a remote file (``remotepath``) from the SFTP server to the local
 |      host as ``localpath``.  Any exception raised by operations will be
 |      passed through.  This method is primarily provided as a convenience.
 |
 |      :param str remotepath: the remote file to copy
 |      :param str localpath: the destination path on the local host
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool prefetch:
 |          controls whether prefetching is performed (default: True)
 |      :param int max_concurrent_prefetch_requests:
 |          The maximum number of concurrent read requests to prefetch.
 |          When this is ``None`` (the default), do not limit the number of
 |          concurrent prefetch requests. Note: OpenSSH's sftp internally
 |          imposes a limit of 64 concurrent requests, while Paramiko imposes
 |          no limit by default; consider setting a limit if a file can be
 |          successfully received with sftp but hangs with Paramiko.
 |
 |      .. versionadded:: 1.4
 |      .. versionchanged:: 1.7.4
 |          Added the ``callback`` param
 |      .. versionchanged:: 2.8
 |          Added the ``prefetch`` keyword argument.
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_prefetch_requests``.
 |
 |  get_channel(self)
 |      Return the underlying `.Channel` object for this SFTP session.  This
 |      might be useful for doing things like setting a timeout on the channel.
 |
 |      .. versionadded:: 1.7.1
 |
 |  getcwd(self)
 |      Return the "current working directory" for this SFTP session, as
 |      emulated by Paramiko.  If no directory has been set with `chdir`,
 |      this method will return ``None``.
 |
 |      .. versionadded:: 1.4
 |
 |  getfo(self, remotepath, fl, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
 |      Copy a remote file (``remotepath``) from the SFTP server and write to
 |      an open file or file-like object, ``fl``.  Any exception raised by
 |      operations will be passed through.  This method is primarily provided
 |      as a convenience.
 |
 |      :param object remotepath: opened file or file-like object to copy to
 |      :param str fl:
 |          the destination path on the local host or open file object
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool prefetch:
 |          controls whether prefetching is performed (default: True)
 |      :param int max_concurrent_prefetch_requests:
 |          The maximum number of concurrent read requests to prefetch. See
 |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
 |          for details.
 |      :return: the `number <int>` of bytes written to the opened file object
 |
 |      .. versionadded:: 1.10
 |      .. versionchanged:: 2.8
 |          Added the ``prefetch`` keyword argument.
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_prefetch_requests``.
 |
 |  listdir(self, path='.')
 |      Return a list containing the names of the entries in the given
 |      ``path``.
 |
 |      The list is in arbitrary order.  It does not include the special
 |      entries ``'.'`` and ``'..'`` even if they are present in the folder.
 |      This method is meant to mirror ``os.listdir`` as closely as possible.
 |      For a list of full `.SFTPAttributes` objects, see `listdir_attr`.
 |
 |      :param str path: path to list (defaults to ``'.'``)
 |
 |  listdir_attr(self, path='.')
 |      Return a list containing `.SFTPAttributes` objects corresponding to
 |      files in the given ``path``.  The list is in arbitrary order.  It does
 |      not include the special entries ``'.'`` and ``'..'`` even if they are
 |      present in the folder.
 |
 |      The returned `.SFTPAttributes` objects will each have an additional
 |      field: ``longname``, which may contain a formatted string of the file's
 |      attributes, in unix format.  The content of this string will probably
 |      depend on the SFTP server implementation.
 |
 |      :param str path: path to list (defaults to ``'.'``)
 |      :return: list of `.SFTPAttributes` objects
 |
 |      .. versionadded:: 1.2
 |
 |  listdir_iter(self, path='.', read_aheads=50)
 |      Generator version of `.listdir_attr`.
 |
 |      See the API docs for `.listdir_attr` for overall details.
 |
 |      This function adds one more kwarg on top of `.listdir_attr`:
 |      ``read_aheads``, an integer controlling how many
 |      ``SSH_FXP_READDIR`` requests are made to the server. The default of 50
 |      should suffice for most file listings as each request/response cycle
 |      may contain multiple files (dependent on server implementation.)
 |
 |      .. versionadded:: 1.15
 |
 |  lstat(self, path)
 |      Retrieve information about a file on the remote system, without
 |      following symbolic links (shortcuts).  This otherwise behaves exactly
 |      the same as `stat`.
 |
 |      :param str path: the filename to stat
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file
 |
 |  mkdir(self, path, mode=511)
 |      Create a folder (directory) named ``path`` with numeric mode ``mode``.
 |      The default mode is 0777 (octal).  On some systems, mode is ignored.
 |      Where it is used, the current umask value is first masked out.
 |
 |      :param str path: name of the folder to create
 |      :param int mode: permissions (posix-style) for the newly-created folder
 |
 |  normalize(self, path)
 |      Return the normalized path (on the server) of a given path.  This
 |      can be used to quickly resolve symbolic links or determine what the
 |      server is considering to be the "current folder" (by passing ``'.'``
 |      as ``path``).
 |
 |      :param str path: path to be normalized
 |      :return: normalized form of the given path (as a `str`)
 |
 |      :raises: ``IOError`` -- if the path can't be resolved on the server
 |
 |  open(self, filename, mode='r', bufsize=-1)
 |      Open a file on the remote server.  The arguments are the same as for
 |      Python's built-in `python:file` (aka `python:open`).  A file-like
 |      object is returned, which closely mimics the behavior of a normal
 |      Python file object, including the ability to be used as a context
 |      manager.
 |
 |      The mode indicates how the file is to be opened: ``'r'`` for reading,
 |      ``'w'`` for writing (truncating an existing file), ``'a'`` for
 |      appending, ``'r+'`` for reading/writing, ``'w+'`` for reading/writing
 |      (truncating an existing file), ``'a+'`` for reading/appending.  The
 |      Python ``'b'`` flag is ignored, since SSH treats all files as binary.
 |      The ``'U'`` flag is supported in a compatible way.
 |
 |      Since 1.5.2, an ``'x'`` flag indicates that the operation should only
 |      succeed if the file was created and did not previously exist.  This has
 |      no direct mapping to Python's file flags, but is commonly known as the
 |      ``O_EXCL`` flag in posix.
 |
 |      The file will be buffered in standard Python style by default, but
 |      can be altered with the ``bufsize`` parameter.  ``<=0`` turns off
 |      buffering, ``1`` uses line buffering, and any number greater than 1
 |      (``>1``) uses that specific buffer size.
 |
 |      :param str filename: name of the file to open
 |      :param str mode: mode (Python-style) to open in
 |      :param int bufsize: desired buffering (default: ``-1``)
 |      :return: an `.SFTPFile` object representing the open file
 |
 |      :raises: ``IOError`` -- if the file could not be opened.
 |
 |  posix_rename(self, oldpath, newpath)
 |      Rename a file or folder from ``oldpath`` to ``newpath``, following
 |      posix conventions.
 |
 |      :param str oldpath: existing name of the file or folder
 |      :param str newpath: new name for the file or folder, will be
 |          overwritten if it already exists
 |
 |      :raises:
 |          ``IOError`` -- if ``newpath`` is a folder, posix-rename is not
 |          supported by the server or something else goes wrong
 |
 |      :versionadded: 2.2
 |
 |  put(self, localpath, remotepath, callback=None, confirm=True)
 |      Copy a local file (``localpath``) to the SFTP server as ``remotepath``.
 |      Any exception raised by operations will be passed through.  This
 |      method is primarily provided as a convenience.
 |
 |      The SFTP operations use pipelining for speed.
 |
 |      :param str localpath: the local file to copy
 |      :param str remotepath: the destination path on the SFTP server. Note
 |          that the filename should be included. Only specifying a directory
 |          may result in an error.
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool confirm:
 |          whether to do a stat() on the file afterwards to confirm the file
 |          size
 |
 |      :return: an `.SFTPAttributes` object containing attributes about the
 |          given file
 |
 |      .. versionadded:: 1.4
 |      .. versionchanged:: 1.7.4
 |          ``callback`` and rich attribute return value added.
 |      .. versionchanged:: 1.7.7
 |          ``confirm`` param added.
 |
 |  putfo(self, fl, remotepath, file_size=0, callback=None, confirm=True)
 |      Copy the contents of an open file object (``fl``) to the SFTP server as
 |      ``remotepath``. Any exception raised by operations will be passed
 |      through.
 |
 |      The SFTP operations use pipelining for speed.
 |
 |      :param fl: opened file or file-like object to copy
 |      :param str remotepath: the destination path on the SFTP server
 |      :param int file_size:
 |          optional size parameter passed to callback. If none is specified,
 |          size defaults to 0
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |          (since 1.7.4)
 |      :param bool confirm:
 |          whether to do a stat() on the file afterwards to confirm the file
 |          size (since 1.7.7)
 |
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file.
 |
 |      .. versionadded:: 1.10
 |
 |  readlink(self, path)
 |      Return the target of a symbolic link (shortcut).  You can use
 |      `symlink` to create these.  The result may be either an absolute or
 |      relative pathname.
 |
 |      :param str path: path of the symbolic link file
 |      :return: target path, as a `str`
 |
 |  remove(self, path)
 |      Remove the file at the given path.  This only works on files; for
 |      removing folders (directories), use `rmdir`.
 |
 |      :param str path: path (absolute or relative) of the file to remove
 |
 |      :raises: ``IOError`` -- if the path refers to a folder (directory)
 |
 |  rename(self, oldpath, newpath)
 |      Rename a file or folder from ``oldpath`` to ``newpath``.
 |
 |      .. note::
 |          This method implements 'standard' SFTP ``RENAME`` behavior; those
 |          seeking the OpenSSH "POSIX rename" extension behavior should use
 |          `posix_rename`.
 |
 |      :param str oldpath:
 |          existing name of the file or folder
 |      :param str newpath:
 |          new name for the file or folder, must not exist already
 |
 |      :raises:
 |          ``IOError`` -- if ``newpath`` is a folder, or something else goes
 |          wrong
 |
 |  rmdir(self, path)
 |      Remove the folder named ``path``.
 |
 |      :param str path: name of the folder to remove
 |
 |  stat(self, path)
 |      Retrieve information about a file on the remote system.  The return
 |      value is an object whose attributes correspond to the attributes of
 |      Python's ``stat`` structure as returned by ``os.stat``, except that it
 |      contains fewer fields.  An SFTP server may return as much or as little
 |      info as it wants, so the results may vary from server to server.
 |
 |      Unlike a Python `python:stat` object, the result may not be accessed as
 |      a tuple.  This is mostly due to the author's slack factor.
 |
 |      The fields supported are: ``st_mode``, ``st_size``, ``st_uid``,
 |      ``st_gid``, ``st_atime``, and ``st_mtime``.
 |
 |      :param str path: the filename to stat
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file
 |
 |  symlink(self, source, dest)
 |      Create a symbolic link to the ``source`` path at ``destination``.
 |
 |      :param str source: path of the original file
 |      :param str dest: path of the newly created symlink
 |
 |  truncate(self, path, size)
 |      Change the size of the file specified by ``path``.  This usually
 |      extends or shrinks the size of the file, just like the `~file.truncate`
 |      method on Python file objects.
 |
 |      :param str path: path of the file to modify
 |      :param int size: the new size of the file
 |
 |  unlink = remove(self, path)
 |
 |  utime(self, path, times)
 |      Set the access and modified times of the file specified by ``path``.
 |      If ``times`` is ``None``, then the file's access and modified times
 |      are set to the current time.  Otherwise, ``times`` must be a 2-tuple
 |      of numbers, of the form ``(atime, mtime)``, which is used to set the
 |      access and modified times, respectively.  This bizarre API is mimicked
 |      from Python for the sake of consistency -- I apologize.
 |
 |      :param str path: path of the file to modify
 |      :param tuple times:
 |          ``None`` or a tuple of (access time, modified time) in standard
 |          internet epoch time (seconds since 01 January 1970 GMT)
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from SFTPClient:
 |
 |  from_transport(t, window_size=None, max_packet_size=None)
 |      Create an SFTP client channel from an open `.Transport`.
 |
 |      Setting the window and packet sizes might affect the transfer speed.
 |      The default settings in the `.Transport` class are the same as in
 |      OpenSSH and should work adequately for both files transfers and
 |      interactive sessions.
 |
 |      :param .Transport t: an open `.Transport` which is already
 |          authenticated
 |      :param int window_size:
 |          optional window size for the `.SFTPClient` session.
 |      :param int max_packet_size:
 |          optional max packet size for the `.SFTPClient` session..
 |
 |      :return:
 |          a new `.SFTPClient` object, referring to an sftp session (channel)
 |          across the transport
 |
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
paramiko.SFTPAttributes
Python Library Documentation: class SFTPAttributes in module paramiko.sftp_attr

class SFTPAttributes(builtins.object)
 |  Representation of the attributes of a file (or proxied file) for SFTP in
 |  client or server mode.  It attempts to mirror the object returned by
 |  `os.stat` as closely as possible, so it may have the following fields,
 |  with the same meanings as those returned by an `os.stat` object:
 |
 |      - ``st_size``
 |      - ``st_uid``
 |      - ``st_gid``
 |      - ``st_mode``
 |      - ``st_atime``
 |      - ``st_mtime``
 |
 |  Because SFTP allows flags to have other arbitrary named attributes, these
 |  are stored in a dict named ``attr``.  Occasionally, the filename is also
 |  stored, in ``filename``.
 |
 |  Methods defined here:
 |
 |  __init__(self)
 |      Create a new (empty) SFTPAttributes object.  All fields will be empty.
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  __str__(self)
 |      create a unix-style long description of the file (like ls -l)
 |
 |  asbytes(self)
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_stat(obj, filename=None)
 |      Create an `.SFTPAttributes` object from an existing ``stat`` object (an
 |      object returned by `os.stat`).
 |
 |      :param object obj: an object returned by `os.stat` (or equivalent).
 |      :param str filename: the filename associated with this file.
 |      :return: new `.SFTPAttributes` object with the same attribute fields.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  FLAG_AMTIME = 8
 |
 |  FLAG_EXTENDED = 2147483648
 |
 |  FLAG_PERMISSIONS = 4
 |
 |  FLAG_SIZE = 1
 |
 |  FLAG_UIDGID = 2
paramiko.SFTPClient
Python Library Documentation: class SFTPClient in module paramiko.sftp_client

class SFTPClient(paramiko.sftp.BaseSFTP, paramiko.util.ClosingContextManager)
 |  SFTPClient(sock)
 |
 |  SFTP client object.
 |
 |  Used to open an SFTP session across an open SSH `.Transport` and perform
 |  remote file operations.
 |
 |  Instances of this class may be used as context managers.
 |
 |  Method resolution order:
 |      SFTPClient
 |      paramiko.sftp.BaseSFTP
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, sock)
 |      Create an SFTP client from an existing `.Channel`.  The channel
 |      should already have requested the ``"sftp"`` subsystem.
 |
 |      An alternate way to create an SFTP client context is by using
 |      `from_transport`.
 |
 |      :param .Channel sock: an open `.Channel` using the ``"sftp"`` subsystem
 |
 |      :raises:
 |          `.SSHException` -- if there's an exception while negotiating sftp
 |
 |  chdir(self, path=None)
 |      Change the "current directory" of this SFTP session.  Since SFTP
 |      doesn't really have the concept of a current working directory, this is
 |      emulated by Paramiko.  Once you use this method to set a working
 |      directory, all operations on this `.SFTPClient` object will be relative
 |      to that path. You can pass in ``None`` to stop using a current working
 |      directory.
 |
 |      :param str path: new current working directory
 |
 |      :raises:
 |          ``IOError`` -- if the requested path doesn't exist on the server
 |
 |      .. versionadded:: 1.4
 |
 |  chmod(self, path, mode)
 |      Change the mode (permissions) of a file.  The permissions are
 |      unix-style and identical to those used by Python's `os.chmod`
 |      function.
 |
 |      :param str path: path of the file to change the permissions of
 |      :param int mode: new permissions
 |
 |  chown(self, path, uid, gid)
 |      Change the owner (``uid``) and group (``gid``) of a file.  As with
 |      Python's `os.chown` function, you must pass both arguments, so if you
 |      only want to change one, use `stat` first to retrieve the current
 |      owner and group.
 |
 |      :param str path: path of the file to change the owner and group of
 |      :param int uid: new owner's uid
 |      :param int gid: new group id
 |
 |  close(self)
 |      Close the SFTP session and its underlying channel.
 |
 |      .. versionadded:: 1.4
 |
 |  file = open(self, filename, mode='r', bufsize=-1)
 |
 |  get(self, remotepath, localpath, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
 |      Copy a remote file (``remotepath``) from the SFTP server to the local
 |      host as ``localpath``.  Any exception raised by operations will be
 |      passed through.  This method is primarily provided as a convenience.
 |
 |      :param str remotepath: the remote file to copy
 |      :param str localpath: the destination path on the local host
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool prefetch:
 |          controls whether prefetching is performed (default: True)
 |      :param int max_concurrent_prefetch_requests:
 |          The maximum number of concurrent read requests to prefetch.
 |          When this is ``None`` (the default), do not limit the number of
 |          concurrent prefetch requests. Note: OpenSSH's sftp internally
 |          imposes a limit of 64 concurrent requests, while Paramiko imposes
 |          no limit by default; consider setting a limit if a file can be
 |          successfully received with sftp but hangs with Paramiko.
 |
 |      .. versionadded:: 1.4
 |      .. versionchanged:: 1.7.4
 |          Added the ``callback`` param
 |      .. versionchanged:: 2.8
 |          Added the ``prefetch`` keyword argument.
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_prefetch_requests``.
 |
 |  get_channel(self)
 |      Return the underlying `.Channel` object for this SFTP session.  This
 |      might be useful for doing things like setting a timeout on the channel.
 |
 |      .. versionadded:: 1.7.1
 |
 |  getcwd(self)
 |      Return the "current working directory" for this SFTP session, as
 |      emulated by Paramiko.  If no directory has been set with `chdir`,
 |      this method will return ``None``.
 |
 |      .. versionadded:: 1.4
 |
 |  getfo(self, remotepath, fl, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
 |      Copy a remote file (``remotepath``) from the SFTP server and write to
 |      an open file or file-like object, ``fl``.  Any exception raised by
 |      operations will be passed through.  This method is primarily provided
 |      as a convenience.
 |
 |      :param object remotepath: opened file or file-like object to copy to
 |      :param str fl:
 |          the destination path on the local host or open file object
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool prefetch:
 |          controls whether prefetching is performed (default: True)
 |      :param int max_concurrent_prefetch_requests:
 |          The maximum number of concurrent read requests to prefetch. See
 |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
 |          for details.
 |      :return: the `number <int>` of bytes written to the opened file object
 |
 |      .. versionadded:: 1.10
 |      .. versionchanged:: 2.8
 |          Added the ``prefetch`` keyword argument.
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_prefetch_requests``.
 |
 |  listdir(self, path='.')
 |      Return a list containing the names of the entries in the given
 |      ``path``.
 |
 |      The list is in arbitrary order.  It does not include the special
 |      entries ``'.'`` and ``'..'`` even if they are present in the folder.
 |      This method is meant to mirror ``os.listdir`` as closely as possible.
 |      For a list of full `.SFTPAttributes` objects, see `listdir_attr`.
 |
 |      :param str path: path to list (defaults to ``'.'``)
 |
 |  listdir_attr(self, path='.')
 |      Return a list containing `.SFTPAttributes` objects corresponding to
 |      files in the given ``path``.  The list is in arbitrary order.  It does
 |      not include the special entries ``'.'`` and ``'..'`` even if they are
 |      present in the folder.
 |
 |      The returned `.SFTPAttributes` objects will each have an additional
 |      field: ``longname``, which may contain a formatted string of the file's
 |      attributes, in unix format.  The content of this string will probably
 |      depend on the SFTP server implementation.
 |
 |      :param str path: path to list (defaults to ``'.'``)
 |      :return: list of `.SFTPAttributes` objects
 |
 |      .. versionadded:: 1.2
 |
 |  listdir_iter(self, path='.', read_aheads=50)
 |      Generator version of `.listdir_attr`.
 |
 |      See the API docs for `.listdir_attr` for overall details.
 |
 |      This function adds one more kwarg on top of `.listdir_attr`:
 |      ``read_aheads``, an integer controlling how many
 |      ``SSH_FXP_READDIR`` requests are made to the server. The default of 50
 |      should suffice for most file listings as each request/response cycle
 |      may contain multiple files (dependent on server implementation.)
 |
 |      .. versionadded:: 1.15
 |
 |  lstat(self, path)
 |      Retrieve information about a file on the remote system, without
 |      following symbolic links (shortcuts).  This otherwise behaves exactly
 |      the same as `stat`.
 |
 |      :param str path: the filename to stat
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file
 |
 |  mkdir(self, path, mode=511)
 |      Create a folder (directory) named ``path`` with numeric mode ``mode``.
 |      The default mode is 0777 (octal).  On some systems, mode is ignored.
 |      Where it is used, the current umask value is first masked out.
 |
 |      :param str path: name of the folder to create
 |      :param int mode: permissions (posix-style) for the newly-created folder
 |
 |  normalize(self, path)
 |      Return the normalized path (on the server) of a given path.  This
 |      can be used to quickly resolve symbolic links or determine what the
 |      server is considering to be the "current folder" (by passing ``'.'``
 |      as ``path``).
 |
 |      :param str path: path to be normalized
 |      :return: normalized form of the given path (as a `str`)
 |
 |      :raises: ``IOError`` -- if the path can't be resolved on the server
 |
 |  open(self, filename, mode='r', bufsize=-1)
 |      Open a file on the remote server.  The arguments are the same as for
 |      Python's built-in `python:file` (aka `python:open`).  A file-like
 |      object is returned, which closely mimics the behavior of a normal
 |      Python file object, including the ability to be used as a context
 |      manager.
 |
 |      The mode indicates how the file is to be opened: ``'r'`` for reading,
 |      ``'w'`` for writing (truncating an existing file), ``'a'`` for
 |      appending, ``'r+'`` for reading/writing, ``'w+'`` for reading/writing
 |      (truncating an existing file), ``'a+'`` for reading/appending.  The
 |      Python ``'b'`` flag is ignored, since SSH treats all files as binary.
 |      The ``'U'`` flag is supported in a compatible way.
 |
 |      Since 1.5.2, an ``'x'`` flag indicates that the operation should only
 |      succeed if the file was created and did not previously exist.  This has
 |      no direct mapping to Python's file flags, but is commonly known as the
 |      ``O_EXCL`` flag in posix.
 |
 |      The file will be buffered in standard Python style by default, but
 |      can be altered with the ``bufsize`` parameter.  ``<=0`` turns off
 |      buffering, ``1`` uses line buffering, and any number greater than 1
 |      (``>1``) uses that specific buffer size.
 |
 |      :param str filename: name of the file to open
 |      :param str mode: mode (Python-style) to open in
 |      :param int bufsize: desired buffering (default: ``-1``)
 |      :return: an `.SFTPFile` object representing the open file
 |
 |      :raises: ``IOError`` -- if the file could not be opened.
 |
 |  posix_rename(self, oldpath, newpath)
 |      Rename a file or folder from ``oldpath`` to ``newpath``, following
 |      posix conventions.
 |
 |      :param str oldpath: existing name of the file or folder
 |      :param str newpath: new name for the file or folder, will be
 |          overwritten if it already exists
 |
 |      :raises:
 |          ``IOError`` -- if ``newpath`` is a folder, posix-rename is not
 |          supported by the server or something else goes wrong
 |
 |      :versionadded: 2.2
 |
 |  put(self, localpath, remotepath, callback=None, confirm=True)
 |      Copy a local file (``localpath``) to the SFTP server as ``remotepath``.
 |      Any exception raised by operations will be passed through.  This
 |      method is primarily provided as a convenience.
 |
 |      The SFTP operations use pipelining for speed.
 |
 |      :param str localpath: the local file to copy
 |      :param str remotepath: the destination path on the SFTP server. Note
 |          that the filename should be included. Only specifying a directory
 |          may result in an error.
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |      :param bool confirm:
 |          whether to do a stat() on the file afterwards to confirm the file
 |          size
 |
 |      :return: an `.SFTPAttributes` object containing attributes about the
 |          given file
 |
 |      .. versionadded:: 1.4
 |      .. versionchanged:: 1.7.4
 |          ``callback`` and rich attribute return value added.
 |      .. versionchanged:: 1.7.7
 |          ``confirm`` param added.
 |
 |  putfo(self, fl, remotepath, file_size=0, callback=None, confirm=True)
 |      Copy the contents of an open file object (``fl``) to the SFTP server as
 |      ``remotepath``. Any exception raised by operations will be passed
 |      through.
 |
 |      The SFTP operations use pipelining for speed.
 |
 |      :param fl: opened file or file-like object to copy
 |      :param str remotepath: the destination path on the SFTP server
 |      :param int file_size:
 |          optional size parameter passed to callback. If none is specified,
 |          size defaults to 0
 |      :param callable callback:
 |          optional callback function (form: ``func(int, int)``) that accepts
 |          the bytes transferred so far and the total bytes to be transferred
 |          (since 1.7.4)
 |      :param bool confirm:
 |          whether to do a stat() on the file afterwards to confirm the file
 |          size (since 1.7.7)
 |
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file.
 |
 |      .. versionadded:: 1.10
 |
 |  readlink(self, path)
 |      Return the target of a symbolic link (shortcut).  You can use
 |      `symlink` to create these.  The result may be either an absolute or
 |      relative pathname.
 |
 |      :param str path: path of the symbolic link file
 |      :return: target path, as a `str`
 |
 |  remove(self, path)
 |      Remove the file at the given path.  This only works on files; for
 |      removing folders (directories), use `rmdir`.
 |
 |      :param str path: path (absolute or relative) of the file to remove
 |
 |      :raises: ``IOError`` -- if the path refers to a folder (directory)
 |
 |  rename(self, oldpath, newpath)
 |      Rename a file or folder from ``oldpath`` to ``newpath``.
 |
 |      .. note::
 |          This method implements 'standard' SFTP ``RENAME`` behavior; those
 |          seeking the OpenSSH "POSIX rename" extension behavior should use
 |          `posix_rename`.
 |
 |      :param str oldpath:
 |          existing name of the file or folder
 |      :param str newpath:
 |          new name for the file or folder, must not exist already
 |
 |      :raises:
 |          ``IOError`` -- if ``newpath`` is a folder, or something else goes
 |          wrong
 |
 |  rmdir(self, path)
 |      Remove the folder named ``path``.
 |
 |      :param str path: name of the folder to remove
 |
 |  stat(self, path)
 |      Retrieve information about a file on the remote system.  The return
 |      value is an object whose attributes correspond to the attributes of
 |      Python's ``stat`` structure as returned by ``os.stat``, except that it
 |      contains fewer fields.  An SFTP server may return as much or as little
 |      info as it wants, so the results may vary from server to server.
 |
 |      Unlike a Python `python:stat` object, the result may not be accessed as
 |      a tuple.  This is mostly due to the author's slack factor.
 |
 |      The fields supported are: ``st_mode``, ``st_size``, ``st_uid``,
 |      ``st_gid``, ``st_atime``, and ``st_mtime``.
 |
 |      :param str path: the filename to stat
 |      :return:
 |          an `.SFTPAttributes` object containing attributes about the given
 |          file
 |
 |  symlink(self, source, dest)
 |      Create a symbolic link to the ``source`` path at ``destination``.
 |
 |      :param str source: path of the original file
 |      :param str dest: path of the newly created symlink
 |
 |  truncate(self, path, size)
 |      Change the size of the file specified by ``path``.  This usually
 |      extends or shrinks the size of the file, just like the `~file.truncate`
 |      method on Python file objects.
 |
 |      :param str path: path of the file to modify
 |      :param int size: the new size of the file
 |
 |  unlink = remove(self, path)
 |
 |  utime(self, path, times)
 |      Set the access and modified times of the file specified by ``path``.
 |      If ``times`` is ``None``, then the file's access and modified times
 |      are set to the current time.  Otherwise, ``times`` must be a 2-tuple
 |      of numbers, of the form ``(atime, mtime)``, which is used to set the
 |      access and modified times, respectively.  This bizarre API is mimicked
 |      from Python for the sake of consistency -- I apologize.
 |
 |      :param str path: path of the file to modify
 |      :param tuple times:
 |          ``None`` or a tuple of (access time, modified time) in standard
 |          internet epoch time (seconds since 01 January 1970 GMT)
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_transport(t, window_size=None, max_packet_size=None)
 |      Create an SFTP client channel from an open `.Transport`.
 |
 |      Setting the window and packet sizes might affect the transfer speed.
 |      The default settings in the `.Transport` class are the same as in
 |      OpenSSH and should work adequately for both files transfers and
 |      interactive sessions.
 |
 |      :param .Transport t: an open `.Transport` which is already
 |          authenticated
 |      :param int window_size:
 |          optional window size for the `.SFTPClient` session.
 |      :param int max_packet_size:
 |          optional max packet size for the `.SFTPClient` session..
 |
 |      :return:
 |          a new `.SFTPClient` object, referring to an sftp session (channel)
 |          across the transport
 |
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
paramiko.SFTPError
Python Library Documentation: class SFTPError in module paramiko.sftp

class SFTPError(builtins.Exception)
 |  Method resolution order:
 |      SFTPError
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors defined here:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.SFTPFile
Python Library Documentation: class SFTPFile in module paramiko.sftp_file

class SFTPFile(paramiko.file.BufferedFile)
 |  SFTPFile(sftp, handle, mode='r', bufsize=-1)
 |
 |  Proxy object for a file on the remote server, in client mode SFTP.
 |
 |  Instances of this class may be used as context managers in the same way
 |  that built-in Python file objects are.
 |
 |  Method resolution order:
 |      SFTPFile
 |      paramiko.file.BufferedFile
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __del__(self)
 |
 |  __init__(self, sftp, handle, mode='r', bufsize=-1)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  check(self, hash_algorithm, offset=0, length=0, block_size=0)
 |      Ask the server for a hash of a section of this file.  This can be used
 |      to verify a successful upload or download, or for various rsync-like
 |      operations.
 |
 |      The file is hashed from ``offset``, for ``length`` bytes.
 |      If ``length`` is 0, the remainder of the file is hashed.  Thus, if both
 |      ``offset`` and ``length`` are zero, the entire file is hashed.
 |
 |      Normally, ``block_size`` will be 0 (the default), and this method will
 |      return a byte string representing the requested hash (for example, a
 |      string of length 16 for MD5, or 20 for SHA-1).  If a non-zero
 |      ``block_size`` is given, each chunk of the file (from ``offset`` to
 |      ``offset + length``) of ``block_size`` bytes is computed as a separate
 |      hash.  The hash results are all concatenated and returned as a single
 |      string.
 |
 |      For example, ``check('sha1', 0, 1024, 512)`` will return a string of
 |      length 40.  The first 20 bytes will be the SHA-1 of the first 512 bytes
 |      of the file, and the last 20 bytes will be the SHA-1 of the next 512
 |      bytes.
 |
 |      :param str hash_algorithm:
 |          the name of the hash algorithm to use (normally ``"sha1"`` or
 |          ``"md5"``)
 |      :param offset:
 |          offset into the file to begin hashing (0 means to start from the
 |          beginning)
 |      :param length:
 |          number of bytes to hash (0 means continue to the end of the file)
 |      :param int block_size:
 |          number of bytes to hash per result (must not be less than 256; 0
 |          means to compute only one hash of the entire segment)
 |      :return:
 |          `str` of bytes representing the hash of each block, concatenated
 |          together
 |
 |      :raises:
 |          ``IOError`` -- if the server doesn't support the "check-file"
 |          extension, or possibly doesn't support the hash algorithm requested
 |
 |      .. note:: Many (most?) servers don't support this extension yet.
 |
 |      .. versionadded:: 1.4
 |
 |  chmod(self, mode)
 |      Change the mode (permissions) of this file.  The permissions are
 |      unix-style and identical to those used by Python's `os.chmod`
 |      function.
 |
 |      :param int mode: new permissions
 |
 |  chown(self, uid, gid)
 |      Change the owner (``uid``) and group (``gid``) of this file.  As with
 |      Python's `os.chown` function, you must pass both arguments, so if you
 |      only want to change one, use `stat` first to retrieve the current
 |      owner and group.
 |
 |      :param int uid: new owner's uid
 |      :param int gid: new group id
 |
 |  close(self)
 |      Close the file.
 |
 |  gettimeout(self)
 |      Returns the timeout in seconds (as a `float`) associated with the
 |      socket or ssh `.Channel` used for this file.
 |
 |      .. seealso:: `.Channel.gettimeout`
 |
 |  prefetch(self, file_size=None, max_concurrent_requests=None)
 |      Pre-fetch the remaining contents of this file in anticipation of future
 |      `.read` calls.  If reading the entire file, pre-fetching can
 |      dramatically improve the download speed by avoiding roundtrip latency.
 |      The file's contents are incrementally buffered in a background thread.
 |
 |      The prefetched data is stored in a buffer until read via the `.read`
 |      method.  Once data has been read, it's removed from the buffer.  The
 |      data may be read in a random order (using `.seek`); chunks of the
 |      buffer that haven't been read will continue to be buffered.
 |
 |      :param int file_size:
 |          When this is ``None`` (the default), this method calls `stat` to
 |          determine the remote file size. In some situations, doing so can
 |          cause exceptions or hangs (see `#562
 |          <https://github.com/paramiko/paramiko/pull/562>`_); as a
 |          workaround, one may call `stat` explicitly and pass its value in
 |          via this parameter.
 |      :param int max_concurrent_requests:
 |          The maximum number of concurrent read requests to prefetch. See
 |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
 |          for details.
 |
 |      .. versionadded:: 1.5.1
 |      .. versionchanged:: 1.16.0
 |          The ``file_size`` parameter was added (with no default value).
 |      .. versionchanged:: 1.16.1
 |          The ``file_size`` parameter was made optional for backwards
 |          compatibility.
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_requests``.
 |
 |  readv(self, chunks, max_concurrent_prefetch_requests=None)
 |      Read a set of blocks from the file by (offset, length).  This is more
 |      efficient than doing a series of `.seek` and `.read` calls, since the
 |      prefetch machinery is used to retrieve all the requested blocks at
 |      once.
 |
 |      :param chunks:
 |          a list of ``(offset, length)`` tuples indicating which sections of
 |          the file to read
 |      :param int max_concurrent_prefetch_requests:
 |          The maximum number of concurrent read requests to prefetch. See
 |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
 |          for details.
 |      :return: a list of blocks read, in the same order as in ``chunks``
 |
 |      .. versionadded:: 1.5.4
 |      .. versionchanged:: 3.3
 |          Added ``max_concurrent_prefetch_requests``.
 |
 |  seek(self, offset, whence=0)
 |      Set the file's current position.
 |
 |      See `file.seek` for details.
 |
 |  seekable(self)
 |      Check if the file supports random access.
 |
 |      :return:
 |          `True` if the file supports random access. If `False`,
 |          :meth:`seek` will raise an exception
 |
 |  set_pipelined(self, pipelined=True)
 |      Turn on/off the pipelining of write operations to this file.  When
 |      pipelining is on, paramiko won't wait for the server response after
 |      each write operation.  Instead, they're collected as they come in. At
 |      the first non-write operation (including `.close`), all remaining
 |      server responses are collected.  This means that if there was an error
 |      with one of your later writes, an exception might be thrown from within
 |      `.close` instead of `.write`.
 |
 |      By default, files are not pipelined.
 |
 |      :param bool pipelined:
 |          ``True`` if pipelining should be turned on for this file; ``False``
 |          otherwise
 |
 |      .. versionadded:: 1.5
 |
 |  setblocking(self, blocking)
 |      Set blocking or non-blocking mode on the underiying socket or ssh
 |      `.Channel`.
 |
 |      :param int blocking:
 |          0 to set non-blocking mode; non-0 to set blocking mode.
 |
 |      .. seealso:: `.Channel.setblocking`
 |
 |  settimeout(self, timeout)
 |      Set a timeout on read/write operations on the underlying socket or
 |      ssh `.Channel`.
 |
 |      :param float timeout:
 |          seconds to wait for a pending read/write operation before raising
 |          ``socket.timeout``, or ``None`` for no timeout
 |
 |      .. seealso:: `.Channel.settimeout`
 |
 |  stat(self)
 |      Retrieve information about this file from the remote system.  This is
 |      exactly like `.SFTPClient.stat`, except that it operates on an
 |      already-open file.
 |
 |      :returns:
 |          an `.SFTPAttributes` object containing attributes about this file.
 |
 |  truncate(self, size)
 |      Change the size of this file.  This usually extends
 |      or shrinks the size of the file, just like the ``truncate()`` method on
 |      Python file objects.
 |
 |      :param size: the new size of the file
 |
 |  utime(self, times)
 |      Set the access and modified times of this file.  If
 |      ``times`` is ``None``, then the file's access and modified times are
 |      set to the current time.  Otherwise, ``times`` must be a 2-tuple of
 |      numbers, of the form ``(atime, mtime)``, which is used to set the
 |      access and modified times, respectively.  This bizarre API is mimicked
 |      from Python for the sake of consistency -- I apologize.
 |
 |      :param tuple times:
 |          ``None`` or a tuple of (access time, modified time) in standard
 |          internet epoch time (seconds since 01 January 1970 GMT)
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  MAX_REQUEST_SIZE = 32768
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.file.BufferedFile:
 |
 |  __iter__(self)
 |      Returns an iterator that can be used to iterate over the lines in this
 |      file.  This iterator happens to return the file itself, since a file is
 |      its own iterator.
 |
 |      :raises: ``ValueError`` -- if the file is closed.
 |
 |  __next__(self)
 |      Returns the next line from the input, or raises ``StopIteration``
 |      when EOF is hit.  Unlike python file objects, it's okay to mix
 |      calls to `.next` and `.readline`.
 |
 |      :raises: ``StopIteration`` -- when the end of the file is reached.
 |
 |      :returns:
 |          a line (`str`, or `bytes` if the file was opened in binary mode)
 |          read from the file.
 |
 |  flush(self)
 |      Write out any data in the write buffer.  This may do nothing if write
 |      buffering is not turned on.
 |
 |  read(self, size=None)
 |      Read at most ``size`` bytes from the file (less if we hit the end of
 |      the file first).  If the ``size`` argument is negative or omitted,
 |      read all the remaining data in the file.
 |
 |      .. note::
 |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
 |          ``self._flags``), because SSH treats all files as binary, since we
 |          have no idea what encoding the file is in, or even if the file is
 |          text data.
 |
 |      :param int size: maximum number of bytes to read
 |      :returns:
 |          data read from the file (as bytes), or an empty string if EOF was
 |          encountered immediately
 |
 |  readable(self)
 |      Check if the file can be read from.
 |
 |      :returns:
 |          `True` if the file can be read from. If `False`, `read` will raise
 |          an exception.
 |
 |  readinto(self, buff)
 |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
 |      number of bytes read.
 |
 |      :returns:
 |          The number of bytes read.
 |
 |  readline(self, size=None)
 |      Read one entire line from the file.  A trailing newline character is
 |      kept in the string (but may be absent when a file ends with an
 |      incomplete line).  If the size argument is present and non-negative, it
 |      is a maximum byte count (including the trailing newline) and an
 |      incomplete line may be returned.  An empty string is returned only when
 |      EOF is encountered immediately.
 |
 |      .. note::
 |          Unlike stdio's ``fgets``, the returned string contains null
 |          characters (``'\0'``) if they occurred in the input.
 |
 |      :param int size: maximum length of returned string.
 |      :returns:
 |          next line of the file, or an empty string if the end of the
 |          file has been reached.
 |
 |          If the file was opened in binary (``'b'``) mode: bytes are returned
 |          Else: the encoding of the file is assumed to be UTF-8 and character
 |          strings (`str`) are returned
 |
 |  readlines(self, sizehint=None)
 |      Read all remaining lines using `readline` and return them as a list.
 |      If the optional ``sizehint`` argument is present, instead of reading up
 |      to EOF, whole lines totalling approximately sizehint bytes (possibly
 |      after rounding up to an internal buffer size) are read.
 |
 |      :param int sizehint: desired maximum number of bytes to read.
 |      :returns: list of lines read from the file.
 |
 |  tell(self)
 |      Return the file's current position.  This may not be accurate or
 |      useful if the underlying file doesn't support random access, or was
 |      opened in append mode.
 |
 |      :returns: file position (`number <int>` of bytes).
 |
 |  writable(self)
 |      Check if the file can be written to.
 |
 |      :returns:
 |          `True` if the file can be written to. If `False`, `write` will
 |          raise an exception.
 |
 |  write(self, data)
 |      Write data to the file.  If write buffering is on (``bufsize`` was
 |      specified and non-zero), some or all of the data may not actually be
 |      written yet.  (Use `flush` or `close` to force buffered data to be
 |      written out.)
 |
 |      :param data: ``str``/``bytes`` data to write
 |
 |  writelines(self, sequence)
 |      Write a sequence of strings to the file.  The sequence can be any
 |      iterable object producing strings, typically a list of strings.  (The
 |      name is intended to match `readlines`; `writelines` does not add line
 |      separators.)
 |
 |      :param sequence: an iterable sequence of strings.
 |
 |  xreadlines(self)
 |      Identical to ``iter(f)``.  This is a deprecated file interface that
 |      predates Python iterator support.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from paramiko.file.BufferedFile:
 |
 |  closed
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from paramiko.file.BufferedFile:
 |
 |  FLAG_APPEND = 4
 |
 |  FLAG_BINARY = 16
 |
 |  FLAG_BUFFERED = 32
 |
 |  FLAG_LINE_BUFFERED = 64
 |
 |  FLAG_READ = 1
 |
 |  FLAG_UNIVERSAL_NEWLINE = 128
 |
 |  FLAG_WRITE = 2
 |
 |  SEEK_CUR = 1
 |
 |  SEEK_END = 2
 |
 |  SEEK_SET = 0
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.SFTPHandle
Python Library Documentation: class SFTPHandle in module paramiko.sftp_handle

class SFTPHandle(paramiko.util.ClosingContextManager)
 |  SFTPHandle(flags=0)
 |
 |  Abstract object representing a handle to an open file (or folder) in an
 |  SFTP server implementation.  Each handle has a string representation used
 |  by the client to refer to the underlying file.
 |
 |  Server implementations can (and should) subclass SFTPHandle to implement
 |  features of a file handle, like `stat` or `chattr`.
 |
 |  Instances of this class may be used as context managers.
 |
 |  Method resolution order:
 |      SFTPHandle
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, flags=0)
 |      Create a new file handle representing a local file being served over
 |      SFTP.  If ``flags`` is passed in, it's used to determine if the file
 |      is open in append mode.
 |
 |      :param int flags: optional flags as passed to
 |          `.SFTPServerInterface.open`
 |
 |  chattr(self, attr)
 |      Change the attributes of this file.  The ``attr`` object will contain
 |      only those fields provided by the client in its request, so you should
 |      check for the presence of fields before using them.
 |
 |      :param .SFTPAttributes attr: the attributes to change on this file.
 |      :return: an `int` error code like ``SFTP_OK``.
 |
 |  close(self)
 |      When a client closes a file, this method is called on the handle.
 |      Normally you would use this method to close the underlying OS level
 |      file object(s).
 |
 |      The default implementation checks for attributes on ``self`` named
 |      ``readfile`` and/or ``writefile``, and if either or both are present,
 |      their ``close()`` methods are called.  This means that if you are
 |      using the default implementations of `read` and `write`, this
 |      method's default implementation should be fine also.
 |
 |  read(self, offset, length)
 |      Read up to ``length`` bytes from this file, starting at position
 |      ``offset``.  The offset may be a Python long, since SFTP allows it
 |      to be 64 bits.
 |
 |      If the end of the file has been reached, this method may return an
 |      empty string to signify EOF, or it may also return ``SFTP_EOF``.
 |
 |      The default implementation checks for an attribute on ``self`` named
 |      ``readfile``, and if present, performs the read operation on the Python
 |      file-like object found there.  (This is meant as a time saver for the
 |      common case where you are wrapping a Python file object.)
 |
 |      :param offset: position in the file to start reading from.
 |      :param int length: number of bytes to attempt to read.
 |      :return: the `bytes` read, or an error code `int`.
 |
 |  stat(self)
 |      Return an `.SFTPAttributes` object referring to this open file, or an
 |      error code.  This is equivalent to `.SFTPServerInterface.stat`, except
 |      it's called on an open file instead of a path.
 |
 |      :return:
 |          an attributes object for the given file, or an SFTP error code
 |          (like ``SFTP_PERMISSION_DENIED``).
 |      :rtype: `.SFTPAttributes` or error code
 |
 |  write(self, offset, data)
 |      Write ``data`` into this file at position ``offset``.  Extending the
 |      file past its original end is expected.  Unlike Python's normal
 |      ``write()`` methods, this method cannot do a partial write: it must
 |      write all of ``data`` or else return an error.
 |
 |      The default implementation checks for an attribute on ``self`` named
 |      ``writefile``, and if present, performs the write operation on the
 |      Python file-like object found there.  The attribute is named
 |      differently from ``readfile`` to make it easy to implement read-only
 |      (or write-only) files, but if both attributes are present, they should
 |      refer to the same file.
 |
 |      :param offset: position in the file to start reading from.
 |      :param bytes data: data to write into the file.
 |      :return: an SFTP error code like ``SFTP_OK``.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.SFTPServer
Python Library Documentation: class SFTPServer in module paramiko.sftp_server

class SFTPServer(paramiko.sftp.BaseSFTP, paramiko.server.SubsystemHandler)
 |  SFTPServer(channel, name, server, sftp_si=<class 'paramiko.sftp_si.SFTPServerInterface'>, *args, **kwargs)
 |
 |  Server-side SFTP subsystem support.  Since this is a `.SubsystemHandler`,
 |  it can be (and is meant to be) set as the handler for ``"sftp"`` requests.
 |  Use `.Transport.set_subsystem_handler` to activate this class.
 |
 |  Method resolution order:
 |      SFTPServer
 |      paramiko.sftp.BaseSFTP
 |      paramiko.server.SubsystemHandler
 |      threading.Thread
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, channel, name, server, sftp_si=<class 'paramiko.sftp_si.SFTPServerInterface'>, *args, **kwargs)
 |      The constructor for SFTPServer is meant to be called from within the
 |      `.Transport` as a subsystem handler.  ``server`` and any additional
 |      parameters or keyword parameters are passed from the original call to
 |      `.Transport.set_subsystem_handler`.
 |
 |      :param .Channel channel: channel passed from the `.Transport`.
 |      :param str name: name of the requested subsystem.
 |      :param .ServerInterface server:
 |          the server object associated with this channel and subsystem
 |      :param sftp_si:
 |          a subclass of `.SFTPServerInterface` to use for handling individual
 |          requests.
 |
 |  finish_subsystem(self)
 |      Perform any cleanup at the end of a subsystem.  The default
 |      implementation just closes the channel.
 |
 |      .. versionadded:: 1.1
 |
 |  start_subsystem(self, name, transport, channel)
 |      Process an ssh subsystem in server mode.  This method is called on a
 |      new object (and in a new thread) for each subsystem request.  It is
 |      assumed that all subsystem logic will take place here, and when the
 |      subsystem is finished, this method will return.  After this method
 |      returns, the channel is closed.
 |
 |      The combination of ``transport`` and ``channel`` are unique; this
 |      handler corresponds to exactly one `.Channel` on one `.Transport`.
 |
 |      .. note::
 |          It is the responsibility of this method to exit if the underlying
 |          `.Transport` is closed.  This can be done by checking
 |          `.Transport.is_active` or noticing an EOF on the `.Channel`.  If
 |          this method loops forever without checking for this case, your
 |          Python interpreter may refuse to exit because this thread will
 |          still be running.
 |
 |      :param str name: name of the requested subsystem.
 |      :param .Transport transport: the server-mode `.Transport`.
 |      :param .Channel channel: the channel associated with this subsystem
 |          request.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  convert_errno(e)
 |      Convert an errno value (as from an ``OSError`` or ``IOError``) into a
 |      standard SFTP result code.  This is a convenience function for trapping
 |      exceptions in server code and returning an appropriate result.
 |
 |      :param int e: an errno code, as from ``OSError.errno``.
 |      :return: an `int` SFTP error code like ``SFTP_NO_SUCH_FILE``.
 |
 |  set_file_attr(filename, attr)
 |      Change a file's attributes on the local filesystem.  The contents of
 |      ``attr`` are used to change the permissions, owner, group ownership,
 |      and/or modification & access time of the file, depending on which
 |      attributes are present in ``attr``.
 |
 |      This is meant to be a handy helper function for translating SFTP file
 |      requests into local file operations.
 |
 |      :param str filename:
 |          name of the file to alter (should usually be an absolute path).
 |      :param .SFTPAttributes attr: attributes to change.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.server.SubsystemHandler:
 |
 |  get_server(self)
 |      Return the `.ServerInterface` object associated with this channel and
 |      subsystem.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from threading.Thread:
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  getName(self)
 |      Return a string used for identification purposes only.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  isDaemon(self)
 |      Return whether this thread is a daemon.
 |
 |      This method is deprecated, use the daemon attribute instead.
 |
 |  is_alive(self)
 |      Return whether the thread is alive.
 |
 |      This method returns True just before the run() method starts until just
 |      after the run() method terminates. See also the module function
 |      enumerate().
 |
 |  join(self, timeout=None)
 |      Wait until the thread terminates.
 |
 |      This blocks the calling thread until the thread whose join() method is
 |      called terminates -- either normally or through an unhandled exception
 |      or until the optional timeout occurs.
 |
 |      When the timeout argument is present and not None, it should be a
 |      floating-point number specifying a timeout for the operation in seconds
 |      (or fractions thereof). As join() always returns None, you must call
 |      is_alive() after join() to decide whether a timeout happened -- if the
 |      thread is still alive, the join() call timed out.
 |
 |      When the timeout argument is not present or None, the operation will
 |      block until the thread terminates.
 |
 |      A thread can be join()ed many times.
 |
 |      join() raises a RuntimeError if an attempt is made to join the current
 |      thread as that would cause a deadlock. It is also an error to join() a
 |      thread before it has been started and attempts to do so raises the same
 |      exception.
 |
 |  run(self)
 |      Method representing the thread's activity.
 |
 |      You may override this method in a subclass. The standard run() method
 |      invokes the callable object passed to the object's constructor as the
 |      target argument, if any, with sequential and keyword arguments taken
 |      from the args and kwargs arguments, respectively.
 |
 |  setDaemon(self, daemonic)
 |      Set whether this thread is a daemon.
 |
 |      This method is deprecated, use the .daemon property instead.
 |
 |  setName(self, name)
 |      Set the name string for this thread.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  start(self)
 |      Start the thread's activity.
 |
 |      It must be called at most once per thread object. It arranges for the
 |      object's run() method to be invoked in a separate thread of control.
 |
 |      This method will raise a RuntimeError if called more than once on the
 |      same thread object.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from threading.Thread:
 |
 |  ident
 |      Thread identifier of this thread or None if it has not been started.
 |
 |      This is a nonzero integer. See the get_ident() function. Thread
 |      identifiers may be recycled when a thread exits and another thread is
 |      created. The identifier is available even after the thread has exited.
 |
 |  native_id
 |      Native integral thread ID of this thread, or None if it has not been started.
 |
 |      This is a non-negative integer. See the get_native_id() function.
 |      This represents the Thread ID as reported by the kernel.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from threading.Thread:
 |
 |  daemon
 |      A boolean value indicating whether this thread is a daemon thread.
 |
 |      This must be set before start() is called, otherwise RuntimeError is
 |      raised. Its initial value is inherited from the creating thread; the
 |      main thread is not a daemon thread and therefore all threads created in
 |      the main thread default to daemon = False.
 |
 |      The entire Python program exits when only daemon threads are left.
 |
 |  name
 |      A string used for identification purposes only.
 |
 |      It has no semantics. Multiple threads may be given the same name. The
 |      initial name is set by the constructor.
paramiko.SFTPServerInterface
Python Library Documentation: class SFTPServerInterface in module paramiko.sftp_si

class SFTPServerInterface(builtins.object)
 |  SFTPServerInterface(server, *args, **kwargs)
 |
 |  This class defines an interface for controlling the behavior of paramiko
 |  when using the `.SFTPServer` subsystem to provide an SFTP server.
 |
 |  Methods on this class are called from the SFTP session's thread, so you can
 |  block as long as necessary without affecting other sessions (even other
 |  SFTP sessions).  However, raising an exception will usually cause the SFTP
 |  session to abruptly end, so you will usually want to catch exceptions and
 |  return an appropriate error code.
 |
 |  All paths are in string form instead of unicode because not all SFTP
 |  clients & servers obey the requirement that paths be encoded in UTF-8.
 |
 |  Methods defined here:
 |
 |  __init__(self, server, *args, **kwargs)
 |      Create a new SFTPServerInterface object.  This method does nothing by
 |      default and is meant to be overridden by subclasses.
 |
 |      :param .ServerInterface server:
 |          the server object associated with this channel and SFTP subsystem
 |
 |  canonicalize(self, path)
 |      Return the canonical form of a path on the server.  For example,
 |      if the server's home folder is ``/home/foo``, the path
 |      ``"../betty"`` would be canonicalized to ``"/home/betty"``.  Note
 |      the obvious security issues: if you're serving files only from a
 |      specific folder, you probably don't want this method to reveal path
 |      names outside that folder.
 |
 |      You may find the Python methods in ``os.path`` useful, especially
 |      ``os.path.normpath`` and ``os.path.realpath``.
 |
 |      The default implementation returns ``os.path.normpath('/' + path)``.
 |
 |  chattr(self, path, attr)
 |      Change the attributes of a file.  The ``attr`` object will contain
 |      only those fields provided by the client in its request, so you
 |      should check for the presence of fields before using them.
 |
 |      :param str path:
 |          requested path (relative or absolute) of the file to change.
 |      :param attr:
 |          requested attributes to change on the file (an `.SFTPAttributes`
 |          object)
 |      :return: an error code `int` like ``SFTP_OK``.
 |
 |  list_folder(self, path)
 |      Return a list of files within a given folder.  The ``path`` will use
 |      posix notation (``"/"`` separates folder names) and may be an absolute
 |      or relative path.
 |
 |      The list of files is expected to be a list of `.SFTPAttributes`
 |      objects, which are similar in structure to the objects returned by
 |      ``os.stat``.  In addition, each object should have its ``filename``
 |      field filled in, since this is important to a directory listing and
 |      not normally present in ``os.stat`` results.  The method
 |      `.SFTPAttributes.from_stat` will usually do what you want.
 |
 |      In case of an error, you should return one of the ``SFTP_*`` error
 |      codes, such as ``SFTP_PERMISSION_DENIED``.
 |
 |      :param str path: the requested path (relative or absolute) to be
 |          listed.
 |      :return:
 |          a list of the files in the given folder, using `.SFTPAttributes`
 |          objects.
 |
 |      .. note::
 |          You should normalize the given ``path`` first (see the `os.path`
 |          module) and check appropriate permissions before returning the list
 |          of files.  Be careful of malicious clients attempting to use
 |          relative paths to escape restricted folders, if you're doing a
 |          direct translation from the SFTP server path to your local
 |          filesystem.
 |
 |  lstat(self, path)
 |      Return an `.SFTPAttributes` object for a path on the server, or an
 |      error code.  If your server supports symbolic links (also known as
 |      "aliases"), you should not follow them -- instead, you should
 |      return data on the symlink or alias itself.  (`stat` is the
 |      corresponding call that follows symlinks/aliases.)
 |
 |      :param str path:
 |          the requested path (relative or absolute) to fetch file statistics
 |          for.
 |      :type path: str
 |      :return:
 |          an `.SFTPAttributes` object for the given file, or an SFTP error
 |          code (like ``SFTP_PERMISSION_DENIED``).
 |
 |  mkdir(self, path, attr)
 |      Create a new directory with the given attributes.  The ``attr``
 |      object may be considered a "hint" and ignored.
 |
 |      The ``attr`` object will contain only those fields provided by the
 |      client in its request, so you should use ``hasattr`` to check for
 |      the presence of fields before using them.  In some cases, the ``attr``
 |      object may be completely empty.
 |
 |      :param str path:
 |          requested path (relative or absolute) of the new folder.
 |      :param .SFTPAttributes attr: requested attributes of the new folder.
 |      :return: an SFTP error code `int` like ``SFTP_OK``.
 |
 |  open(self, path, flags, attr)
 |      Open a file on the server and create a handle for future operations
 |      on that file.  On success, a new object subclassed from `.SFTPHandle`
 |      should be returned.  This handle will be used for future operations
 |      on the file (read, write, etc).  On failure, an error code such as
 |      ``SFTP_PERMISSION_DENIED`` should be returned.
 |
 |      ``flags`` contains the requested mode for opening (read-only,
 |      write-append, etc) as a bitset of flags from the ``os`` module:
 |
 |          - ``os.O_RDONLY``
 |          - ``os.O_WRONLY``
 |          - ``os.O_RDWR``
 |          - ``os.O_APPEND``
 |          - ``os.O_CREAT``
 |          - ``os.O_TRUNC``
 |          - ``os.O_EXCL``
 |
 |      (One of ``os.O_RDONLY``, ``os.O_WRONLY``, or ``os.O_RDWR`` will always
 |      be set.)
 |
 |      The ``attr`` object contains requested attributes of the file if it
 |      has to be created.  Some or all attribute fields may be missing if
 |      the client didn't specify them.
 |
 |      .. note:: The SFTP protocol defines all files to be in "binary" mode.
 |          There is no equivalent to Python's "text" mode.
 |
 |      :param str path:
 |          the requested path (relative or absolute) of the file to be opened.
 |      :param int flags:
 |          flags or'd together from the ``os`` module indicating the requested
 |          mode for opening the file.
 |      :param .SFTPAttributes attr:
 |          requested attributes of the file if it is newly created.
 |      :return: a new `.SFTPHandle` or error code.
 |
 |  posix_rename(self, oldpath, newpath)
 |      Rename (or move) a file, following posix conventions. If newpath
 |      already exists, it will be overwritten.
 |
 |      :param str oldpath:
 |          the requested path (relative or absolute) of the existing file.
 |      :param str newpath: the requested new path of the file.
 |      :return: an SFTP error code `int` like ``SFTP_OK``.
 |
 |      :versionadded: 2.2
 |
 |  readlink(self, path)
 |      Return the target of a symbolic link (or shortcut) on the server.
 |      If the specified path doesn't refer to a symbolic link, an error
 |      should be returned.
 |
 |      :param str path: path (relative or absolute) of the symbolic link.
 |      :return:
 |          the target `str` path of the symbolic link, or an error code like
 |          ``SFTP_NO_SUCH_FILE``.
 |
 |  remove(self, path)
 |      Delete a file, if possible.
 |
 |      :param str path:
 |          the requested path (relative or absolute) of the file to delete.
 |      :return: an SFTP error code `int` like ``SFTP_OK``.
 |
 |  rename(self, oldpath, newpath)
 |      Rename (or move) a file.  The SFTP specification implies that this
 |      method can be used to move an existing file into a different folder,
 |      and since there's no other (easy) way to move files via SFTP, it's
 |      probably a good idea to implement "move" in this method too, even for
 |      files that cross disk partition boundaries, if at all possible.
 |
 |      .. note:: You should return an error if a file with the same name as
 |          ``newpath`` already exists.  (The rename operation should be
 |          non-desctructive.)
 |
 |      .. note::
 |          This method implements 'standard' SFTP ``RENAME`` behavior; those
 |          seeking the OpenSSH "POSIX rename" extension behavior should use
 |          `posix_rename`.
 |
 |      :param str oldpath:
 |          the requested path (relative or absolute) of the existing file.
 |      :param str newpath: the requested new path of the file.
 |      :return: an SFTP error code `int` like ``SFTP_OK``.
 |
 |  rmdir(self, path)
 |      Remove a directory if it exists.  The ``path`` should refer to an
 |      existing, empty folder -- otherwise this method should return an
 |      error.
 |
 |      :param str path:
 |          requested path (relative or absolute) of the folder to remove.
 |      :return: an SFTP error code `int` like ``SFTP_OK``.
 |
 |  session_ended(self)
 |      The SFTP server session has just ended, either cleanly or via an
 |      exception.  This method is meant to be overridden to perform any
 |      necessary cleanup before this `.SFTPServerInterface` object is
 |      destroyed.
 |
 |  session_started(self)
 |      The SFTP server session has just started.  This method is meant to be
 |      overridden to perform any necessary setup before handling callbacks
 |      from SFTP operations.
 |
 |  stat(self, path)
 |      Return an `.SFTPAttributes` object for a path on the server, or an
 |      error code.  If your server supports symbolic links (also known as
 |      "aliases"), you should follow them.  (`lstat` is the corresponding
 |      call that doesn't follow symlinks/aliases.)
 |
 |      :param str path:
 |          the requested path (relative or absolute) to fetch file statistics
 |          for.
 |      :return:
 |          an `.SFTPAttributes` object for the given file, or an SFTP error
 |          code (like ``SFTP_PERMISSION_DENIED``).
 |
 |  symlink(self, target_path, path)
 |      Create a symbolic link on the server, as new pathname ``path``,
 |      with ``target_path`` as the target of the link.
 |
 |      :param str target_path:
 |          path (relative or absolute) of the target for this new symbolic
 |          link.
 |      :param str path:
 |          path (relative or absolute) of the symbolic link to create.
 |      :return: an error code `int` like ``SFTP_OK``.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.SFTP_BAD_MESSAGE
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_CONNECTION_LOST
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_EOF
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_FAILURE
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_NO_CONNECTION
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_NO_SUCH_FILE
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_OK
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_OP_UNSUPPORTED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SFTP_PERMISSION_DENIED
Python Library Documentation: int object

class int(object)
 |  int([x]) -> integer
 |  int(x, base=10) -> integer
 |
 |  Convert a number or string to an integer, or return 0 if no arguments
 |  are given.  If x is a number, return x.__int__().  For floating-point
 |  numbers, this truncates towards zero.
 |
 |  If x is not a number or if base is given, then x must be a string,
 |  bytes, or bytearray instance representing an integer literal in the
 |  given base.  The literal can be preceded by '+' or '-' and be surrounded
 |  by whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.
 |  Base 0 means to interpret the base from the string as an integer literal.
 |  >>> int('0b100', base=0)
 |  4
 |
 |  Built-in subclasses:
 |      bool
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __and__(self, value, /)
 |      Return self&value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(...)
 |      Ceiling of an Integral returns itself.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(...)
 |      Flooring an Integral returns itself.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Convert to a string according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __index__(self, /)
 |      Return self converted to an integer, if self is suitable for use as an index into a list.
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __invert__(self, /)
 |      ~self
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lshift__(self, value, /)
 |      Return self<<value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rand__(self, value, /)
 |      Return value&self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rlshift__(self, value, /)
 |      Return value<<self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __round__(...)
 |      Rounding an Integral returns itself.
 |
 |      Rounding with an ndigits argument also returns an integer.
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rrshift__(self, value, /)
 |      Return value>>self.
 |
 |  __rshift__(self, value, /)
 |      Return self>>value.
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __rxor__(self, value, /)
 |      Return value^self.
 |
 |  __sizeof__(self, /)
 |      Returns size in memory, in bytes.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(...)
 |      Truncating an Integral returns itself.
 |
 |  __xor__(self, value, /)
 |      Return self^value.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is equal to the original int.
 |
 |      The ratio is in lowest terms and has a positive denominator.
 |
 |      >>> (10).as_integer_ratio()
 |      (10, 1)
 |      >>> (-10).as_integer_ratio()
 |      (-10, 1)
 |      >>> (0).as_integer_ratio()
 |      (0, 1)
 |
 |  bit_count(self, /)
 |      Number of ones in the binary representation of the absolute value of self.
 |
 |      Also known as the population count.
 |
 |      >>> bin(13)
 |      '0b1101'
 |      >>> (13).bit_count()
 |      3
 |
 |  bit_length(self, /)
 |      Number of bits necessary to represent self in binary.
 |
 |      >>> bin(37)
 |      '0b100101'
 |      >>> (37).bit_length()
 |      6
 |
 |  conjugate(...)
 |      Returns self, the complex conjugate of any int.
 |
 |  is_integer(self, /)
 |      Returns True. Exists for duck type compatibility with float.is_integer.
 |
 |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
 |      Return an array of bytes representing an integer.
 |
 |      length
 |        Length of bytes object to use.  An OverflowError is raised if the
 |        integer is not representable with the given number of bytes.  Default
 |        is length 1.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Determines whether two's complement is used to represent the integer.
 |        If signed is False and a negative integer is given, an OverflowError
 |        is raised.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_bytes(bytes, byteorder='big', *, signed=False)
 |      Return the integer represented by the given array of bytes.
 |
 |      bytes
 |        Holds the array of bytes to convert.  The argument must either
 |        support the buffer protocol or be an iterable object producing bytes.
 |        Bytes and bytearray are examples of built-in objects that support the
 |        buffer protocol.
 |      byteorder
 |        The byte order used to represent the integer.  If byteorder is 'big',
 |        the most significant byte is at the beginning of the byte array.  If
 |        byteorder is 'little', the most significant byte is at the end of the
 |        byte array.  To request the native byte order of the host system, use
 |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
 |      signed
 |        Indicates whether two's complement is used to represent the integer.
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  denominator
 |      the denominator of a rational number in lowest terms
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  numerator
 |      the numerator of a rational number in lowest terms
 |
 |  real
 |      the real part of a complex number
paramiko.SSHClient
Python Library Documentation: class SSHClient in module paramiko.client

class SSHClient(paramiko.util.ClosingContextManager)
 |  A high-level representation of a session with an SSH server.  This class
 |  wraps `.Transport`, `.Channel`, and `.SFTPClient` to take care of most
 |  aspects of authenticating and opening channels.  A typical use case is::
 |
 |      client = SSHClient()
 |      client.load_system_host_keys()
 |      client.connect('ssh.example.com')
 |      stdin, stdout, stderr = client.exec_command('ls -l')
 |
 |  You may pass in explicit overrides for authentication and server host key
 |  checking.  The default mechanism is to try to use local key files or an
 |  SSH agent (if one is running).
 |
 |  Instances of this class may be used as context managers.
 |
 |  .. versionadded:: 1.6
 |
 |  Method resolution order:
 |      SSHClient
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self)
 |      Create a new SSHClient.
 |
 |  close(self)
 |      Close this SSHClient and its underlying `.Transport`.
 |
 |      This should be called anytime you are done using the client object.
 |
 |      .. warning::
 |          Paramiko registers garbage collection hooks that will try to
 |          automatically close connections for you, but this is not presently
 |          reliable. Failure to explicitly close your client after use may
 |          lead to end-of-process hangs!
 |
 |  connect(self, hostname, port=22, username=None, password=None, pkey=None, key_filename=None, timeout=None, allow_agent=True, look_for_keys=True, compress=False, sock=None, banner_timeout=None, auth_timeout=None, channel_timeout=None, passphrase=None, disabled_algorithms=None, transport_factory=None, auth_strategy=None)
 |      Connect to an SSH server and authenticate to it.  The server's host key
 |      is checked against the system host keys (see `load_system_host_keys`)
 |      and any local host keys (`load_host_keys`).  If the server's hostname
 |      is not found in either set of host keys, the missing host key policy
 |      is used (see `set_missing_host_key_policy`).  The default policy is
 |      to reject the key and raise an `.SSHException`.
 |
 |      Authentication is attempted in the following order of priority:
 |
 |          - The ``pkey`` or ``key_filename`` passed in (if any)
 |
 |            - ``key_filename`` may contain OpenSSH public certificate paths
 |              as well as regular private-key paths; when files ending in
 |              ``-cert.pub`` are found, they are assumed to match a private
 |              key, and both components will be loaded. (The private key
 |              itself does *not* need to be listed in ``key_filename`` for
 |              this to occur - *just* the certificate.)
 |
 |          - Any key we can find through an SSH agent
 |          - Any ``id_*`` keys discoverable in ``~/.ssh/``
 |
 |            - When OpenSSH-style public certificates exist that match an
 |              existing such private key (so e.g. one has ``id_rsa`` and
 |              ``id_rsa-cert.pub``) the certificate will be loaded alongside
 |              the private key and used for authentication.
 |
 |          - Plain username/password auth, if a password was given
 |
 |      If a private key requires a password to unlock it, and a password is
 |      passed in, that password will be used to attempt to unlock the key.
 |
 |      :param str hostname: the server to connect to
 |      :param int port: the server port to connect to
 |      :param str username:
 |          the username to authenticate as (defaults to the current local
 |          username)
 |      :param str password:
 |          Used for password authentication; is also used for private key
 |          decryption if ``passphrase`` is not given.
 |      :param str passphrase:
 |          Used for decrypting private keys.
 |      :param .PKey pkey: an optional private key to use for authentication
 |      :param str key_filename:
 |          the filename, or list of filenames, of optional private key(s)
 |          and/or certs to try for authentication
 |      :param float timeout:
 |          an optional timeout (in seconds) for the TCP connect
 |      :param bool allow_agent:
 |          set to False to disable connecting to the SSH agent
 |      :param bool look_for_keys:
 |          set to False to disable searching for discoverable private key
 |          files in ``~/.ssh/``
 |      :param bool compress: set to True to turn on compression
 |      :param socket sock:
 |          an open socket or socket-like object (such as a `.Channel`) to use
 |          for communication to the target host
 |      :param float banner_timeout: an optional timeout (in seconds) to wait
 |          for the SSH banner to be presented.
 |      :param float auth_timeout: an optional timeout (in seconds) to wait for
 |          an authentication response.
 |      :param float channel_timeout: an optional timeout (in seconds) to wait
 |           for a channel open response.
 |      :param dict disabled_algorithms:
 |          an optional dict passed directly to `.Transport` and its keyword
 |          argument of the same name.
 |      :param transport_factory:
 |          an optional callable which is handed a subset of the constructor
 |          arguments (primarily those related to the socket and algorithm
 |          selection) and generates a `.Transport` instance to be used by this
 |          client. Defaults to `.Transport.__init__`.
 |      :param auth_strategy:
 |          an optional instance of `.AuthStrategy`, triggering use of this
 |          newer authentication mechanism instead of SSHClient's legacy auth
 |          method.
 |
 |          .. warning::
 |              This parameter is **incompatible** with all other
 |              authentication-related parameters (such as, but not limited to,
 |              ``password``, ``key_filename`` and ``allow_agent``) and will
 |              trigger an exception if given alongside them.
 |
 |      :returns:
 |          `.AuthResult` if ``auth_strategy`` is non-``None``; otherwise,
 |          returns ``None``.
 |
 |      :raises BadHostKeyException:
 |          if the server's host key could not be verified.
 |      :raises AuthenticationException:
 |          if authentication failed.
 |      :raises UnableToAuthenticate:
 |          if authentication failed (when ``auth_strategy`` is non-``None``;
 |          and note that this is a subclass of ``AuthenticationException``).
 |      :raises socket.error:
 |          if a socket error (other than connection-refused or
 |          host-unreachable) occurred while connecting.
 |      :raises NoValidConnectionsError:
 |          if all valid connection targets for the requested hostname (eg IPv4
 |          and IPv6) yielded connection-refused or host-unreachable socket
 |          errors.
 |      :raises SSHException:
 |          if there was any other error connecting or establishing an SSH
 |          session.
 |
 |      .. versionchanged:: 1.15
 |          Added the ``banner_timeout`` argument.
 |      .. versionchanged:: 2.4
 |          Added the ``passphrase`` argument.
 |      .. versionchanged:: 2.6
 |          Added the ``disabled_algorithms`` argument.
 |      .. versionchanged:: 2.12
 |          Added the ``transport_factory`` argument.
 |      .. versionchanged:: 3.2
 |          Added the ``auth_strategy`` argument.
 |
 |  exec_command(self, command, bufsize=-1, timeout=None, get_pty=False, environment=None)
 |      Execute a command on the SSH server.  A new `.Channel` is opened and
 |      the requested command is executed.  The command's input and output
 |      streams are returned as Python ``file``-like objects representing
 |      stdin, stdout, and stderr.
 |
 |      :param str command: the command to execute
 |      :param int bufsize:
 |          interpreted the same way as by the built-in ``file()`` function in
 |          Python
 |      :param int timeout:
 |          set command's channel timeout. See `.Channel.settimeout`
 |      :param bool get_pty:
 |          Request a pseudo-terminal from the server (default ``False``).
 |          See `.Channel.get_pty`
 |      :param dict environment:
 |          a dict of shell environment variables, to be merged into the
 |          default environment that the remote command executes within.
 |
 |          .. warning::
 |              Servers may silently reject some environment variables; see the
 |              warning in `.Channel.set_environment_variable` for details.
 |
 |      :return:
 |          the stdin, stdout, and stderr of the executing command, as a
 |          3-tuple
 |
 |      :raises: `.SSHException` -- if the server fails to execute the command
 |
 |      .. versionchanged:: 1.10
 |          Added the ``get_pty`` kwarg.
 |
 |  get_host_keys(self)
 |      Get the local `.HostKeys` object.  This can be used to examine the
 |      local host keys or change them.
 |
 |      :return: the local host keys as a `.HostKeys` object.
 |
 |  get_transport(self)
 |      Return the underlying `.Transport` object for this SSH connection.
 |      This can be used to perform lower-level tasks, like opening specific
 |      kinds of channels.
 |
 |      :return: the `.Transport` for this connection
 |
 |  invoke_shell(self, term='vt100', width=80, height=24, width_pixels=0, height_pixels=0, environment=None)
 |      Start an interactive shell session on the SSH server.  A new `.Channel`
 |      is opened and connected to a pseudo-terminal using the requested
 |      terminal type and size.
 |
 |      :param str term:
 |          the terminal type to emulate (for example, ``"vt100"``)
 |      :param int width: the width (in characters) of the terminal window
 |      :param int height: the height (in characters) of the terminal window
 |      :param int width_pixels: the width (in pixels) of the terminal window
 |      :param int height_pixels: the height (in pixels) of the terminal window
 |      :param dict environment: the command's environment
 |      :return: a new `.Channel` connected to the remote shell
 |
 |      :raises: `.SSHException` -- if the server fails to invoke a shell
 |
 |  load_host_keys(self, filename)
 |      Load host keys from a local host-key file.  Host keys read with this
 |      method will be checked after keys loaded via `load_system_host_keys`,
 |      but will be saved back by `save_host_keys` (so they can be modified).
 |      The missing host key policy `.AutoAddPolicy` adds keys to this set and
 |      saves them, when connecting to a previously-unknown server.
 |
 |      This method can be called multiple times.  Each new set of host keys
 |      will be merged with the existing set (new replacing old if there are
 |      conflicts).  When automatically saving, the last hostname is used.
 |
 |      :param str filename: the filename to read
 |
 |      :raises: ``IOError`` -- if the filename could not be read
 |
 |  load_system_host_keys(self, filename=None)
 |      Load host keys from a system (read-only) file.  Host keys read with
 |      this method will not be saved back by `save_host_keys`.
 |
 |      This method can be called multiple times.  Each new set of host keys
 |      will be merged with the existing set (new replacing old if there are
 |      conflicts).
 |
 |      If ``filename`` is left as ``None``, an attempt will be made to read
 |      keys from the user's local "known hosts" file, as used by OpenSSH,
 |      and no exception will be raised if the file can't be read.  This is
 |      probably only useful on posix.
 |
 |      :param str filename: the filename to read, or ``None``
 |
 |      :raises: ``IOError`` --
 |          if a filename was provided and the file could not be read
 |
 |  open_sftp(self)
 |      Open an SFTP session on the SSH server.
 |
 |      :return: a new `.SFTPClient` session object
 |
 |  save_host_keys(self, filename)
 |      Save the host keys back to a file.  Only the host keys loaded with
 |      `load_host_keys` (plus any added directly) will be saved -- not any
 |      host keys loaded with `load_system_host_keys`.
 |
 |      :param str filename: the filename to save to
 |
 |      :raises: ``IOError`` -- if the file could not be written
 |
 |  set_log_channel(self, name)
 |      Set the channel for logging.  The default is ``"paramiko.transport"``
 |      but it can be set to anything you want.
 |
 |      :param str name: new channel name for logging
 |
 |  set_missing_host_key_policy(self, policy)
 |      Set policy to use when connecting to servers without a known host key.
 |
 |      Specifically:
 |
 |      * A **policy** is a "policy class" (or instance thereof), namely some
 |        subclass of `.MissingHostKeyPolicy` such as `.RejectPolicy` (the
 |        default), `.AutoAddPolicy`, `.WarningPolicy`, or a user-created
 |        subclass.
 |      * A host key is **known** when it appears in the client object's cached
 |        host keys structures (those manipulated by `load_system_host_keys`
 |        and/or `load_host_keys`).
 |
 |      :param .MissingHostKeyPolicy policy:
 |          the policy to use when receiving a host key from a
 |          previously-unknown server
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from paramiko.util.ClosingContextManager:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.SSHConfig
Python Library Documentation: class SSHConfig in module paramiko.config

class SSHConfig(builtins.object)
 |  Representation of config information as stored in the format used by
 |  OpenSSH. Queries can be made via `lookup`. The format is described in
 |  OpenSSH's ``ssh_config`` man page. This class is provided primarily as a
 |  convenience to posix users (since the OpenSSH format is a de-facto
 |  standard on posix) but should work fine on Windows too.
 |
 |  .. versionadded:: 1.6
 |
 |  Methods defined here:
 |
 |  __init__(self)
 |      Create a new OpenSSH config object.
 |
 |      Note: the newer alternate constructors `from_path`, `from_file` and
 |      `from_text` are simpler to use, as they parse on instantiation. For
 |      example, instead of::
 |
 |          config = SSHConfig()
 |          config.parse(open("some-path.config")
 |
 |      you could::
 |
 |          config = SSHConfig.from_file(open("some-path.config"))
 |          # Or more directly:
 |          config = SSHConfig.from_path("some-path.config")
 |          # Or if you have arbitrary ssh_config text from some other source:
 |          config = SSHConfig.from_text("Host foo\n\tUser bar")
 |
 |  canonicalize(self, hostname, options, domains)
 |      Return canonicalized version of ``hostname``.
 |
 |      :param str hostname: Target hostname.
 |      :param options: An `SSHConfigDict` from a previous lookup pass.
 |      :param domains: List of domains (e.g. ``["paramiko.org"]``).
 |
 |      :returns: A canonicalized hostname if one was found, else ``None``.
 |
 |      .. versionadded:: 2.7
 |
 |  get_hostnames(self)
 |      Return the set of literal hostnames defined in the SSH config (both
 |      explicit hostnames and wildcard entries).
 |
 |  lookup(self, hostname)
 |      Return a dict (`SSHConfigDict`) of config options for a given hostname.
 |
 |      The host-matching rules of OpenSSH's ``ssh_config`` man page are used:
 |      For each parameter, the first obtained value will be used.  The
 |      configuration files contain sections separated by ``Host`` and/or
 |      ``Match`` specifications, and that section is only applied for hosts
 |      which match the given patterns or keywords
 |
 |      Since the first obtained value for each parameter is used, more host-
 |      specific declarations should be given near the beginning of the file,
 |      and general defaults at the end.
 |
 |      The keys in the returned dict are all normalized to lowercase (look for
 |      ``"port"``, not ``"Port"``. The values are processed according to the
 |      rules for substitution variable expansion in ``ssh_config``.
 |
 |      Finally, please see the docs for `SSHConfigDict` for deeper info on
 |      features such as optional type conversion methods, e.g.::
 |
 |          conf = my_config.lookup('myhost')
 |          assert conf['passwordauthentication'] == 'yes'
 |          assert conf.as_bool('passwordauthentication') is True
 |
 |      .. note::
 |          If there is no explicitly configured ``HostName`` value, it will be
 |          set to the being-looked-up hostname, which is as close as we can
 |          get to OpenSSH's behavior around that particular option.
 |
 |      :param str hostname: the hostname to lookup
 |
 |      .. versionchanged:: 2.5
 |          Returns `SSHConfigDict` objects instead of dict literals.
 |      .. versionchanged:: 2.7
 |          Added canonicalization support.
 |      .. versionchanged:: 2.7
 |          Added ``Match`` support.
 |      .. versionchanged:: 3.3
 |          Added ``Match final`` support.
 |
 |  parse(self, file_obj)
 |      Read an OpenSSH config from the given file object.
 |
 |      :param file_obj: a file-like object to read the config file from
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  from_file(flo)
 |      Create a new, parsed `SSHConfig` from file-like object ``flo``.
 |
 |      .. versionadded:: 2.7
 |
 |  from_path(path)
 |      Create a new, parsed `SSHConfig` from the file found at ``path``.
 |
 |      .. versionadded:: 2.7
 |
 |  from_text(text)
 |      Create a new, parsed `SSHConfig` from ``text`` string.
 |
 |      .. versionadded:: 2.7
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  SETTINGS_REGEX = re.compile('(\\w+)(?:\\s*=\\s*|\\s+)(.+)')
 |
 |  TOKENS_BY_CONFIG_KEY = {'controlpath': ['%C', '%h', '%l', '%L', '%n', ...
paramiko.SSHConfigDict
Python Library Documentation: class SSHConfigDict in module paramiko.config

class SSHConfigDict(builtins.dict)
 |  A dictionary wrapper/subclass for per-host configuration structures.
 |
 |  This class introduces some usage niceties for consumers of `SSHConfig`,
 |  specifically around the issue of variable type conversions: normal value
 |  access yields strings, but there are now methods such as `as_bool` and
 |  `as_int` that yield casted values instead.
 |
 |  For example, given the following ``ssh_config`` file snippet::
 |
 |      Host foo.example.com
 |          PasswordAuthentication no
 |          Compression yes
 |          ServerAliveInterval 60
 |
 |  the following code highlights how you can access the raw strings as well as
 |  usefully Python type-casted versions (recalling that keys are all
 |  normalized to lowercase first)::
 |
 |      my_config = SSHConfig()
 |      my_config.parse(open('~/.ssh/config'))
 |      conf = my_config.lookup('foo.example.com')
 |
 |      assert conf['passwordauthentication'] == 'no'
 |      assert conf.as_bool('passwordauthentication') is False
 |      assert conf['compression'] == 'yes'
 |      assert conf.as_bool('compression') is True
 |      assert conf['serveraliveinterval'] == '60'
 |      assert conf.as_int('serveraliveinterval') == 60
 |
 |  .. versionadded:: 2.5
 |
 |  Method resolution order:
 |      SSHConfigDict
 |      builtins.dict
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  as_bool(self, key)
 |      Express given key's value as a boolean type.
 |
 |      Typically, this is used for ``ssh_config``'s pseudo-boolean values
 |      which are either ``"yes"`` or ``"no"``. In such cases, ``"yes"`` yields
 |      ``True`` and any other value becomes ``False``.
 |
 |      .. note::
 |          If (for whatever reason) the stored value is already boolean in
 |          nature, it's simply returned.
 |
 |      .. versionadded:: 2.5
 |
 |  as_int(self, key)
 |      Express given key's value as an integer, if possible.
 |
 |      This method will raise ``ValueError`` or similar if the value is not
 |      int-appropriate, same as the builtin `int` type.
 |
 |      .. versionadded:: 2.5
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.dict:
 |
 |  __contains__(self, key, /)
 |      True if the dictionary has the specified key, else False.
 |
 |  __delitem__(self, key, /)
 |      Delete self[key].
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getitem__(self, key, /)
 |      Return self[key].
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __ior__(self, value, /)
 |      Return self|=value.
 |
 |  __iter__(self, /)
 |      Implement iter(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __len__(self, /)
 |      Return len(self).
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __or__(self, value, /)
 |      Return self|value.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __reversed__(self, /)
 |      Return a reverse iterator over the dict keys.
 |
 |  __ror__(self, value, /)
 |      Return value|self.
 |
 |  __setitem__(self, key, value, /)
 |      Set self[key] to value.
 |
 |  __sizeof__(...)
 |      D.__sizeof__() -> size of D in memory, in bytes
 |
 |  clear(...)
 |      D.clear() -> None.  Remove all items from D.
 |
 |  copy(...)
 |      D.copy() -> a shallow copy of D
 |
 |  get(self, key, default=None, /)
 |      Return the value for key if key is in the dictionary, else default.
 |
 |  items(...)
 |      D.items() -> a set-like object providing a view on D's items
 |
 |  keys(...)
 |      D.keys() -> a set-like object providing a view on D's keys
 |
 |  pop(...)
 |      D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
 |
 |      If the key is not found, return the default if given; otherwise,
 |      raise a KeyError.
 |
 |  popitem(self, /)
 |      Remove and return a (key, value) pair as a 2-tuple.
 |
 |      Pairs are returned in LIFO (last-in, first-out) order.
 |      Raises KeyError if the dict is empty.
 |
 |  setdefault(self, key, default=None, /)
 |      Insert key with a value of default if key is not in the dictionary.
 |
 |      Return the value for key if key is in the dictionary, else default.
 |
 |  update(...)
 |      D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.
 |      If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]
 |      If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = v
 |      In either case, this is followed by: for k in F:  D[k] = F[k]
 |
 |  values(...)
 |      D.values() -> an object providing a view on D's values
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from builtins.dict:
 |
 |  __class_getitem__(...)
 |      See PEP 585
 |
 |  fromkeys(iterable, value=None, /)
 |      Create a new dictionary with keys from iterable and values set to value.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.dict:
 |
 |  __new__(*args, **kwargs) class method of builtins.dict
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes inherited from builtins.dict:
 |
 |  __hash__ = None
paramiko.SSHException
Python Library Documentation: class SSHException in module paramiko.ssh_exception

class SSHException(builtins.Exception)
 |  Exception raised by failures in SSH2 protocol negotiation or logic errors.
 |
 |  Method resolution order:
 |      SSHException
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Data descriptors defined here:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.Exception:
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  __str__(self, /)
 |      Return str(self).
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.SecurityOptions
Python Library Documentation: class SecurityOptions in module paramiko.transport

class SecurityOptions(builtins.object)
 |  SecurityOptions(transport)
 |
 |  Simple object containing the security preferences of an ssh transport.
 |  These are tuples of acceptable ciphers, digests, key types, and key
 |  exchange algorithms, listed in order of preference.
 |
 |  Changing the contents and/or order of these fields affects the underlying
 |  `.Transport` (but only if you change them before starting the session).
 |  If you try to add an algorithm that paramiko doesn't recognize,
 |  ``ValueError`` will be raised.  If you try to assign something besides a
 |  tuple to one of the fields, ``TypeError`` will be raised.
 |
 |  Methods defined here:
 |
 |  __init__(self, transport)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  ciphers
 |      Symmetric encryption ciphers
 |
 |  compression
 |      Compression algorithms
 |
 |  digests
 |      Digest (one-way hash) algorithms
 |
 |  kex
 |      Key exchange algorithms
 |
 |  key_types
 |      Public-key algorithms
paramiko.ServerInterface
Python Library Documentation: class ServerInterface in module paramiko.server

class ServerInterface(builtins.object)
 |  This class defines an interface for controlling the behavior of Paramiko
 |  in server mode.
 |
 |  Methods on this class are called from Paramiko's primary thread, so you
 |  shouldn't do too much work in them.  (Certainly nothing that blocks or
 |  sleeps.)
 |
 |  Methods defined here:
 |
 |  cancel_port_forward_request(self, address, port)
 |      The client would like to cancel a previous port-forwarding request.
 |      If the given address and port is being forwarded across this ssh
 |      connection, the port should be closed.
 |
 |      :param str address: the forwarded address
 |      :param int port: the forwarded port
 |
 |  check_auth_interactive(self, username, submethods)
 |      Begin an interactive authentication challenge, if supported.  You
 |      should override this method in server mode if you want to support the
 |      ``"keyboard-interactive"`` auth type, which requires you to send a
 |      series of questions for the client to answer.
 |
 |      Return ``AUTH_FAILED`` if this auth method isn't supported.  Otherwise,
 |      you should return an `.InteractiveQuery` object containing the prompts
 |      and instructions for the user.  The response will be sent via a call
 |      to `check_auth_interactive_response`.
 |
 |      The default implementation always returns ``AUTH_FAILED``.
 |
 |      :param str username: the username of the authenticating client
 |      :param str submethods:
 |          a comma-separated list of methods preferred by the client (usually
 |          empty)
 |      :return:
 |          ``AUTH_FAILED`` if this auth method isn't supported; otherwise an
 |          object containing queries for the user
 |      :rtype: int or `.InteractiveQuery`
 |
 |  check_auth_interactive_response(self, responses)
 |      Continue or finish an interactive authentication challenge, if
 |      supported.  You should override this method in server mode if you want
 |      to support the ``"keyboard-interactive"`` auth type.
 |
 |      Return ``AUTH_FAILED`` if the responses are not accepted,
 |      ``AUTH_SUCCESSFUL`` if the responses are accepted and complete
 |      the authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
 |      authentication is stateful, and this set of responses is accepted for
 |      authentication, but more authentication is required.  (In this latter
 |      case, `get_allowed_auths` will be called to report to the client what
 |      options it has for continuing the authentication.)
 |
 |      If you wish to continue interactive authentication with more questions,
 |      you may return an `.InteractiveQuery` object, which should cause the
 |      client to respond with more answers, calling this method again.  This
 |      cycle can continue indefinitely.
 |
 |      The default implementation always returns ``AUTH_FAILED``.
 |
 |      :param responses: list of `str` responses from the client
 |      :return:
 |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
 |          it succeeds; ``AUTH_PARTIALLY_SUCCESSFUL`` if the interactive auth
 |          is successful, but authentication must continue; otherwise an
 |          object containing queries for the user
 |      :rtype: int or `.InteractiveQuery`
 |
 |  check_auth_none(self, username)
 |      Determine if a client may open channels with no (further)
 |      authentication.
 |
 |      Return ``AUTH_FAILED`` if the client must authenticate, or
 |      ``AUTH_SUCCESSFUL`` if it's okay for the client to not
 |      authenticate.
 |
 |      The default implementation always returns ``AUTH_FAILED``.
 |
 |      :param str username: the username of the client.
 |      :return:
 |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
 |          it succeeds.
 |      :rtype: int
 |
 |  check_auth_password(self, username, password)
 |      Determine if a given username and password supplied by the client is
 |      acceptable for use in authentication.
 |
 |      Return ``AUTH_FAILED`` if the password is not accepted,
 |      ``AUTH_SUCCESSFUL`` if the password is accepted and completes
 |      the authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
 |      authentication is stateful, and this key is accepted for
 |      authentication, but more authentication is required.  (In this latter
 |      case, `get_allowed_auths` will be called to report to the client what
 |      options it has for continuing the authentication.)
 |
 |      The default implementation always returns ``AUTH_FAILED``.
 |
 |      :param str username: the username of the authenticating client.
 |      :param str password: the password given by the client.
 |      :return:
 |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
 |          it succeeds; ``AUTH_PARTIALLY_SUCCESSFUL`` if the password auth is
 |          successful, but authentication must continue.
 |      :rtype: int
 |
 |  check_auth_publickey(self, username, key)
 |      Determine if a given key supplied by the client is acceptable for use
 |      in authentication.  You should override this method in server mode to
 |      check the username and key and decide if you would accept a signature
 |      made using this key.
 |
 |      Return ``AUTH_FAILED`` if the key is not accepted,
 |      ``AUTH_SUCCESSFUL`` if the key is accepted and completes the
 |      authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
 |      authentication is stateful, and this password is accepted for
 |      authentication, but more authentication is required.  (In this latter
 |      case, `get_allowed_auths` will be called to report to the client what
 |      options it has for continuing the authentication.)
 |
 |      Note that you don't have to actually verify any key signtature here.
 |      If you're willing to accept the key, Paramiko will do the work of
 |      verifying the client's signature.
 |
 |      The default implementation always returns ``AUTH_FAILED``.
 |
 |      :param str username: the username of the authenticating client
 |      :param .PKey key: the key object provided by the client
 |      :return:
 |          ``AUTH_FAILED`` if the client can't authenticate with this key;
 |          ``AUTH_SUCCESSFUL`` if it can; ``AUTH_PARTIALLY_SUCCESSFUL`` if it
 |          can authenticate with this key but must continue with
 |          authentication
 |      :rtype: int
 |
 |  check_channel_direct_tcpip_request(self, chanid, origin, destination)
 |      Determine if a local port forwarding channel will be granted, and
 |      return ``OPEN_SUCCEEDED`` or an error code.  This method is
 |      called in server mode when the client requests a channel, after
 |      authentication is complete.
 |
 |      The ``chanid`` parameter is a small number that uniquely identifies the
 |      channel within a `.Transport`.  A `.Channel` object is not created
 |      unless this method returns ``OPEN_SUCCEEDED`` -- once a
 |      `.Channel` object is created, you can call `.Channel.get_id` to
 |      retrieve the channel ID.
 |
 |      The origin and destination parameters are (ip_address, port) tuples
 |      that correspond to both ends of the TCP connection in the forwarding
 |      tunnel.
 |
 |      The return value should either be ``OPEN_SUCCEEDED`` (or
 |      ``0``) to allow the channel request, or one of the following error
 |      codes to reject it:
 |
 |          - ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``
 |          - ``OPEN_FAILED_CONNECT_FAILED``
 |          - ``OPEN_FAILED_UNKNOWN_CHANNEL_TYPE``
 |          - ``OPEN_FAILED_RESOURCE_SHORTAGE``
 |
 |      The default implementation always returns
 |      ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``.
 |
 |      :param int chanid: ID of the channel
 |      :param tuple origin:
 |          2-tuple containing the IP address and port of the originator
 |          (client side)
 |      :param tuple destination:
 |          2-tuple containing the IP address and port of the destination
 |          (server side)
 |      :return: an `int` success or failure code (listed above)
 |
 |  check_channel_env_request(self, channel, name, value)
 |      Check whether a given environment variable can be specified for the
 |      given channel.  This method should return ``True`` if the server
 |      is willing to set the specified environment variable.  Note that
 |      some environment variables (e.g., PATH) can be exceedingly
 |      dangerous, so blindly allowing the client to set the environment
 |      is almost certainly not a good idea.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param channel: the `.Channel` the env request arrived on
 |      :param str name: name
 |      :param str value: Channel value
 |      :returns: A boolean
 |
 |  check_channel_exec_request(self, channel, command)
 |      Determine if a shell command will be executed for the client.  If this
 |      method returns ``True``, the channel should be connected to the stdin,
 |      stdout, and stderr of the shell command.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the request arrived on.
 |      :param str command: the command to execute.
 |      :return:
 |          ``True`` if this channel is now hooked up to the stdin, stdout, and
 |          stderr of the executing command; ``False`` if the command will not
 |          be executed.
 |
 |      .. versionadded:: 1.1
 |
 |  check_channel_forward_agent_request(self, channel)
 |      Determine if the client will be provided with an forward agent session.
 |      If this method returns ``True``, the server will allow SSH Agent
 |      forwarding.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the request arrived on
 |      :return: ``True`` if the AgentForward was loaded; ``False`` if not
 |
 |      If ``True`` is returned, the server should create an
 |      :class:`AgentServerProxy` to access the agent.
 |
 |  check_channel_pty_request(self, channel, term, width, height, pixelwidth, pixelheight, modes)
 |      Determine if a pseudo-terminal of the given dimensions (usually
 |      requested for shell access) can be provided on the given channel.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the pty request arrived on.
 |      :param str term: type of terminal requested (for example, ``"vt100"``).
 |      :param int width: width of screen in characters.
 |      :param int height: height of screen in characters.
 |      :param int pixelwidth:
 |          width of screen in pixels, if known (may be ``0`` if unknown).
 |      :param int pixelheight:
 |          height of screen in pixels, if known (may be ``0`` if unknown).
 |      :return:
 |          ``True`` if the pseudo-terminal has been allocated; ``False``
 |          otherwise.
 |
 |  check_channel_request(self, kind, chanid)
 |      Determine if a channel request of a given type will be granted, and
 |      return ``OPEN_SUCCEEDED`` or an error code.  This method is
 |      called in server mode when the client requests a channel, after
 |      authentication is complete.
 |
 |      If you allow channel requests (and an ssh server that didn't would be
 |      useless), you should also override some of the channel request methods
 |      below, which are used to determine which services will be allowed on
 |      a given channel:
 |
 |          - `check_channel_pty_request`
 |          - `check_channel_shell_request`
 |          - `check_channel_subsystem_request`
 |          - `check_channel_window_change_request`
 |          - `check_channel_x11_request`
 |          - `check_channel_forward_agent_request`
 |
 |      The ``chanid`` parameter is a small number that uniquely identifies the
 |      channel within a `.Transport`.  A `.Channel` object is not created
 |      unless this method returns ``OPEN_SUCCEEDED`` -- once a
 |      `.Channel` object is created, you can call `.Channel.get_id` to
 |      retrieve the channel ID.
 |
 |      The return value should either be ``OPEN_SUCCEEDED`` (or
 |      ``0``) to allow the channel request, or one of the following error
 |      codes to reject it:
 |
 |          - ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``
 |          - ``OPEN_FAILED_CONNECT_FAILED``
 |          - ``OPEN_FAILED_UNKNOWN_CHANNEL_TYPE``
 |          - ``OPEN_FAILED_RESOURCE_SHORTAGE``
 |
 |      The default implementation always returns
 |      ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``.
 |
 |      :param str kind:
 |          the kind of channel the client would like to open (usually
 |          ``"session"``).
 |      :param int chanid: ID of the channel
 |      :return: an `int` success or failure code (listed above)
 |
 |  check_channel_shell_request(self, channel)
 |      Determine if a shell will be provided to the client on the given
 |      channel.  If this method returns ``True``, the channel should be
 |      connected to the stdin/stdout of a shell (or something that acts like
 |      a shell).
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the request arrived on.
 |      :return:
 |          ``True`` if this channel is now hooked up to a shell; ``False`` if
 |          a shell can't or won't be provided.
 |
 |  check_channel_subsystem_request(self, channel, name)
 |      Determine if a requested subsystem will be provided to the client on
 |      the given channel.  If this method returns ``True``, all future I/O
 |      through this channel will be assumed to be connected to the requested
 |      subsystem.  An example of a subsystem is ``sftp``.
 |
 |      The default implementation checks for a subsystem handler assigned via
 |      `.Transport.set_subsystem_handler`.
 |      If one has been set, the handler is invoked and this method returns
 |      ``True``.  Otherwise it returns ``False``.
 |
 |      .. note:: Because the default implementation uses the `.Transport` to
 |          identify valid subsystems, you probably won't need to override this
 |          method.
 |
 |      :param .Channel channel: the `.Channel` the pty request arrived on.
 |      :param str name: name of the requested subsystem.
 |      :return:
 |          ``True`` if this channel is now hooked up to the requested
 |          subsystem; ``False`` if that subsystem can't or won't be provided.
 |
 |  check_channel_window_change_request(self, channel, width, height, pixelwidth, pixelheight)
 |      Determine if the pseudo-terminal on the given channel can be resized.
 |      This only makes sense if a pty was previously allocated on it.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the pty request arrived on.
 |      :param int width: width of screen in characters.
 |      :param int height: height of screen in characters.
 |      :param int pixelwidth:
 |          width of screen in pixels, if known (may be ``0`` if unknown).
 |      :param int pixelheight:
 |          height of screen in pixels, if known (may be ``0`` if unknown).
 |      :return: ``True`` if the terminal was resized; ``False`` if not.
 |
 |  check_channel_x11_request(self, channel, single_connection, auth_protocol, auth_cookie, screen_number)
 |      Determine if the client will be provided with an X11 session.  If this
 |      method returns ``True``, X11 applications should be routed through new
 |      SSH channels, using `.Transport.open_x11_channel`.
 |
 |      The default implementation always returns ``False``.
 |
 |      :param .Channel channel: the `.Channel` the X11 request arrived on
 |      :param bool single_connection:
 |          ``True`` if only a single X11 channel should be opened, else
 |          ``False``.
 |      :param str auth_protocol: the protocol used for X11 authentication
 |      :param str auth_cookie: the cookie used to authenticate to X11
 |      :param int screen_number: the number of the X11 screen to connect to
 |      :return: ``True`` if the X11 session was opened; ``False`` if not
 |
 |  check_global_request(self, kind, msg)
 |      Handle a global request of the given ``kind``.  This method is called
 |      in server mode and client mode, whenever the remote host makes a global
 |      request.  If there are any arguments to the request, they will be in
 |      ``msg``.
 |
 |      There aren't any useful global requests defined, aside from port
 |      forwarding, so usually this type of request is an extension to the
 |      protocol.
 |
 |      If the request was successful and you would like to return contextual
 |      data to the remote host, return a tuple.  Items in the tuple will be
 |      sent back with the successful result.  (Note that the items in the
 |      tuple can only be strings, ints, or bools.)
 |
 |      The default implementation always returns ``False``, indicating that it
 |      does not support any global requests.
 |
 |      .. note:: Port forwarding requests are handled separately, in
 |          `check_port_forward_request`.
 |
 |      :param str kind: the kind of global request being made.
 |      :param .Message msg: any extra arguments to the request.
 |      :return:
 |          ``True`` or a `tuple` of data if the request was granted; ``False``
 |          otherwise.
 |
 |  check_port_forward_request(self, address, port)
 |      Handle a request for port forwarding.  The client is asking that
 |      connections to the given address and port be forwarded back across
 |      this ssh connection.  An address of ``"0.0.0.0"`` indicates a global
 |      address (any address associated with this server) and a port of ``0``
 |      indicates that no specific port is requested (usually the OS will pick
 |      a port).
 |
 |      The default implementation always returns ``False``, rejecting the
 |      port forwarding request.  If the request is accepted, you should return
 |      the port opened for listening.
 |
 |      :param str address: the requested address
 |      :param int port: the requested port
 |      :return:
 |          the port number (`int`) that was opened for listening, or ``False``
 |          to reject
 |
 |  get_allowed_auths(self, username)
 |      Return a list of authentication methods supported by the server.
 |      This list is sent to clients attempting to authenticate, to inform them
 |      of authentication methods that might be successful.
 |
 |      The "list" is actually a string of comma-separated names of types of
 |      authentication.  Possible values are ``"password"``, ``"publickey"``,
 |      and ``"none"``.
 |
 |      The default implementation always returns ``"password"``.
 |
 |      :param str username: the username requesting authentication.
 |      :return: a comma-separated `str` of authentication types
 |
 |  get_banner(self)
 |      A pre-login banner to display to the user. The message may span
 |      multiple lines separated by crlf pairs. The language should be in
 |      rfc3066 style, for example: en-US
 |
 |      The default implementation always returns ``(None, None)``.
 |
 |      :returns: A tuple containing the banner and language code.
 |
 |      .. versionadded:: 2.3
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.ServiceRequestingTransport
Python Library Documentation: class ServiceRequestingTransport in module paramiko.transport

class ServiceRequestingTransport(Transport)
 |  ServiceRequestingTransport(*args, **kwargs)
 |
 |  Transport, but also handling service requests, like it oughtta!
 |
 |  .. versionadded:: 3.2
 |
 |  Method resolution order:
 |      ServiceRequestingTransport
 |      Transport
 |      threading.Thread
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, *args, **kwargs)
 |      Create a new SSH session over an existing socket, or socket-like
 |      object.  This only creates the `.Transport` object; it doesn't begin
 |      the SSH session yet.  Use `connect` or `start_client` to begin a client
 |      session, or `start_server` to begin a server session.
 |
 |      If the object is not actually a socket, it must have the following
 |      methods:
 |
 |      - ``send(bytes)``: Writes from 1 to ``len(bytes)`` bytes, and returns
 |        an int representing the number of bytes written.  Returns
 |        0 or raises ``EOFError`` if the stream has been closed.
 |      - ``recv(int)``: Reads from 1 to ``int`` bytes and returns them as a
 |        string.  Returns 0 or raises ``EOFError`` if the stream has been
 |        closed.
 |      - ``close()``: Closes the socket.
 |      - ``settimeout(n)``: Sets a (float) timeout on I/O operations.
 |
 |      For ease of use, you may also pass in an address (as a tuple) or a host
 |      string as the ``sock`` argument.  (A host string is a hostname with an
 |      optional port (separated by ``":"``) which will be converted into a
 |      tuple of ``(hostname, port)``.)  A socket will be connected to this
 |      address and used for communication.  Exceptions from the ``socket``
 |      call may be thrown in this case.
 |
 |      .. note::
 |          Modifying the the window and packet sizes might have adverse
 |          effects on your channels created from this transport. The default
 |          values are the same as in the OpenSSH code base and have been
 |          battle tested.
 |
 |      :param socket sock:
 |          a socket or socket-like object to create the session over.
 |      :param int default_window_size:
 |          sets the default window size on the transport. (defaults to
 |          2097152)
 |      :param int default_max_packet_size:
 |          sets the default max packet size on the transport. (defaults to
 |          32768)
 |      :param dict disabled_algorithms:
 |          If given, must be a dictionary mapping algorithm type to an
 |          iterable of algorithm identifiers, which will be disabled for the
 |          lifetime of the transport.
 |
 |          Keys should match the last word in the class' builtin algorithm
 |          tuple attributes, such as ``"ciphers"`` to disable names within
 |          ``_preferred_ciphers``; or ``"kex"`` to disable something defined
 |          inside ``_preferred_kex``. Values should exactly match members of
 |          the matching attribute.
 |
 |          For example, if you need to disable
 |          ``diffie-hellman-group16-sha512`` key exchange (perhaps because
 |          your code talks to a server which implements it differently from
 |          Paramiko), specify ``disabled_algorithms={"kex":
 |          ["diffie-hellman-group16-sha512"]}``.
 |      :param bool server_sig_algs:
 |          Whether to send an extra message to compatible clients, in server
 |          mode, with a list of supported pubkey algorithms. Default:
 |          ``True``.
 |      :param bool strict_kex:
 |          Whether to advertise (and implement, if client also advertises
 |          support for) a "strict kex" mode for safer handshaking. Default:
 |          ``True``.
 |      :param packetizer_class:
 |          Which class to use for instantiating the internal packet handler.
 |          Default: ``None`` (i.e.: use `Packetizer` as normal).
 |
 |      .. versionchanged:: 1.15
 |          Added the ``default_window_size`` and ``default_max_packet_size``
 |          arguments.
 |      .. versionchanged:: 2.6
 |          Added the ``disabled_algorithms`` kwarg.
 |      .. versionchanged:: 2.9
 |          Added the ``server_sig_algs`` kwarg.
 |      .. versionchanged:: 3.4
 |          Added the ``strict_kex`` kwarg.
 |      .. versionchanged:: 3.4
 |          Added the ``packetizer_class`` kwarg.
 |
 |  auth_interactive(self, username, handler, submethods='')
 |      Authenticate to the server interactively.  A handler is used to answer
 |      arbitrary questions from the server.  On many servers, this is just a
 |      dumb wrapper around PAM.
 |
 |      This method will block until the authentication succeeds or fails,
 |      periodically calling the handler asynchronously to get answers to
 |      authentication questions.  The handler may be called more than once
 |      if the server continues to ask questions.
 |
 |      The handler is expected to be a callable that will handle calls of the
 |      form: ``handler(title, instructions, prompt_list)``.  The ``title`` is
 |      meant to be a dialog-window title, and the ``instructions`` are user
 |      instructions (both are strings).  ``prompt_list`` will be a list of
 |      prompts, each prompt being a tuple of ``(str, bool)``.  The string is
 |      the prompt and the boolean indicates whether the user text should be
 |      echoed.
 |
 |      A sample call would thus be:
 |      ``handler('title', 'instructions', [('Password:', False)])``.
 |
 |      The handler should return a list or tuple of answers to the server's
 |      questions.
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param callable handler: a handler for responding to server questions
 |      :param str submethods: a string list of desired submethods (optional)
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty).
 |
 |      :raises: `.BadAuthenticationType` -- if public-key authentication isn't
 |          allowed by the server for this user
 |      :raises: `.AuthenticationException` -- if the authentication failed
 |      :raises: `.SSHException` -- if there was a network error
 |
 |      .. versionadded:: 1.5
 |
 |  auth_interactive_dumb(self, username, handler=None, submethods='')
 |      Authenticate to the server interactively but dumber.
 |      Just print the prompt and / or instructions to stdout and send back
 |      the response. This is good for situations where partial auth is
 |      achieved by key and then the user has to enter a 2fac token.
 |
 |  auth_none(self, username)
 |      Try to authenticate to the server using no authentication at all.
 |      This will almost always fail.  It may be useful for determining the
 |      list of authentication types supported by the server, by catching the
 |      `.BadAuthenticationType` exception raised.
 |
 |      :param str username: the username to authenticate as
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if "none" authentication isn't allowed
 |          by the server for this user
 |      :raises:
 |          `.SSHException` -- if the authentication failed due to a network
 |          error
 |
 |      .. versionadded:: 1.5
 |
 |  auth_password(self, username, password, fallback=True)
 |      Authenticate to the server using a password.  The username and password
 |      are sent over an encrypted link.
 |
 |      If an ``event`` is passed in, this method will return immediately, and
 |      the event will be triggered once authentication succeeds or fails.  On
 |      success, `is_authenticated` will return ``True``.  On failure, you may
 |      use `get_exception` to get more detailed error information.
 |
 |      Since 1.1, if no event is passed, this method will block until the
 |      authentication succeeds or fails.  On failure, an exception is raised.
 |      Otherwise, the method simply returns.
 |
 |      Since 1.5, if no event is passed and ``fallback`` is ``True`` (the
 |      default), if the server doesn't support plain password authentication
 |      but does support so-called "keyboard-interactive" mode, an attempt
 |      will be made to authenticate using this interactive mode.  If it fails,
 |      the normal exception will be thrown as if the attempt had never been
 |      made.  This is useful for some recent Gentoo and Debian distributions,
 |      which turn off plain password authentication in a misguided belief
 |      that interactive authentication is "more secure".  (It's not.)
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param basestring password: the password to authenticate with
 |      :param .threading.Event event:
 |          an event to trigger when the authentication attempt is complete
 |          (whether it was successful or not)
 |      :param bool fallback:
 |          ``True`` if an attempt at an automated "interactive" password auth
 |          should be made if the server doesn't support normal password auth
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if password authentication isn't
 |          allowed by the server for this user (and no event was passed in)
 |      :raises:
 |          `.AuthenticationException` -- if the authentication failed (and no
 |          event was passed in)
 |      :raises: `.SSHException` -- if there was a network error
 |
 |  auth_publickey(self, username, key)
 |      Authenticate to the server using a private key.  The key is used to
 |      sign data from the server, so it must include the private part.
 |
 |      If an ``event`` is passed in, this method will return immediately, and
 |      the event will be triggered once authentication succeeds or fails.  On
 |      success, `is_authenticated` will return ``True``.  On failure, you may
 |      use `get_exception` to get more detailed error information.
 |
 |      Since 1.1, if no event is passed, this method will block until the
 |      authentication succeeds or fails.  On failure, an exception is raised.
 |      Otherwise, the method simply returns.
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param .PKey key: the private key to authenticate with
 |      :param .threading.Event event:
 |          an event to trigger when the authentication attempt is complete
 |          (whether it was successful or not)
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if public-key authentication isn't
 |          allowed by the server for this user (and no event was passed in)
 |      :raises:
 |          `.AuthenticationException` -- if the authentication failed (and no
 |          event was passed in)
 |      :raises: `.SSHException` -- if there was a network error
 |
 |  ensure_session(self)
 |
 |  get_auth_handler(self)
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from Transport:
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  accept(self, timeout=None)
 |      Return the next channel opened by the client over this transport, in
 |      server mode.  If no channel is opened before the given timeout,
 |      ``None`` is returned.
 |
 |      :param int timeout:
 |          seconds to wait for a channel, or ``None`` to wait forever
 |      :return: a new `.Channel` opened by the client
 |
 |  add_server_key(self, key)
 |      Add a host key to the list of keys used for server mode.  When behaving
 |      as a server, the host key is used to sign certain packets during the
 |      SSH2 negotiation, so that the client can trust that we are who we say
 |      we are.  Because this is used for signing, the key must contain private
 |      key info, not just the public half.  Only one key of each type is kept.
 |
 |      :param .PKey key:
 |          the host key (instance of some subclass) to add
 |
 |  atfork(self)
 |      Terminate this Transport without closing the session.  On posix
 |      systems, if a Transport is open during process forking, both parent
 |      and child will share the underlying socket, but only one process can
 |      use the connection (without corrupting the session).  Use this method
 |      to clean up a Transport object without disrupting the other process.
 |
 |      .. versionadded:: 1.5.3
 |
 |  cancel_port_forward(self, address, port)
 |      Ask the server to cancel a previous port-forwarding request.  No more
 |      connections to the given address & port will be forwarded across this
 |      ssh connection.
 |
 |      :param str address: the address to stop forwarding
 |      :param int port: the port to stop forwarding
 |
 |  close(self)
 |      Close this session, and any open channels that are tied to it.
 |
 |  connect(self, hostkey=None, username='', password=None, pkey=None)
 |      Negotiate an SSH2 session, and optionally verify the server's host key
 |      and authenticate using a password or private key.  This is a shortcut
 |      for `start_client`, `get_remote_server_key`, and
 |      `Transport.auth_password` or `Transport.auth_publickey`.  Use those
 |      methods if you want more control.
 |
 |      You can use this method immediately after creating a Transport to
 |      negotiate encryption with a server.  If it fails, an exception will be
 |      thrown.  On success, the method will return cleanly, and an encrypted
 |      session exists.  You may immediately call `open_channel` or
 |      `open_session` to get a `.Channel` object, which is used for data
 |      transfer.
 |
 |      .. note::
 |          If you fail to supply a password or private key, this method may
 |          succeed, but a subsequent `open_channel` or `open_session` call may
 |          fail because you haven't authenticated yet.
 |
 |      :param .PKey hostkey:
 |          the host key expected from the server, or ``None`` if you don't
 |          want to do host key verification.
 |      :param str username: the username to authenticate as.
 |      :param str password:
 |          a password to use for authentication, if you want to use password
 |          authentication; otherwise ``None``.
 |      :param .PKey pkey:
 |          a private key to use for authentication, if you want to use private
 |          key authentication; otherwise ``None``.
 |
 |      :raises: `.SSHException` -- if the SSH2 negotiation fails, the host key
 |          supplied by the server is incorrect, or authentication fails.
 |
 |  get_banner(self)
 |      Return the banner supplied by the server upon connect. If no banner is
 |      supplied, this method returns ``None``.
 |
 |      :returns: server supplied banner (`str`), or ``None``.
 |
 |      .. versionadded:: 1.13
 |
 |  get_exception(self)
 |      Return any exception that happened during the last server request.
 |      This can be used to fetch more specific error information after using
 |      calls like `start_client`.  The exception (if any) is cleared after
 |      this call.
 |
 |      :return:
 |          an exception, or ``None`` if there is no stored exception.
 |
 |      .. versionadded:: 1.1
 |
 |  get_hexdump(self)
 |      Return ``True`` if the transport is currently logging hex dumps of
 |      protocol traffic.
 |
 |      :return: ``True`` if hex dumps are being logged, else ``False``.
 |
 |      .. versionadded:: 1.4
 |
 |  get_log_channel(self)
 |      Return the channel name used for this transport's logging.
 |
 |      :return: channel name as a `str`
 |
 |      .. versionadded:: 1.2
 |
 |  get_remote_server_key(self)
 |      Return the host key of the server (in client mode).
 |
 |      .. note::
 |          Previously this call returned a tuple of ``(key type, key
 |          string)``. You can get the same effect by calling `.PKey.get_name`
 |          for the key type, and ``str(key)`` for the key string.
 |
 |      :raises: `.SSHException` -- if no session is currently active.
 |
 |      :return: public key (`.PKey`) of the remote server
 |
 |  get_security_options(self)
 |      Return a `.SecurityOptions` object which can be used to tweak the
 |      encryption algorithms this transport will permit (for encryption,
 |      digest/hash operations, public keys, and key exchanges) and the order
 |      of preference for them.
 |
 |  get_server_key(self)
 |      Return the active host key, in server mode.  After negotiating with the
 |      client, this method will return the negotiated host key.  If only one
 |      type of host key was set with `add_server_key`, that's the only key
 |      that will ever be returned.  But in cases where you have set more than
 |      one type of host key, the key type will be negotiated by the client,
 |      and this method will return the key of the type agreed on.  If the host
 |      key has not been negotiated yet, ``None`` is returned.  In client mode,
 |      the behavior is undefined.
 |
 |      :return:
 |          host key (`.PKey`) of the type negotiated by the client, or
 |          ``None``.
 |
 |  get_username(self)
 |      Return the username this connection is authenticated for.  If the
 |      session is not authenticated (or authentication failed), this method
 |      returns ``None``.
 |
 |      :return: username that was authenticated (a `str`), or ``None``.
 |
 |  getpeername(self)
 |      Return the address of the remote side of this Transport, if possible.
 |
 |      This is effectively a wrapper around ``getpeername`` on the underlying
 |      socket.  If the socket-like object has no ``getpeername`` method, then
 |      ``("unknown", 0)`` is returned.
 |
 |      :return:
 |          the address of the remote host, if known, as a ``(str, int)``
 |          tuple.
 |
 |  global_request(self, kind, data=None, wait=True)
 |      Make a global request to the remote host.  These are normally
 |      extensions to the SSH2 protocol.
 |
 |      :param str kind: name of the request.
 |      :param tuple data:
 |          an optional tuple containing additional data to attach to the
 |          request.
 |      :param bool wait:
 |          ``True`` if this method should not return until a response is
 |          received; ``False`` otherwise.
 |      :return:
 |          a `.Message` containing possible additional data if the request was
 |          successful (or an empty `.Message` if ``wait`` was ``False``);
 |          ``None`` if the request was denied.
 |
 |  is_active(self)
 |      Return true if this session is active (open).
 |
 |      :return:
 |          True if the session is still active (open); False if the session is
 |          closed
 |
 |  is_authenticated(self)
 |      Return true if this session is active and authenticated.
 |
 |      :return:
 |          True if the session is still open and has been authenticated
 |          successfully; False if authentication failed and/or the session is
 |          closed.
 |
 |  open_channel(self, kind, dest_addr=None, src_addr=None, window_size=None, max_packet_size=None, timeout=None)
 |      Request a new channel to the server. `Channels <.Channel>` are
 |      socket-like objects used for the actual transfer of data across the
 |      session. You may only request a channel after negotiating encryption
 |      (using `connect` or `start_client`) and authenticating.
 |
 |      .. note:: Modifying the the window and packet sizes might have adverse
 |          effects on the channel created. The default values are the same
 |          as in the OpenSSH code base and have been battle tested.
 |
 |      :param str kind:
 |          the kind of channel requested (usually ``"session"``,
 |          ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``)
 |      :param tuple dest_addr:
 |          the destination address (address + port tuple) of this port
 |          forwarding, if ``kind`` is ``"forwarded-tcpip"`` or
 |          ``"direct-tcpip"`` (ignored for other channel types)
 |      :param src_addr: the source address of this port forwarding, if
 |          ``kind`` is ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``
 |      :param int window_size:
 |          optional window size for this session.
 |      :param int max_packet_size:
 |          optional max packet size for this session.
 |      :param float timeout:
 |          optional timeout opening a channel, default 3600s (1h)
 |
 |      :return: a new `.Channel` on success
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected, the session ends
 |          prematurely or there is a timeout opening a channel
 |
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  open_forward_agent_channel(self)
 |      Request a new channel to the client, of type
 |      ``"auth-agent@openssh.com"``.
 |
 |      This is just an alias for ``open_channel('auth-agent@openssh.com')``.
 |
 |      :return: a new `.Channel`
 |
 |      :raises: `.SSHException` --
 |          if the request is rejected or the session ends prematurely
 |
 |  open_forwarded_tcpip_channel(self, src_addr, dest_addr)
 |      Request a new channel back to the client, of type ``forwarded-tcpip``.
 |
 |      This is used after a client has requested port forwarding, for sending
 |      incoming connections back to the client.
 |
 |      :param src_addr: originator's address
 |      :param dest_addr: local (server) connected address
 |
 |  open_session(self, window_size=None, max_packet_size=None, timeout=None)
 |      Request a new channel to the server, of type ``"session"``.  This is
 |      just an alias for calling `open_channel` with an argument of
 |      ``"session"``.
 |
 |      .. note:: Modifying the the window and packet sizes might have adverse
 |          effects on the session created. The default values are the same
 |          as in the OpenSSH code base and have been battle tested.
 |
 |      :param int window_size:
 |          optional window size for this session.
 |      :param int max_packet_size:
 |          optional max packet size for this session.
 |
 |      :return: a new `.Channel`
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected or the session ends
 |          prematurely
 |
 |      .. versionchanged:: 1.13.4/1.14.3/1.15.3
 |          Added the ``timeout`` argument.
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  open_sftp_client(self)
 |      Create an SFTP client channel from an open transport.  On success, an
 |      SFTP session will be opened with the remote host, and a new
 |      `.SFTPClient` object will be returned.
 |
 |      :return:
 |          a new `.SFTPClient` referring to an sftp session (channel) across
 |          this transport
 |
 |  open_x11_channel(self, src_addr=None)
 |      Request a new channel to the client, of type ``"x11"``.  This
 |      is just an alias for ``open_channel('x11', src_addr=src_addr)``.
 |
 |      :param tuple src_addr:
 |          the source address (``(str, int)``) of the x11 server (port is the
 |          x11 port, ie. 6010)
 |      :return: a new `.Channel`
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected or the session ends
 |          prematurely
 |
 |  renegotiate_keys(self)
 |      Force this session to switch to new keys.  Normally this is done
 |      automatically after the session hits a certain number of packets or
 |      bytes sent or received, but this method gives you the option of forcing
 |      new keys whenever you want.  Negotiating new keys causes a pause in
 |      traffic both ways as the two sides swap keys and do computations.  This
 |      method returns when the session has switched to new keys.
 |
 |      :raises:
 |          `.SSHException` -- if the key renegotiation failed (which causes
 |          the session to end)
 |
 |  request_port_forward(self, address, port, handler=None)
 |      Ask the server to forward TCP connections from a listening port on
 |      the server, across this SSH session.
 |
 |      If a handler is given, that handler is called from a different thread
 |      whenever a forwarded connection arrives.  The handler parameters are::
 |
 |          handler(
 |              channel,
 |              (origin_addr, origin_port),
 |              (server_addr, server_port),
 |          )
 |
 |      where ``server_addr`` and ``server_port`` are the address and port that
 |      the server was listening on.
 |
 |      If no handler is set, the default behavior is to send new incoming
 |      forwarded connections into the accept queue, to be picked up via
 |      `accept`.
 |
 |      :param str address: the address to bind when forwarding
 |      :param int port:
 |          the port to forward, or 0 to ask the server to allocate any port
 |      :param callable handler:
 |          optional handler for incoming forwarded connections, of the form
 |          ``func(Channel, (str, int), (str, int))``.
 |
 |      :return: the port number (`int`) allocated by the server
 |
 |      :raises:
 |          `.SSHException` -- if the server refused the TCP forward request
 |
 |  run(self)
 |      Method representing the thread's activity.
 |
 |      You may override this method in a subclass. The standard run() method
 |      invokes the callable object passed to the object's constructor as the
 |      target argument, if any, with sequential and keyword arguments taken
 |      from the args and kwargs arguments, respectively.
 |
 |  send_ignore(self, byte_count=None)
 |      Send a junk packet across the encrypted link.  This is sometimes used
 |      to add "noise" to a connection to confuse would-be attackers.  It can
 |      also be used as a keep-alive for long lived connections traversing
 |      firewalls.
 |
 |      :param int byte_count:
 |          the number of random bytes to send in the payload of the ignored
 |          packet -- defaults to a random number from 10 to 41.
 |
 |  set_hexdump(self, hexdump)
 |      Turn on/off logging a hex dump of protocol traffic at DEBUG level in
 |      the logs.  Normally you would want this off (which is the default),
 |      but if you are debugging something, it may be useful.
 |
 |      :param bool hexdump:
 |          ``True`` to log protocol traffix (in hex) to the log; ``False``
 |          otherwise.
 |
 |  set_keepalive(self, interval)
 |      Turn on/off keepalive packets (default is off).  If this is set, after
 |      ``interval`` seconds without sending any data over the connection, a
 |      "keepalive" packet will be sent (and ignored by the remote host).  This
 |      can be useful to keep connections alive over a NAT, for example.
 |
 |      :param int interval:
 |          seconds to wait before sending a keepalive packet (or
 |          0 to disable keepalives).
 |
 |  set_log_channel(self, name)
 |      Set the channel for this transport's logging.  The default is
 |      ``"paramiko.transport"`` but it can be set to anything you want. (See
 |      the `.logging` module for more info.)  SSH Channels will log to a
 |      sub-channel of the one specified.
 |
 |      :param str name: new channel name for logging
 |
 |      .. versionadded:: 1.1
 |
 |  set_subsystem_handler(self, name, handler, *args, **kwargs)
 |      Set the handler class for a subsystem in server mode.  If a request
 |      for this subsystem is made on an open ssh channel later, this handler
 |      will be constructed and called -- see `.SubsystemHandler` for more
 |      detailed documentation.
 |
 |      Any extra parameters (including keyword arguments) are saved and
 |      passed to the `.SubsystemHandler` constructor later.
 |
 |      :param str name: name of the subsystem.
 |      :param handler:
 |          subclass of `.SubsystemHandler` that handles this subsystem.
 |
 |  start_client(self, event=None, timeout=None)
 |      Negotiate a new SSH2 session as a client.  This is the first step after
 |      creating a new `.Transport`.  A separate thread is created for protocol
 |      negotiation.
 |
 |      If an event is passed in, this method returns immediately.  When
 |      negotiation is done (successful or not), the given ``Event`` will
 |      be triggered.  On failure, `is_active` will return ``False``.
 |
 |      (Since 1.4) If ``event`` is ``None``, this method will not return until
 |      negotiation is done.  On success, the method returns normally.
 |      Otherwise an SSHException is raised.
 |
 |      After a successful negotiation, you will usually want to authenticate,
 |      calling `auth_password <Transport.auth_password>` or
 |      `auth_publickey <Transport.auth_publickey>`.
 |
 |      .. note:: `connect` is a simpler method for connecting as a client.
 |
 |      .. note::
 |          After calling this method (or `start_server` or `connect`), you
 |          should no longer directly read from or write to the original socket
 |          object.
 |
 |      :param .threading.Event event:
 |          an event to trigger when negotiation is complete (optional)
 |
 |      :param float timeout:
 |          a timeout, in seconds, for SSH2 session negotiation (optional)
 |
 |      :raises:
 |          `.SSHException` -- if negotiation fails (and no ``event`` was
 |          passed in)
 |
 |  start_server(self, event=None, server=None)
 |      Negotiate a new SSH2 session as a server.  This is the first step after
 |      creating a new `.Transport` and setting up your server host key(s).  A
 |      separate thread is created for protocol negotiation.
 |
 |      If an event is passed in, this method returns immediately.  When
 |      negotiation is done (successful or not), the given ``Event`` will
 |      be triggered.  On failure, `is_active` will return ``False``.
 |
 |      (Since 1.4) If ``event`` is ``None``, this method will not return until
 |      negotiation is done.  On success, the method returns normally.
 |      Otherwise an SSHException is raised.
 |
 |      After a successful negotiation, the client will need to authenticate.
 |      Override the methods `get_allowed_auths
 |      <.ServerInterface.get_allowed_auths>`, `check_auth_none
 |      <.ServerInterface.check_auth_none>`, `check_auth_password
 |      <.ServerInterface.check_auth_password>`, and `check_auth_publickey
 |      <.ServerInterface.check_auth_publickey>` in the given ``server`` object
 |      to control the authentication process.
 |
 |      After a successful authentication, the client should request to open a
 |      channel.  Override `check_channel_request
 |      <.ServerInterface.check_channel_request>` in the given ``server``
 |      object to allow channels to be opened.
 |
 |      .. note::
 |          After calling this method (or `start_client` or `connect`), you
 |          should no longer directly read from or write to the original socket
 |          object.
 |
 |      :param .threading.Event event:
 |          an event to trigger when negotiation is complete.
 |      :param .ServerInterface server:
 |          an object used to perform authentication and create `channels
 |          <.Channel>`
 |
 |      :raises:
 |          `.SSHException` -- if negotiation fails (and no ``event`` was
 |          passed in)
 |
 |  stop_thread(self)
 |
 |  use_compression(self, compress=True)
 |      Turn on/off compression.  This will only have an affect before starting
 |      the transport (ie before calling `connect`, etc).  By default,
 |      compression is off since it negatively affects interactive sessions.
 |
 |      :param bool compress:
 |          ``True`` to ask the remote client/server to compress traffic;
 |          ``False`` to refuse compression
 |
 |      .. versionadded:: 1.5.2
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from Transport:
 |
 |  load_server_moduli(filename=None)
 |      (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 ``/etc/ssh/moduli``).
 |      If you call `load_server_moduli` and it returns ``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 str filename:
 |          optional path to the moduli file, if you happen to know that it's
 |          not in a standard location.
 |      :return:
 |          True if a moduli file was successfully loaded; False otherwise.
 |
 |      .. note:: This has no effect when used in client mode.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from Transport:
 |
 |  preferred_ciphers
 |
 |  preferred_compression
 |
 |  preferred_kex
 |
 |  preferred_keys
 |
 |  preferred_macs
 |
 |  preferred_pubkeys
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from threading.Thread:
 |
 |  getName(self)
 |      Return a string used for identification purposes only.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  isDaemon(self)
 |      Return whether this thread is a daemon.
 |
 |      This method is deprecated, use the daemon attribute instead.
 |
 |  is_alive(self)
 |      Return whether the thread is alive.
 |
 |      This method returns True just before the run() method starts until just
 |      after the run() method terminates. See also the module function
 |      enumerate().
 |
 |  join(self, timeout=None)
 |      Wait until the thread terminates.
 |
 |      This blocks the calling thread until the thread whose join() method is
 |      called terminates -- either normally or through an unhandled exception
 |      or until the optional timeout occurs.
 |
 |      When the timeout argument is present and not None, it should be a
 |      floating-point number specifying a timeout for the operation in seconds
 |      (or fractions thereof). As join() always returns None, you must call
 |      is_alive() after join() to decide whether a timeout happened -- if the
 |      thread is still alive, the join() call timed out.
 |
 |      When the timeout argument is not present or None, the operation will
 |      block until the thread terminates.
 |
 |      A thread can be join()ed many times.
 |
 |      join() raises a RuntimeError if an attempt is made to join the current
 |      thread as that would cause a deadlock. It is also an error to join() a
 |      thread before it has been started and attempts to do so raises the same
 |      exception.
 |
 |  setDaemon(self, daemonic)
 |      Set whether this thread is a daemon.
 |
 |      This method is deprecated, use the .daemon property instead.
 |
 |  setName(self, name)
 |      Set the name string for this thread.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  start(self)
 |      Start the thread's activity.
 |
 |      It must be called at most once per thread object. It arranges for the
 |      object's run() method to be invoked in a separate thread of control.
 |
 |      This method will raise a RuntimeError if called more than once on the
 |      same thread object.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from threading.Thread:
 |
 |  ident
 |      Thread identifier of this thread or None if it has not been started.
 |
 |      This is a nonzero integer. See the get_ident() function. Thread
 |      identifiers may be recycled when a thread exits and another thread is
 |      created. The identifier is available even after the thread has exited.
 |
 |  native_id
 |      Native integral thread ID of this thread, or None if it has not been started.
 |
 |      This is a non-negative integer. See the get_native_id() function.
 |      This represents the Thread ID as reported by the kernel.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from threading.Thread:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  daemon
 |      A boolean value indicating whether this thread is a daemon thread.
 |
 |      This must be set before start() is called, otherwise RuntimeError is
 |      raised. Its initial value is inherited from the creating thread; the
 |      main thread is not a daemon thread and therefore all threads created in
 |      the main thread default to daemon = False.
 |
 |      The entire Python program exits when only daemon threads are left.
 |
 |  name
 |      A string used for identification purposes only.
 |
 |      It has no semantics. Multiple threads may be given the same name. The
 |      initial name is set by the constructor.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
paramiko.SourceResult
Python Library Documentation: class SourceResult in module paramiko.auth_strategy

class SourceResult(builtins.tuple)
 |  SourceResult(source, result)
 |
 |  SourceResult(source, result)
 |
 |  Method resolution order:
 |      SourceResult
 |      builtins.tuple
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __getnewargs__(self) from collections.SourceResult
 |      Return self as a plain tuple.  Used by copy and pickle.
 |
 |  __repr__(self) from collections.SourceResult
 |      Return a nicely formatted representation string
 |
 |  _asdict(self) from collections.SourceResult
 |      Return a new dict which maps field names to their values.
 |
 |  _replace(self, /, **kwds) from collections.SourceResult
 |      Return a new SourceResult object replacing specified fields with new values
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  _make(iterable) from collections.SourceResult
 |      Make a new SourceResult object from a sequence or iterable
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(_cls, source, result) from namedtuple_SourceResult.SourceResult
 |      Create new instance of SourceResult(source, result)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  source
 |      Alias for field number 0
 |
 |  result
 |      Alias for field number 1
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  __match_args__ = ('source', 'result')
 |
 |  _field_defaults = {}
 |
 |  _fields = ('source', 'result')
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.tuple:
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __contains__(self, key, /)
 |      Return bool(key in self).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getitem__(self, key, /)
 |      Return self[key].
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __iter__(self, /)
 |      Implement iter(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __len__(self, /)
 |      Return len(self).
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  count(self, value, /)
 |      Return number of occurrences of value.
 |
 |  index(self, value, start=0, stop=9223372036854775807, /)
 |      Return first index of value.
 |
 |      Raises ValueError if the value is not present.
 |
 |  ----------------------------------------------------------------------
 |  Class methods inherited from builtins.tuple:
 |
 |  __class_getitem__(...)
 |      See PEP 585
paramiko.SubsystemHandler
Python Library Documentation: class SubsystemHandler in module paramiko.server

class SubsystemHandler(threading.Thread)
 |  SubsystemHandler(channel, name, server)
 |
 |  Handler for a subsystem in server mode.  If you create a subclass of this
 |  class and pass it to `.Transport.set_subsystem_handler`, an object of this
 |  class will be created for each request for this subsystem.  Each new object
 |  will be executed within its own new thread by calling `start_subsystem`.
 |  When that method completes, the channel is closed.
 |
 |  For example, if you made a subclass ``MP3Handler`` and registered it as the
 |  handler for subsystem ``"mp3"``, then whenever a client has successfully
 |  authenticated and requests subsystem ``"mp3"``, an object of class
 |  ``MP3Handler`` will be created, and `start_subsystem` will be called on
 |  it from a new thread.
 |
 |  Method resolution order:
 |      SubsystemHandler
 |      threading.Thread
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, channel, name, server)
 |      Create a new handler for a channel.  This is used by `.ServerInterface`
 |      to start up a new handler when a channel requests this subsystem.  You
 |      don't need to override this method, but if you do, be sure to pass the
 |      ``channel`` and ``name`` parameters through to the original
 |      ``__init__`` method here.
 |
 |      :param .Channel channel: the channel associated with this
 |          subsystem request.
 |      :param str name: name of the requested subsystem.
 |      :param .ServerInterface server:
 |          the server object for the session that started this subsystem
 |
 |  finish_subsystem(self)
 |      Perform any cleanup at the end of a subsystem.  The default
 |      implementation just closes the channel.
 |
 |      .. versionadded:: 1.1
 |
 |  get_server(self)
 |      Return the `.ServerInterface` object associated with this channel and
 |      subsystem.
 |
 |  start_subsystem(self, name, transport, channel)
 |      Process an ssh subsystem in server mode.  This method is called on a
 |      new object (and in a new thread) for each subsystem request.  It is
 |      assumed that all subsystem logic will take place here, and when the
 |      subsystem is finished, this method will return.  After this method
 |      returns, the channel is closed.
 |
 |      The combination of ``transport`` and ``channel`` are unique; this
 |      handler corresponds to exactly one `.Channel` on one `.Transport`.
 |
 |      .. note::
 |          It is the responsibility of this method to exit if the underlying
 |          `.Transport` is closed.  This can be done by checking
 |          `.Transport.is_active` or noticing an EOF on the `.Channel`.  If
 |          this method loops forever without checking for this case, your
 |          Python interpreter may refuse to exit because this thread will
 |          still be running.
 |
 |      :param str name: name of the requested subsystem.
 |      :param .Transport transport: the server-mode `.Transport`.
 |      :param .Channel channel: the channel associated with this subsystem
 |          request.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from threading.Thread:
 |
 |  __repr__(self)
 |      Return repr(self).
 |
 |  getName(self)
 |      Return a string used for identification purposes only.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  isDaemon(self)
 |      Return whether this thread is a daemon.
 |
 |      This method is deprecated, use the daemon attribute instead.
 |
 |  is_alive(self)
 |      Return whether the thread is alive.
 |
 |      This method returns True just before the run() method starts until just
 |      after the run() method terminates. See also the module function
 |      enumerate().
 |
 |  join(self, timeout=None)
 |      Wait until the thread terminates.
 |
 |      This blocks the calling thread until the thread whose join() method is
 |      called terminates -- either normally or through an unhandled exception
 |      or until the optional timeout occurs.
 |
 |      When the timeout argument is present and not None, it should be a
 |      floating-point number specifying a timeout for the operation in seconds
 |      (or fractions thereof). As join() always returns None, you must call
 |      is_alive() after join() to decide whether a timeout happened -- if the
 |      thread is still alive, the join() call timed out.
 |
 |      When the timeout argument is not present or None, the operation will
 |      block until the thread terminates.
 |
 |      A thread can be join()ed many times.
 |
 |      join() raises a RuntimeError if an attempt is made to join the current
 |      thread as that would cause a deadlock. It is also an error to join() a
 |      thread before it has been started and attempts to do so raises the same
 |      exception.
 |
 |  run(self)
 |      Method representing the thread's activity.
 |
 |      You may override this method in a subclass. The standard run() method
 |      invokes the callable object passed to the object's constructor as the
 |      target argument, if any, with sequential and keyword arguments taken
 |      from the args and kwargs arguments, respectively.
 |
 |  setDaemon(self, daemonic)
 |      Set whether this thread is a daemon.
 |
 |      This method is deprecated, use the .daemon property instead.
 |
 |  setName(self, name)
 |      Set the name string for this thread.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  start(self)
 |      Start the thread's activity.
 |
 |      It must be called at most once per thread object. It arranges for the
 |      object's run() method to be invoked in a separate thread of control.
 |
 |      This method will raise a RuntimeError if called more than once on the
 |      same thread object.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from threading.Thread:
 |
 |  ident
 |      Thread identifier of this thread or None if it has not been started.
 |
 |      This is a nonzero integer. See the get_ident() function. Thread
 |      identifiers may be recycled when a thread exits and another thread is
 |      created. The identifier is available even after the thread has exited.
 |
 |  native_id
 |      Native integral thread ID of this thread, or None if it has not been started.
 |
 |      This is a non-negative integer. See the get_native_id() function.
 |      This represents the Thread ID as reported by the kernel.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from threading.Thread:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  daemon
 |      A boolean value indicating whether this thread is a daemon thread.
 |
 |      This must be set before start() is called, otherwise RuntimeError is
 |      raised. Its initial value is inherited from the creating thread; the
 |      main thread is not a daemon thread and therefore all threads created in
 |      the main thread default to daemon = False.
 |
 |      The entire Python program exits when only daemon threads are left.
 |
 |  name
 |      A string used for identification purposes only.
 |
 |      It has no semantics. Multiple threads may be given the same name. The
 |      initial name is set by the constructor.
paramiko.Transport
Python Library Documentation: class Transport in module paramiko.transport

class Transport(threading.Thread, paramiko.util.ClosingContextManager)
 |  Transport(sock, default_window_size=2097152, default_max_packet_size=32768, disabled_algorithms=None, server_sig_algs=True, strict_kex=True, packetizer_class=None)
 |
 |  An SSH Transport attaches to a stream (usually a socket), negotiates an
 |  encrypted session, authenticates, and then creates stream tunnels, called
 |  `channels <.Channel>`, across the session.  Multiple channels can be
 |  multiplexed across a single session (and often are, in the case of port
 |  forwardings).
 |
 |  Instances of this class may be used as context managers.
 |
 |  Method resolution order:
 |      Transport
 |      threading.Thread
 |      paramiko.util.ClosingContextManager
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, sock, default_window_size=2097152, default_max_packet_size=32768, disabled_algorithms=None, server_sig_algs=True, strict_kex=True, packetizer_class=None)
 |      Create a new SSH session over an existing socket, or socket-like
 |      object.  This only creates the `.Transport` object; it doesn't begin
 |      the SSH session yet.  Use `connect` or `start_client` to begin a client
 |      session, or `start_server` to begin a server session.
 |
 |      If the object is not actually a socket, it must have the following
 |      methods:
 |
 |      - ``send(bytes)``: Writes from 1 to ``len(bytes)`` bytes, and returns
 |        an int representing the number of bytes written.  Returns
 |        0 or raises ``EOFError`` if the stream has been closed.
 |      - ``recv(int)``: Reads from 1 to ``int`` bytes and returns them as a
 |        string.  Returns 0 or raises ``EOFError`` if the stream has been
 |        closed.
 |      - ``close()``: Closes the socket.
 |      - ``settimeout(n)``: Sets a (float) timeout on I/O operations.
 |
 |      For ease of use, you may also pass in an address (as a tuple) or a host
 |      string as the ``sock`` argument.  (A host string is a hostname with an
 |      optional port (separated by ``":"``) which will be converted into a
 |      tuple of ``(hostname, port)``.)  A socket will be connected to this
 |      address and used for communication.  Exceptions from the ``socket``
 |      call may be thrown in this case.
 |
 |      .. note::
 |          Modifying the the window and packet sizes might have adverse
 |          effects on your channels created from this transport. The default
 |          values are the same as in the OpenSSH code base and have been
 |          battle tested.
 |
 |      :param socket sock:
 |          a socket or socket-like object to create the session over.
 |      :param int default_window_size:
 |          sets the default window size on the transport. (defaults to
 |          2097152)
 |      :param int default_max_packet_size:
 |          sets the default max packet size on the transport. (defaults to
 |          32768)
 |      :param dict disabled_algorithms:
 |          If given, must be a dictionary mapping algorithm type to an
 |          iterable of algorithm identifiers, which will be disabled for the
 |          lifetime of the transport.
 |
 |          Keys should match the last word in the class' builtin algorithm
 |          tuple attributes, such as ``"ciphers"`` to disable names within
 |          ``_preferred_ciphers``; or ``"kex"`` to disable something defined
 |          inside ``_preferred_kex``. Values should exactly match members of
 |          the matching attribute.
 |
 |          For example, if you need to disable
 |          ``diffie-hellman-group16-sha512`` key exchange (perhaps because
 |          your code talks to a server which implements it differently from
 |          Paramiko), specify ``disabled_algorithms={"kex":
 |          ["diffie-hellman-group16-sha512"]}``.
 |      :param bool server_sig_algs:
 |          Whether to send an extra message to compatible clients, in server
 |          mode, with a list of supported pubkey algorithms. Default:
 |          ``True``.
 |      :param bool strict_kex:
 |          Whether to advertise (and implement, if client also advertises
 |          support for) a "strict kex" mode for safer handshaking. Default:
 |          ``True``.
 |      :param packetizer_class:
 |          Which class to use for instantiating the internal packet handler.
 |          Default: ``None`` (i.e.: use `Packetizer` as normal).
 |
 |      .. versionchanged:: 1.15
 |          Added the ``default_window_size`` and ``default_max_packet_size``
 |          arguments.
 |      .. versionchanged:: 2.6
 |          Added the ``disabled_algorithms`` kwarg.
 |      .. versionchanged:: 2.9
 |          Added the ``server_sig_algs`` kwarg.
 |      .. versionchanged:: 3.4
 |          Added the ``strict_kex`` kwarg.
 |      .. versionchanged:: 3.4
 |          Added the ``packetizer_class`` kwarg.
 |
 |  __repr__(self)
 |      Returns a string representation of this object, for debugging.
 |
 |  accept(self, timeout=None)
 |      Return the next channel opened by the client over this transport, in
 |      server mode.  If no channel is opened before the given timeout,
 |      ``None`` is returned.
 |
 |      :param int timeout:
 |          seconds to wait for a channel, or ``None`` to wait forever
 |      :return: a new `.Channel` opened by the client
 |
 |  add_server_key(self, key)
 |      Add a host key to the list of keys used for server mode.  When behaving
 |      as a server, the host key is used to sign certain packets during the
 |      SSH2 negotiation, so that the client can trust that we are who we say
 |      we are.  Because this is used for signing, the key must contain private
 |      key info, not just the public half.  Only one key of each type is kept.
 |
 |      :param .PKey key:
 |          the host key (instance of some subclass) to add
 |
 |  atfork(self)
 |      Terminate this Transport without closing the session.  On posix
 |      systems, if a Transport is open during process forking, both parent
 |      and child will share the underlying socket, but only one process can
 |      use the connection (without corrupting the session).  Use this method
 |      to clean up a Transport object without disrupting the other process.
 |
 |      .. versionadded:: 1.5.3
 |
 |  auth_interactive(self, username, handler, submethods='')
 |      Authenticate to the server interactively.  A handler is used to answer
 |      arbitrary questions from the server.  On many servers, this is just a
 |      dumb wrapper around PAM.
 |
 |      This method will block until the authentication succeeds or fails,
 |      periodically calling the handler asynchronously to get answers to
 |      authentication questions.  The handler may be called more than once
 |      if the server continues to ask questions.
 |
 |      The handler is expected to be a callable that will handle calls of the
 |      form: ``handler(title, instructions, prompt_list)``.  The ``title`` is
 |      meant to be a dialog-window title, and the ``instructions`` are user
 |      instructions (both are strings).  ``prompt_list`` will be a list of
 |      prompts, each prompt being a tuple of ``(str, bool)``.  The string is
 |      the prompt and the boolean indicates whether the user text should be
 |      echoed.
 |
 |      A sample call would thus be:
 |      ``handler('title', 'instructions', [('Password:', False)])``.
 |
 |      The handler should return a list or tuple of answers to the server's
 |      questions.
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param callable handler: a handler for responding to server questions
 |      :param str submethods: a string list of desired submethods (optional)
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty).
 |
 |      :raises: `.BadAuthenticationType` -- if public-key authentication isn't
 |          allowed by the server for this user
 |      :raises: `.AuthenticationException` -- if the authentication failed
 |      :raises: `.SSHException` -- if there was a network error
 |
 |      .. versionadded:: 1.5
 |
 |  auth_interactive_dumb(self, username, handler=None, submethods='')
 |      Authenticate to the server interactively but dumber.
 |      Just print the prompt and / or instructions to stdout and send back
 |      the response. This is good for situations where partial auth is
 |      achieved by key and then the user has to enter a 2fac token.
 |
 |  auth_none(self, username)
 |      Try to authenticate to the server using no authentication at all.
 |      This will almost always fail.  It may be useful for determining the
 |      list of authentication types supported by the server, by catching the
 |      `.BadAuthenticationType` exception raised.
 |
 |      :param str username: the username to authenticate as
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if "none" authentication isn't allowed
 |          by the server for this user
 |      :raises:
 |          `.SSHException` -- if the authentication failed due to a network
 |          error
 |
 |      .. versionadded:: 1.5
 |
 |  auth_password(self, username, password, event=None, fallback=True)
 |      Authenticate to the server using a password.  The username and password
 |      are sent over an encrypted link.
 |
 |      If an ``event`` is passed in, this method will return immediately, and
 |      the event will be triggered once authentication succeeds or fails.  On
 |      success, `is_authenticated` will return ``True``.  On failure, you may
 |      use `get_exception` to get more detailed error information.
 |
 |      Since 1.1, if no event is passed, this method will block until the
 |      authentication succeeds or fails.  On failure, an exception is raised.
 |      Otherwise, the method simply returns.
 |
 |      Since 1.5, if no event is passed and ``fallback`` is ``True`` (the
 |      default), if the server doesn't support plain password authentication
 |      but does support so-called "keyboard-interactive" mode, an attempt
 |      will be made to authenticate using this interactive mode.  If it fails,
 |      the normal exception will be thrown as if the attempt had never been
 |      made.  This is useful for some recent Gentoo and Debian distributions,
 |      which turn off plain password authentication in a misguided belief
 |      that interactive authentication is "more secure".  (It's not.)
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param basestring password: the password to authenticate with
 |      :param .threading.Event event:
 |          an event to trigger when the authentication attempt is complete
 |          (whether it was successful or not)
 |      :param bool fallback:
 |          ``True`` if an attempt at an automated "interactive" password auth
 |          should be made if the server doesn't support normal password auth
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if password authentication isn't
 |          allowed by the server for this user (and no event was passed in)
 |      :raises:
 |          `.AuthenticationException` -- if the authentication failed (and no
 |          event was passed in)
 |      :raises: `.SSHException` -- if there was a network error
 |
 |  auth_publickey(self, username, key, event=None)
 |      Authenticate to the server using a private key.  The key is used to
 |      sign data from the server, so it must include the private part.
 |
 |      If an ``event`` is passed in, this method will return immediately, and
 |      the event will be triggered once authentication succeeds or fails.  On
 |      success, `is_authenticated` will return ``True``.  On failure, you may
 |      use `get_exception` to get more detailed error information.
 |
 |      Since 1.1, if no event is passed, this method will block until the
 |      authentication succeeds or fails.  On failure, an exception is raised.
 |      Otherwise, the method simply returns.
 |
 |      If the server requires multi-step authentication (which is very rare),
 |      this method will return a list of auth types permissible for the next
 |      step.  Otherwise, in the normal case, an empty list is returned.
 |
 |      :param str username: the username to authenticate as
 |      :param .PKey key: the private key to authenticate with
 |      :param .threading.Event event:
 |          an event to trigger when the authentication attempt is complete
 |          (whether it was successful or not)
 |      :return:
 |          list of auth types permissible for the next stage of
 |          authentication (normally empty)
 |
 |      :raises:
 |          `.BadAuthenticationType` -- if public-key authentication isn't
 |          allowed by the server for this user (and no event was passed in)
 |      :raises:
 |          `.AuthenticationException` -- if the authentication failed (and no
 |          event was passed in)
 |      :raises: `.SSHException` -- if there was a network error
 |
 |  cancel_port_forward(self, address, port)
 |      Ask the server to cancel a previous port-forwarding request.  No more
 |      connections to the given address & port will be forwarded across this
 |      ssh connection.
 |
 |      :param str address: the address to stop forwarding
 |      :param int port: the port to stop forwarding
 |
 |  close(self)
 |      Close this session, and any open channels that are tied to it.
 |
 |  connect(self, hostkey=None, username='', password=None, pkey=None)
 |      Negotiate an SSH2 session, and optionally verify the server's host key
 |      and authenticate using a password or private key.  This is a shortcut
 |      for `start_client`, `get_remote_server_key`, and
 |      `Transport.auth_password` or `Transport.auth_publickey`.  Use those
 |      methods if you want more control.
 |
 |      You can use this method immediately after creating a Transport to
 |      negotiate encryption with a server.  If it fails, an exception will be
 |      thrown.  On success, the method will return cleanly, and an encrypted
 |      session exists.  You may immediately call `open_channel` or
 |      `open_session` to get a `.Channel` object, which is used for data
 |      transfer.
 |
 |      .. note::
 |          If you fail to supply a password or private key, this method may
 |          succeed, but a subsequent `open_channel` or `open_session` call may
 |          fail because you haven't authenticated yet.
 |
 |      :param .PKey hostkey:
 |          the host key expected from the server, or ``None`` if you don't
 |          want to do host key verification.
 |      :param str username: the username to authenticate as.
 |      :param str password:
 |          a password to use for authentication, if you want to use password
 |          authentication; otherwise ``None``.
 |      :param .PKey pkey:
 |          a private key to use for authentication, if you want to use private
 |          key authentication; otherwise ``None``.
 |
 |      :raises: `.SSHException` -- if the SSH2 negotiation fails, the host key
 |          supplied by the server is incorrect, or authentication fails.
 |
 |  get_banner(self)
 |      Return the banner supplied by the server upon connect. If no banner is
 |      supplied, this method returns ``None``.
 |
 |      :returns: server supplied banner (`str`), or ``None``.
 |
 |      .. versionadded:: 1.13
 |
 |  get_exception(self)
 |      Return any exception that happened during the last server request.
 |      This can be used to fetch more specific error information after using
 |      calls like `start_client`.  The exception (if any) is cleared after
 |      this call.
 |
 |      :return:
 |          an exception, or ``None`` if there is no stored exception.
 |
 |      .. versionadded:: 1.1
 |
 |  get_hexdump(self)
 |      Return ``True`` if the transport is currently logging hex dumps of
 |      protocol traffic.
 |
 |      :return: ``True`` if hex dumps are being logged, else ``False``.
 |
 |      .. versionadded:: 1.4
 |
 |  get_log_channel(self)
 |      Return the channel name used for this transport's logging.
 |
 |      :return: channel name as a `str`
 |
 |      .. versionadded:: 1.2
 |
 |  get_remote_server_key(self)
 |      Return the host key of the server (in client mode).
 |
 |      .. note::
 |          Previously this call returned a tuple of ``(key type, key
 |          string)``. You can get the same effect by calling `.PKey.get_name`
 |          for the key type, and ``str(key)`` for the key string.
 |
 |      :raises: `.SSHException` -- if no session is currently active.
 |
 |      :return: public key (`.PKey`) of the remote server
 |
 |  get_security_options(self)
 |      Return a `.SecurityOptions` object which can be used to tweak the
 |      encryption algorithms this transport will permit (for encryption,
 |      digest/hash operations, public keys, and key exchanges) and the order
 |      of preference for them.
 |
 |  get_server_key(self)
 |      Return the active host key, in server mode.  After negotiating with the
 |      client, this method will return the negotiated host key.  If only one
 |      type of host key was set with `add_server_key`, that's the only key
 |      that will ever be returned.  But in cases where you have set more than
 |      one type of host key, the key type will be negotiated by the client,
 |      and this method will return the key of the type agreed on.  If the host
 |      key has not been negotiated yet, ``None`` is returned.  In client mode,
 |      the behavior is undefined.
 |
 |      :return:
 |          host key (`.PKey`) of the type negotiated by the client, or
 |          ``None``.
 |
 |  get_username(self)
 |      Return the username this connection is authenticated for.  If the
 |      session is not authenticated (or authentication failed), this method
 |      returns ``None``.
 |
 |      :return: username that was authenticated (a `str`), or ``None``.
 |
 |  getpeername(self)
 |      Return the address of the remote side of this Transport, if possible.
 |
 |      This is effectively a wrapper around ``getpeername`` on the underlying
 |      socket.  If the socket-like object has no ``getpeername`` method, then
 |      ``("unknown", 0)`` is returned.
 |
 |      :return:
 |          the address of the remote host, if known, as a ``(str, int)``
 |          tuple.
 |
 |  global_request(self, kind, data=None, wait=True)
 |      Make a global request to the remote host.  These are normally
 |      extensions to the SSH2 protocol.
 |
 |      :param str kind: name of the request.
 |      :param tuple data:
 |          an optional tuple containing additional data to attach to the
 |          request.
 |      :param bool wait:
 |          ``True`` if this method should not return until a response is
 |          received; ``False`` otherwise.
 |      :return:
 |          a `.Message` containing possible additional data if the request was
 |          successful (or an empty `.Message` if ``wait`` was ``False``);
 |          ``None`` if the request was denied.
 |
 |  is_active(self)
 |      Return true if this session is active (open).
 |
 |      :return:
 |          True if the session is still active (open); False if the session is
 |          closed
 |
 |  is_authenticated(self)
 |      Return true if this session is active and authenticated.
 |
 |      :return:
 |          True if the session is still open and has been authenticated
 |          successfully; False if authentication failed and/or the session is
 |          closed.
 |
 |  open_channel(self, kind, dest_addr=None, src_addr=None, window_size=None, max_packet_size=None, timeout=None)
 |      Request a new channel to the server. `Channels <.Channel>` are
 |      socket-like objects used for the actual transfer of data across the
 |      session. You may only request a channel after negotiating encryption
 |      (using `connect` or `start_client`) and authenticating.
 |
 |      .. note:: Modifying the the window and packet sizes might have adverse
 |          effects on the channel created. The default values are the same
 |          as in the OpenSSH code base and have been battle tested.
 |
 |      :param str kind:
 |          the kind of channel requested (usually ``"session"``,
 |          ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``)
 |      :param tuple dest_addr:
 |          the destination address (address + port tuple) of this port
 |          forwarding, if ``kind`` is ``"forwarded-tcpip"`` or
 |          ``"direct-tcpip"`` (ignored for other channel types)
 |      :param src_addr: the source address of this port forwarding, if
 |          ``kind`` is ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``
 |      :param int window_size:
 |          optional window size for this session.
 |      :param int max_packet_size:
 |          optional max packet size for this session.
 |      :param float timeout:
 |          optional timeout opening a channel, default 3600s (1h)
 |
 |      :return: a new `.Channel` on success
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected, the session ends
 |          prematurely or there is a timeout opening a channel
 |
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  open_forward_agent_channel(self)
 |      Request a new channel to the client, of type
 |      ``"auth-agent@openssh.com"``.
 |
 |      This is just an alias for ``open_channel('auth-agent@openssh.com')``.
 |
 |      :return: a new `.Channel`
 |
 |      :raises: `.SSHException` --
 |          if the request is rejected or the session ends prematurely
 |
 |  open_forwarded_tcpip_channel(self, src_addr, dest_addr)
 |      Request a new channel back to the client, of type ``forwarded-tcpip``.
 |
 |      This is used after a client has requested port forwarding, for sending
 |      incoming connections back to the client.
 |
 |      :param src_addr: originator's address
 |      :param dest_addr: local (server) connected address
 |
 |  open_session(self, window_size=None, max_packet_size=None, timeout=None)
 |      Request a new channel to the server, of type ``"session"``.  This is
 |      just an alias for calling `open_channel` with an argument of
 |      ``"session"``.
 |
 |      .. note:: Modifying the the window and packet sizes might have adverse
 |          effects on the session created. The default values are the same
 |          as in the OpenSSH code base and have been battle tested.
 |
 |      :param int window_size:
 |          optional window size for this session.
 |      :param int max_packet_size:
 |          optional max packet size for this session.
 |
 |      :return: a new `.Channel`
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected or the session ends
 |          prematurely
 |
 |      .. versionchanged:: 1.13.4/1.14.3/1.15.3
 |          Added the ``timeout`` argument.
 |      .. versionchanged:: 1.15
 |          Added the ``window_size`` and ``max_packet_size`` arguments.
 |
 |  open_sftp_client(self)
 |      Create an SFTP client channel from an open transport.  On success, an
 |      SFTP session will be opened with the remote host, and a new
 |      `.SFTPClient` object will be returned.
 |
 |      :return:
 |          a new `.SFTPClient` referring to an sftp session (channel) across
 |          this transport
 |
 |  open_x11_channel(self, src_addr=None)
 |      Request a new channel to the client, of type ``"x11"``.  This
 |      is just an alias for ``open_channel('x11', src_addr=src_addr)``.
 |
 |      :param tuple src_addr:
 |          the source address (``(str, int)``) of the x11 server (port is the
 |          x11 port, ie. 6010)
 |      :return: a new `.Channel`
 |
 |      :raises:
 |          `.SSHException` -- if the request is rejected or the session ends
 |          prematurely
 |
 |  renegotiate_keys(self)
 |      Force this session to switch to new keys.  Normally this is done
 |      automatically after the session hits a certain number of packets or
 |      bytes sent or received, but this method gives you the option of forcing
 |      new keys whenever you want.  Negotiating new keys causes a pause in
 |      traffic both ways as the two sides swap keys and do computations.  This
 |      method returns when the session has switched to new keys.
 |
 |      :raises:
 |          `.SSHException` -- if the key renegotiation failed (which causes
 |          the session to end)
 |
 |  request_port_forward(self, address, port, handler=None)
 |      Ask the server to forward TCP connections from a listening port on
 |      the server, across this SSH session.
 |
 |      If a handler is given, that handler is called from a different thread
 |      whenever a forwarded connection arrives.  The handler parameters are::
 |
 |          handler(
 |              channel,
 |              (origin_addr, origin_port),
 |              (server_addr, server_port),
 |          )
 |
 |      where ``server_addr`` and ``server_port`` are the address and port that
 |      the server was listening on.
 |
 |      If no handler is set, the default behavior is to send new incoming
 |      forwarded connections into the accept queue, to be picked up via
 |      `accept`.
 |
 |      :param str address: the address to bind when forwarding
 |      :param int port:
 |          the port to forward, or 0 to ask the server to allocate any port
 |      :param callable handler:
 |          optional handler for incoming forwarded connections, of the form
 |          ``func(Channel, (str, int), (str, int))``.
 |
 |      :return: the port number (`int`) allocated by the server
 |
 |      :raises:
 |          `.SSHException` -- if the server refused the TCP forward request
 |
 |  run(self)
 |      Method representing the thread's activity.
 |
 |      You may override this method in a subclass. The standard run() method
 |      invokes the callable object passed to the object's constructor as the
 |      target argument, if any, with sequential and keyword arguments taken
 |      from the args and kwargs arguments, respectively.
 |
 |  send_ignore(self, byte_count=None)
 |      Send a junk packet across the encrypted link.  This is sometimes used
 |      to add "noise" to a connection to confuse would-be attackers.  It can
 |      also be used as a keep-alive for long lived connections traversing
 |      firewalls.
 |
 |      :param int byte_count:
 |          the number of random bytes to send in the payload of the ignored
 |          packet -- defaults to a random number from 10 to 41.
 |
 |  set_hexdump(self, hexdump)
 |      Turn on/off logging a hex dump of protocol traffic at DEBUG level in
 |      the logs.  Normally you would want this off (which is the default),
 |      but if you are debugging something, it may be useful.
 |
 |      :param bool hexdump:
 |          ``True`` to log protocol traffix (in hex) to the log; ``False``
 |          otherwise.
 |
 |  set_keepalive(self, interval)
 |      Turn on/off keepalive packets (default is off).  If this is set, after
 |      ``interval`` seconds without sending any data over the connection, a
 |      "keepalive" packet will be sent (and ignored by the remote host).  This
 |      can be useful to keep connections alive over a NAT, for example.
 |
 |      :param int interval:
 |          seconds to wait before sending a keepalive packet (or
 |          0 to disable keepalives).
 |
 |  set_log_channel(self, name)
 |      Set the channel for this transport's logging.  The default is
 |      ``"paramiko.transport"`` but it can be set to anything you want. (See
 |      the `.logging` module for more info.)  SSH Channels will log to a
 |      sub-channel of the one specified.
 |
 |      :param str name: new channel name for logging
 |
 |      .. versionadded:: 1.1
 |
 |  set_subsystem_handler(self, name, handler, *args, **kwargs)
 |      Set the handler class for a subsystem in server mode.  If a request
 |      for this subsystem is made on an open ssh channel later, this handler
 |      will be constructed and called -- see `.SubsystemHandler` for more
 |      detailed documentation.
 |
 |      Any extra parameters (including keyword arguments) are saved and
 |      passed to the `.SubsystemHandler` constructor later.
 |
 |      :param str name: name of the subsystem.
 |      :param handler:
 |          subclass of `.SubsystemHandler` that handles this subsystem.
 |
 |  start_client(self, event=None, timeout=None)
 |      Negotiate a new SSH2 session as a client.  This is the first step after
 |      creating a new `.Transport`.  A separate thread is created for protocol
 |      negotiation.
 |
 |      If an event is passed in, this method returns immediately.  When
 |      negotiation is done (successful or not), the given ``Event`` will
 |      be triggered.  On failure, `is_active` will return ``False``.
 |
 |      (Since 1.4) If ``event`` is ``None``, this method will not return until
 |      negotiation is done.  On success, the method returns normally.
 |      Otherwise an SSHException is raised.
 |
 |      After a successful negotiation, you will usually want to authenticate,
 |      calling `auth_password <Transport.auth_password>` or
 |      `auth_publickey <Transport.auth_publickey>`.
 |
 |      .. note:: `connect` is a simpler method for connecting as a client.
 |
 |      .. note::
 |          After calling this method (or `start_server` or `connect`), you
 |          should no longer directly read from or write to the original socket
 |          object.
 |
 |      :param .threading.Event event:
 |          an event to trigger when negotiation is complete (optional)
 |
 |      :param float timeout:
 |          a timeout, in seconds, for SSH2 session negotiation (optional)
 |
 |      :raises:
 |          `.SSHException` -- if negotiation fails (and no ``event`` was
 |          passed in)
 |
 |  start_server(self, event=None, server=None)
 |      Negotiate a new SSH2 session as a server.  This is the first step after
 |      creating a new `.Transport` and setting up your server host key(s).  A
 |      separate thread is created for protocol negotiation.
 |
 |      If an event is passed in, this method returns immediately.  When
 |      negotiation is done (successful or not), the given ``Event`` will
 |      be triggered.  On failure, `is_active` will return ``False``.
 |
 |      (Since 1.4) If ``event`` is ``None``, this method will not return until
 |      negotiation is done.  On success, the method returns normally.
 |      Otherwise an SSHException is raised.
 |
 |      After a successful negotiation, the client will need to authenticate.
 |      Override the methods `get_allowed_auths
 |      <.ServerInterface.get_allowed_auths>`, `check_auth_none
 |      <.ServerInterface.check_auth_none>`, `check_auth_password
 |      <.ServerInterface.check_auth_password>`, and `check_auth_publickey
 |      <.ServerInterface.check_auth_publickey>` in the given ``server`` object
 |      to control the authentication process.
 |
 |      After a successful authentication, the client should request to open a
 |      channel.  Override `check_channel_request
 |      <.ServerInterface.check_channel_request>` in the given ``server``
 |      object to allow channels to be opened.
 |
 |      .. note::
 |          After calling this method (or `start_client` or `connect`), you
 |          should no longer directly read from or write to the original socket
 |          object.
 |
 |      :param .threading.Event event:
 |          an event to trigger when negotiation is complete.
 |      :param .ServerInterface server:
 |          an object used to perform authentication and create `channels
 |          <.Channel>`
 |
 |      :raises:
 |          `.SSHException` -- if negotiation fails (and no ``event`` was
 |          passed in)
 |
 |  stop_thread(self)
 |
 |  use_compression(self, compress=True)
 |      Turn on/off compression.  This will only have an affect before starting
 |      the transport (ie before calling `connect`, etc).  By default,
 |      compression is off since it negatively affects interactive sessions.
 |
 |      :param bool compress:
 |          ``True`` to ask the remote client/server to compress traffic;
 |          ``False`` to refuse compression
 |
 |      .. versionadded:: 1.5.2
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  load_server_moduli(filename=None)
 |      (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 ``/etc/ssh/moduli``).
 |      If you call `load_server_moduli` and it returns ``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 str filename:
 |          optional path to the moduli file, if you happen to know that it's
 |          not in a standard location.
 |      :return:
 |          True if a moduli file was successfully loaded; False otherwise.
 |
 |      .. note:: This has no effect when used in client mode.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties defined here:
 |
 |  preferred_ciphers
 |
 |  preferred_compression
 |
 |  preferred_kex
 |
 |  preferred_keys
 |
 |  preferred_macs
 |
 |  preferred_pubkeys
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from threading.Thread:
 |
 |  getName(self)
 |      Return a string used for identification purposes only.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  isDaemon(self)
 |      Return whether this thread is a daemon.
 |
 |      This method is deprecated, use the daemon attribute instead.
 |
 |  is_alive(self)
 |      Return whether the thread is alive.
 |
 |      This method returns True just before the run() method starts until just
 |      after the run() method terminates. See also the module function
 |      enumerate().
 |
 |  join(self, timeout=None)
 |      Wait until the thread terminates.
 |
 |      This blocks the calling thread until the thread whose join() method is
 |      called terminates -- either normally or through an unhandled exception
 |      or until the optional timeout occurs.
 |
 |      When the timeout argument is present and not None, it should be a
 |      floating-point number specifying a timeout for the operation in seconds
 |      (or fractions thereof). As join() always returns None, you must call
 |      is_alive() after join() to decide whether a timeout happened -- if the
 |      thread is still alive, the join() call timed out.
 |
 |      When the timeout argument is not present or None, the operation will
 |      block until the thread terminates.
 |
 |      A thread can be join()ed many times.
 |
 |      join() raises a RuntimeError if an attempt is made to join the current
 |      thread as that would cause a deadlock. It is also an error to join() a
 |      thread before it has been started and attempts to do so raises the same
 |      exception.
 |
 |  setDaemon(self, daemonic)
 |      Set whether this thread is a daemon.
 |
 |      This method is deprecated, use the .daemon property instead.
 |
 |  setName(self, name)
 |      Set the name string for this thread.
 |
 |      This method is deprecated, use the name attribute instead.
 |
 |  start(self)
 |      Start the thread's activity.
 |
 |      It must be called at most once per thread object. It arranges for the
 |      object's run() method to be invoked in a separate thread of control.
 |
 |      This method will raise a RuntimeError if called more than once on the
 |      same thread object.
 |
 |  ----------------------------------------------------------------------
 |  Readonly properties inherited from threading.Thread:
 |
 |  ident
 |      Thread identifier of this thread or None if it has not been started.
 |
 |      This is a nonzero integer. See the get_ident() function. Thread
 |      identifiers may be recycled when a thread exits and another thread is
 |      created. The identifier is available even after the thread has exited.
 |
 |  native_id
 |      Native integral thread ID of this thread, or None if it has not been started.
 |
 |      This is a non-negative integer. See the get_native_id() function.
 |      This represents the Thread ID as reported by the kernel.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from threading.Thread:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  daemon
 |      A boolean value indicating whether this thread is a daemon thread.
 |
 |      This must be set before start() is called, otherwise RuntimeError is
 |      raised. Its initial value is inherited from the creating thread; the
 |      main thread is not a daemon thread and therefore all threads created in
 |      the main thread default to daemon = False.
 |
 |      The entire Python program exits when only daemon threads are left.
 |
 |  name
 |      A string used for identification purposes only.
 |
 |      It has no semantics. Multiple threads may be given the same name. The
 |      initial name is set by the constructor.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from paramiko.util.ClosingContextManager:
 |
 |  __enter__(self)
 |
 |  __exit__(self, type, value, traceback)
paramiko.UnknownKeyType
Python Library Documentation: class UnknownKeyType in module paramiko.pkey

class UnknownKeyType(builtins.Exception)
 |  UnknownKeyType(key_type=None, key_bytes=None)
 |
 |  An unknown public/private key algorithm was attempted to be read.
 |
 |  Method resolution order:
 |      UnknownKeyType
 |      builtins.Exception
 |      builtins.BaseException
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  __init__(self, key_type=None, key_bytes=None)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __str__(self)
 |      Return str(self).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __weakref__
 |      list of weak references to the object
 |
 |  ----------------------------------------------------------------------
 |  Static methods inherited from builtins.Exception:
 |
 |  __new__(*args, **kwargs) class method of builtins.Exception
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Methods inherited from builtins.BaseException:
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __reduce__(...)
 |      Helper for pickle.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __setstate__(...)
 |
 |  add_note(...)
 |      Exception.add_note(note) --
 |      add a note to the exception
 |
 |  with_traceback(...)
 |      Exception.with_traceback(tb) --
 |      set self.__traceback__ to tb and return self.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from builtins.BaseException:
 |
 |  __cause__
 |      exception cause
 |
 |  __context__
 |      exception context
 |
 |  __dict__
 |
 |  __suppress_context__
 |
 |  __traceback__
 |
 |  args
paramiko.WarningPolicy
Python Library Documentation: class WarningPolicy in module paramiko.client

class WarningPolicy(MissingHostKeyPolicy)
 |  Policy for logging a Python-style warning for an unknown host key, but
 |  accepting it. This is used by `.SSHClient`.
 |
 |  Method resolution order:
 |      WarningPolicy
 |      MissingHostKeyPolicy
 |      builtins.object
 |
 |  Methods defined here:
 |
 |  missing_host_key(self, client, hostname, key)
 |      Called when an `.SSHClient` receives a server key for a server that
 |      isn't in either the system or local `.HostKeys` object.  To accept
 |      the key, simply return.  To reject, raised an exception (which will
 |      be passed to the calling application).
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors inherited from MissingHostKeyPolicy:
 |
 |  __dict__
 |      dictionary for instance variables
 |
 |  __weakref__
 |      list of weak references to the object
paramiko.agent
Python Library Documentation: module paramiko.agent in paramiko

NAME
    paramiko.agent - SSH Agent interface

CLASSES
    builtins.object
        AgentClientProxy
        AgentRequestHandler
        AgentSSH
            Agent
            AgentServerProxy
    paramiko.pkey.PKey(builtins.object)
        AgentKey
    threading.Thread(builtins.object)
        AgentProxyThread
            AgentLocalProxy
            AgentRemoteProxy

    class Agent(AgentSSH)
     |  Client interface for using private keys from an SSH agent running on the
     |  local machine.  If an SSH agent is running, this class can be used to
     |  connect to it and retrieve `.PKey` objects which can be used when
     |  attempting to authenticate to remote SSH servers.
     |
     |  Upon initialization, a session with the local machine's SSH agent is
     |  opened, if one is running. If no agent is running, initialization will
     |  succeed, but `get_keys` will return an empty tuple.
     |
     |  :raises: `.SSHException` --
     |      if an SSH agent is found, but speaks an incompatible protocol
     |
     |  .. versionchanged:: 2.10
     |      Added support for native openssh agent on windows (extending previous
     |      putty pageant support)
     |
     |  Method resolution order:
     |      Agent
     |      AgentSSH
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  close(self)
     |      Close the SSH agent connection.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AgentSSH:
     |
     |  get_keys(self)
     |      Return the list of keys available through the SSH agent, if any.  If
     |      no SSH agent was running (or it couldn't be contacted), an empty list
     |      will be returned.
     |
     |      This method performs no IO, just returns the list of keys retrieved
     |      when the connection was made.
     |
     |      :return:
     |          a tuple of `.AgentKey` objects representing keys available on the
     |          SSH agent
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AgentSSH:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AgentClientProxy(builtins.object)
     |  AgentClientProxy(chanRemote)
     |
     |  Class proxying request as a client:
     |
     |  #. client ask for a request_forward_agent()
     |  #. server creates a proxy and a fake SSH Agent
     |  #. server ask for establishing a connection when needed,
     |     calling the forward_agent_handler at client side.
     |  #. the forward_agent_handler launch a thread for connecting
     |     the remote fake agent and the local agent
     |  #. Communication occurs ...
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self, chanRemote)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  close(self)
     |      Close the current connection and terminate the agent
     |      Should be called manually
     |
     |  connect(self)
     |      Method automatically called by ``AgentProxyThread.run``.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AgentKey(paramiko.pkey.PKey)
     |  AgentKey(agent: paramiko.agent.Agent, blob: bytes, comment: str = '')
     |
     |  Private key held in a local SSH agent.  This type of key can be used for
     |  authenticating to a remote server (signing).  Most other key operations
     |  work as expected.
     |
     |  .. versionchanged:: 3.2
     |      Added the ``comment`` kwarg and attribute.
     |
     |  .. versionchanged:: 3.2
     |      Added the ``.inner_key`` attribute holding a reference to the 'real'
     |      key instance this key is a proxy for, if one was obtainable, else None.
     |
     |  Method resolution order:
     |      AgentKey
     |      paramiko.pkey.PKey
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __getattr__(self, name)
     |      Proxy any un-implemented methods/properties to the inner_key.
     |
     |  __init__(self, agent: paramiko.agent.Agent, blob: bytes, comment: str = '')
     |      Create a new instance of this public key type.  If ``msg`` is given,
     |      the key's public part(s) will be filled in from the message.  If
     |      ``data`` is given, the key's public part(s) will be filled in from
     |      the string.
     |
     |      :param .Message msg:
     |          an optional SSH `.Message` containing a public key of this type.
     |      :param bytes data:
     |          optional, the bytes of a public key of this type
     |
     |      :raises: `.SSHException` --
     |          if a key cannot be created from the ``data`` or ``msg`` given, or
     |          no key was passed in.
     |
     |  asbytes(self)
     |      Return a string of an SSH `.Message` made up of the public part(s) of
     |      this key.  This string is suitable for passing to `__init__` to
     |      re-create the key object later.
     |
     |  get_bits(self)
     |      Return the number of significant bits in this key.  This is useful
     |      for judging the relative security of a key.
     |
     |      :return: bits in the key (as an `int`)
     |
     |  get_name(self)
     |      Return the name of this private key implementation.
     |
     |      :return:
     |          name of this private key type, in SSH terminology, as a `str` (for
     |          example, ``"ssh-rsa"``).
     |
     |  log(self, *args, **kwargs)
     |
     |  sign_ssh_data(self, data, algorithm=None)
     |      Sign a blob of data with this private key, and return a `.Message`
     |      representing an SSH signature message.
     |
     |      :param bytes data:
     |          the data to sign.
     |      :param str algorithm:
     |          the signature algorithm to use, if different from the key's
     |          internal name. Default: ``None``.
     |      :return: an SSH signature `message <.Message>`.
     |
     |      .. versionchanged:: 2.9
     |          Added the ``algorithm`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  _fields
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.pkey.PKey:
     |
     |  __bytes__(self)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __hash__(self)
     |      Return hash(self).
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  _check_type_and_load_cert(self, msg, key_type, cert_type)
     |      Perform message type-checking & optional certificate loading.
     |
     |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
     |      that the subsequent fields are the key numbers; thus the caller may
     |      expect to treat the message as key material afterwards either way.
     |
     |      The obtained key type is returned for classes which need to know what
     |      it was (e.g. ECDSA.)
     |
     |  _got_bad_key_format_id(self, id_)
     |
     |  _read_private_key(self, tag, f, password=None)
     |
     |  _read_private_key_file(self, tag, filename, password=None)
     |      Read an SSH2-format private key file, looking for a string of the type
     |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
     |      find, and return it as a string.  If the private key is encrypted and
     |      ``password`` is not ``None``, the given password will be used to
     |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
     |
     |      :param str tag:
     |          ``"RSA"`` (or etc), the tag used to mark the data block.
     |      :param str filename:
     |          name of the file to read.
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted.
     |      :return:
     |          the `bytes` that make up the private key.
     |
     |      :raises: ``IOError`` -- if there was an error reading the file.
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``.
     |      :raises: `.SSHException` -- if the key file is invalid.
     |
     |  _read_private_key_openssh(self, lines, password)
     |      Read the new OpenSSH SSH2 private key format available
     |      since OpenSSH version 6.5
     |      Reference:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
     |
     |  _read_private_key_pem(self, lines, end, password)
     |
     |  _uint32_cstruct_unpack(self, data, strformat)
     |      Used to read new OpenSSH private key format.
     |      Unpacks a c data structure containing a mix of 32-bit uints and
     |      variable length strings prefixed by 32-bit uint size field,
     |      according to the specified format. Returns the unpacked vars
     |      in a tuple.
     |      Format strings:
     |        s - denotes a string
     |        i - denotes a long integer, encoded as a byte string
     |        u - denotes a 32-bit unsigned integer
     |        r - the remainder of the input string, returned as a string
     |
     |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  can_sign(self)
     |      Return ``True`` if this key has the private part necessary for signing
     |      data.
     |
     |  get_base64(self)
     |      Return a base64 string containing the public part of this key.  Nothing
     |      secret is revealed.  This format is compatible with that used to store
     |      public key files or recognized host keys.
     |
     |      :return: a base64 `string <str>` containing the public part of the key.
     |
     |  get_fingerprint(self)
     |      Return an MD5 fingerprint of the public part of this key.  Nothing
     |      secret is revealed.
     |
     |      :return:
     |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
     |          format.
     |
     |  load_certificate(self, value)
     |      Supplement the private key contents with data loaded from an OpenSSH
     |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
     |      containing such a file, or a `.Message` object.
     |
     |      The .pub contents adds no real value, since the private key
     |      file includes sufficient information to derive the public
     |      key info. For certificates, however, this can be used on
     |      the client side to offer authentication requests to the server
     |      based on certificate instead of raw public key.
     |
     |      See:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
     |
     |      Note: very little effort is made to validate the certificate contents,
     |      that is for the server to decide if it is good enough to authenticate
     |      successfully.
     |
     |  verify_ssh_sig(self, data, msg)
     |      Given a blob of data, and an SSH message representing a signature of
     |      that data, verify that it was signed with this key.
     |
     |      :param bytes data: the data that was signed.
     |      :param .Message msg: an SSH signature message
     |      :return:
     |          ``True`` if the signature verifies correctly; ``False`` otherwise.
     |
     |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file (or file-like) object.  If the
     |      password is not ``None``, the key is encrypted before writing.
     |
     |      :param file_obj: the file-like object to write into
     |      :param str password: an optional password to use to encrypt the key
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing to the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file.  If the password is not
     |      ``None``, the key is encrypted before writing.
     |
     |      :param str filename: name of the file to write
     |      :param str password:
     |          an optional password to use to encrypt the key file
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from paramiko.pkey.PKey:
     |
     |  from_private_key(file_obj, password=None)
     |      Create a key object by reading a private key from a file (or file-like)
     |      object.  If the private key is encrypted and ``password`` is not
     |      ``None``, the given password will be used to decrypt the key (otherwise
     |      `.PasswordRequiredException` is thrown).
     |
     |      :param file_obj: the file-like object to read from
     |      :param str password:
     |          an optional password to use to decrypt the key, if it's encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the key
     |      :raises: `.PasswordRequiredException` --
     |          if the private key file is encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  from_private_key_file(filename, password=None)
     |      Create a key object by reading a private key file.  If the private
     |      key is encrypted and ``password`` is not ``None``, the given password
     |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
     |      is thrown).  Through the magic of Python, this factory method will
     |      exist in all subclasses of PKey (such as `.RSAKey`), but
     |      is useless on the abstract PKey class.
     |
     |      :param str filename: name of the file to read
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  identifiers()
     |      returns an iterable of key format/name strings this class can handle.
     |
     |      Most classes only have a single identifier, and thus this default
     |      implementation suffices; see `.ECDSAKey` for one example of an
     |      override.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from paramiko.pkey.PKey:
     |
     |  from_path(path, password: Optional[str] = None)
     |      Attempt to instantiate appropriate key subclass from given file path.
     |
     |      :param pathlib.Path path: The path to load (may also be a `str`).
     |      :param str password: Optional decryption password.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Renamed ``passphrase`` argument to ``password`` for consistency
     |          with older methods.
     |
     |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
     |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
     |
     |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
     |      will (if successful) return a new `.Ed25519Key`.
     |
     |      :param str key_type:
     |          The key type, eg ``"ssh-ed25519"``.
     |      :param bytes key_bytes:
     |          The raw byte data forming the key material, as expected by
     |          subclasses' ``data`` parameter.
     |      :param str password:
     |          Optional password used to decrypt ``key_bytes``.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if no registered classes knew about this type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Added the ``password`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.pkey.PKey:
     |
     |  algorithm_name
     |      Return the key algorithm identifier for this key.
     |
     |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
     |      protocol field value.
     |
     |  fingerprint
     |      Modern fingerprint property designed to be comparable to OpenSSH.
     |
     |      Currently only does SHA256 (the OpenSSH default).
     |
     |      .. versionadded:: 3.2
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.pkey.PKey:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.pkey.PKey:
     |
     |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
     |
     |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
     |
     |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
     |
     |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
     |
     |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1

    class AgentLocalProxy(AgentProxyThread)
     |  AgentLocalProxy(agent)
     |
     |  Class to be used when wanting to ask a local SSH Agent being
     |  asked from a remote fake agent (so use a unix socket for ex.)
     |
     |  Method resolution order:
     |      AgentLocalProxy
     |      AgentProxyThread
     |      threading.Thread
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, agent)
     |      This constructor should always be called with keyword arguments. Arguments are:
     |
     |      *group* should be None; reserved for future extension when a ThreadGroup
     |      class is implemented.
     |
     |      *target* is the callable object to be invoked by the run()
     |      method. Defaults to None, meaning nothing is called.
     |
     |      *name* is the thread name. By default, a unique name is constructed of
     |      the form "Thread-N" where N is a small decimal number.
     |
     |      *args* is a list or tuple of arguments for the target invocation. Defaults to ().
     |
     |      *kwargs* is a dictionary of keyword arguments for the target
     |      invocation. Defaults to {}.
     |
     |      If a subclass overrides the constructor, it must make sure to invoke
     |      the base class constructor (Thread.__init__()) before doing anything
     |      else to the thread.
     |
     |  get_connection(self)
     |      Return a pair of socket object and string address.
     |
     |      May block!
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AgentProxyThread:
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.

    class AgentProxyThread(threading.Thread)
     |  AgentProxyThread(agent)
     |
     |  Class in charge of communication between two channels.
     |
     |  Method resolution order:
     |      AgentProxyThread
     |      threading.Thread
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, agent)
     |      This constructor should always be called with keyword arguments. Arguments are:
     |
     |      *group* should be None; reserved for future extension when a ThreadGroup
     |      class is implemented.
     |
     |      *target* is the callable object to be invoked by the run()
     |      method. Defaults to None, meaning nothing is called.
     |
     |      *name* is the thread name. By default, a unique name is constructed of
     |      the form "Thread-N" where N is a small decimal number.
     |
     |      *args* is a list or tuple of arguments for the target invocation. Defaults to ().
     |
     |      *kwargs* is a dictionary of keyword arguments for the target
     |      invocation. Defaults to {}.
     |
     |      If a subclass overrides the constructor, it must make sure to invoke
     |      the base class constructor (Thread.__init__()) before doing anything
     |      else to the thread.
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.

    class AgentRemoteProxy(AgentProxyThread)
     |  AgentRemoteProxy(agent, chan)
     |
     |  Class to be used when wanting to ask a remote SSH Agent
     |
     |  Method resolution order:
     |      AgentRemoteProxy
     |      AgentProxyThread
     |      threading.Thread
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, agent, chan)
     |      This constructor should always be called with keyword arguments. Arguments are:
     |
     |      *group* should be None; reserved for future extension when a ThreadGroup
     |      class is implemented.
     |
     |      *target* is the callable object to be invoked by the run()
     |      method. Defaults to None, meaning nothing is called.
     |
     |      *name* is the thread name. By default, a unique name is constructed of
     |      the form "Thread-N" where N is a small decimal number.
     |
     |      *args* is a list or tuple of arguments for the target invocation. Defaults to ().
     |
     |      *kwargs* is a dictionary of keyword arguments for the target
     |      invocation. Defaults to {}.
     |
     |      If a subclass overrides the constructor, it must make sure to invoke
     |      the base class constructor (Thread.__init__()) before doing anything
     |      else to the thread.
     |
     |  get_connection(self)
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AgentProxyThread:
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.

    class AgentRequestHandler(builtins.object)
     |  AgentRequestHandler(chanClient)
     |
     |  Primary/default implementation of SSH agent forwarding functionality.
     |
     |  Simply instantiate this class, handing it a live command-executing session
     |  object, and it will handle forwarding any local SSH agent processes it
     |  finds.
     |
     |  For example::
     |
     |      # Connect
     |      client = SSHClient()
     |      client.connect(host, port, username)
     |      # Obtain session
     |      session = client.get_transport().open_session()
     |      # Forward local agent
     |      AgentRequestHandler(session)
     |      # Commands executed after this point will see the forwarded agent on
     |      # the remote end.
     |      session.exec_command("git clone https://my.git.repository/")
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self, chanClient)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  close(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AgentSSH(builtins.object)
     |  # TODO (backwards incompat): rename all these - including making some of their
     |  # methods public?
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  get_keys(self)
     |      Return the list of keys available through the SSH agent, if any.  If
     |      no SSH agent was running (or it couldn't be contacted), an empty list
     |      will be returned.
     |
     |      This method performs no IO, just returns the list of keys retrieved
     |      when the connection was made.
     |
     |      :return:
     |          a tuple of `.AgentKey` objects representing keys available on the
     |          SSH agent
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AgentServerProxy(AgentSSH)
     |  AgentServerProxy(t)
     |
     |  Allows an SSH server to access a forwarded agent.
     |
     |  This also creates a unix domain socket on the system to allow external
     |  programs to also access the agent. For this reason, you probably only want
     |  to create one of these.
     |
     |  :meth:`connect` must be called before it is usable. This will also load the
     |  list of keys the agent contains. You must also call :meth:`close` in
     |  order to clean up the unix socket and the thread that maintains it.
     |  (:class:`contextlib.closing` might be helpful to you.)
     |
     |  :param .Transport t: Transport used for SSH Agent communication forwarding
     |
     |  :raises: `.SSHException` -- mostly if we lost the agent
     |
     |  Method resolution order:
     |      AgentServerProxy
     |      AgentSSH
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self, t)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  close(self)
     |      Terminate the agent, clean the files, close connections
     |      Should be called manually
     |
     |  connect(self)
     |
     |  get_env(self)
     |      Helper for the environment under unix
     |
     |      :return:
     |          a dict containing the ``SSH_AUTH_SOCK`` environment variables
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AgentSSH:
     |
     |  get_keys(self)
     |      Return the list of keys available through the SSH agent, if any.  If
     |      no SSH agent was running (or it couldn't be contacted), an empty list
     |      will be returned.
     |
     |      This method performs no IO, just returns the list of keys retrieved
     |      when the connection was made.
     |
     |      :return:
     |          a tuple of `.AgentKey` objects representing keys available on the
     |          SSH agent
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AgentSSH:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    get_agent_connection()
        Returns some SSH agent object, or None if none were found/supported.

        .. versionadded:: 2.10

    select(rlist, wlist, xlist, timeout=None, /)
        Wait until one or more file descriptors are ready for some kind of I/O.

        The first three arguments are iterables of file descriptors to be waited for:
        rlist -- wait until ready for reading
        wlist -- wait until ready for writing
        xlist -- wait for an "exceptional condition"
        If only one kind of condition is required, pass [] for the other lists.

        A file descriptor is either a socket or file object, or a small integer
        gotten from a fileno() method call on one of those.

        The optional 4th argument specifies a timeout in seconds; it may be
        a floating-point number to specify fractions of seconds.  If it is absent
        or None, the call will never time out.

        The return value is a tuple of three lists corresponding to the first three
        arguments; each contains the subset of the corresponding file descriptors
        that are ready.

        *** IMPORTANT NOTICE ***
        On Windows, only sockets are supported; on Unix, all file
        descriptors can be used.

DATA
    ALGORITHM_FLAG_MAP = {'rsa-sha2-256': 2, 'rsa-sha2-256-cert-v01@openss...
    DEBUG = 10
    SSH2_AGENT_IDENTITIES_ANSWER = 12
    SSH2_AGENT_SIGN_RESPONSE = 14
    SSH_AGENT_RSA_SHA2_256 = 2
    SSH_AGENT_RSA_SHA2_512 = 4
    cSSH2_AGENTC_REQUEST_IDENTITIES = b'\x0b'
    cSSH2_AGENTC_SIGN_REQUEST = b'\r'
    io_sleep = 0.01
    key = 'rsa-sha2-512'
    value = 4

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\agent.py

paramiko.auth_handler
Python Library Documentation: module paramiko.auth_handler in paramiko

NAME
    paramiko.auth_handler - `.AuthHandler`

CLASSES
    builtins.object
        AuthHandler
            AuthOnlyHandler

    class AuthHandler(builtins.object)
     |  AuthHandler(transport)
     |
     |  Internal class to handle the mechanics of authentication.
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  abort(self)
     |
     |  auth_interactive(self, username, handler, event, submethods='')
     |      response_list = handler(title, instructions, prompt_list)
     |
     |  auth_none(self, username, event)
     |
     |  auth_password(self, username, password, event)
     |
     |  auth_publickey(self, username, key, event)
     |
     |  get_username(self)
     |
     |  is_authenticated(self)
     |
     |  wait_for_response(self, event)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AuthOnlyHandler(AuthHandler)
     |  AuthOnlyHandler(transport)
     |
     |  AuthHandler, and just auth, no service requests!
     |
     |  .. versionadded:: 3.2
     |
     |  Method resolution order:
     |      AuthOnlyHandler
     |      AuthHandler
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  auth_interactive(self, username, handler, submethods='')
     |      response_list = handler(title, instructions, prompt_list)
     |
     |  auth_none(self, username)
     |
     |  auth_password(self, username, password)
     |
     |  auth_publickey(self, username, key)
     |
     |  send_auth_request(self, username, method, finish_message=None)
     |      Submit a userauth request message & wait for response.
     |
     |      Performs the transport message send call, sets self.auth_event, and
     |      will lock-n-block as necessary to both send, and wait for response to,
     |      the USERAUTH_REQUEST.
     |
     |      Most callers will want to supply a callback to ``finish_message``,
     |      which accepts a Message ``m`` and may call mutator methods on it to add
     |      more fields.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AuthHandler:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  abort(self)
     |
     |  get_username(self)
     |
     |  is_authenticated(self)
     |
     |  wait_for_response(self, event)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthHandler:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

DATA
    AUTH_FAILED = 2
    AUTH_PARTIALLY_SUCCESSFUL = 1
    AUTH_SUCCESSFUL = 0
    DEBUG = 10
    DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE = 14
    DISCONNECT_SERVICE_NOT_AVAILABLE = 7
    INFO = 20
    MSG_SERVICE_ACCEPT = 6
    MSG_SERVICE_REQUEST = 5
    MSG_USERAUTH_BANNER = 53
    MSG_USERAUTH_FAILURE = 51
    MSG_USERAUTH_INFO_REQUEST = 60
    MSG_USERAUTH_INFO_RESPONSE = 61
    MSG_USERAUTH_REQUEST = 50
    MSG_USERAUTH_SUCCESS = 52
    WARNING = 30
    cMSG_DISCONNECT = b'\x01'
    cMSG_SERVICE_ACCEPT = b'\x06'
    cMSG_SERVICE_REQUEST = b'\x05'
    cMSG_USERAUTH_BANNER = b'5'
    cMSG_USERAUTH_FAILURE = b'3'
    cMSG_USERAUTH_INFO_REQUEST = b'<'
    cMSG_USERAUTH_INFO_RESPONSE = b'='
    cMSG_USERAUTH_PK_OK = b'<'
    cMSG_USERAUTH_REQUEST = b'2'
    cMSG_USERAUTH_SUCCESS = b'4'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\auth_handler.py

paramiko.auth_strategy
Python Library Documentation: module paramiko.auth_strategy in paramiko

NAME
    paramiko.auth_strategy - Modern, adaptable authentication machinery.

DESCRIPTION
    Replaces certain parts of `.SSHClient`. For a concrete implementation, see the
    ``OpenSSHAuthStrategy`` class in `Fabric <https://fabfile.org>`_.

CLASSES
    builtins.list(builtins.object)
        AuthResult
    builtins.object
        AuthSource
            NoneAuth
            Password
            PrivateKey
                InMemoryPrivateKey
                OnDiskPrivateKey
        AuthStrategy
    builtins.tuple(builtins.object)
        SourceResult
    paramiko.ssh_exception.AuthenticationException(paramiko.ssh_exception.SSHException)
        AuthFailure

    class AuthFailure(paramiko.ssh_exception.AuthenticationException)
     |  AuthFailure(result)
     |
     |  Basic exception wrapping an `AuthResult` indicating overall auth failure.
     |
     |  Note that `AuthFailure` descends from `AuthenticationException` but is
     |  generally "higher level"; the latter is now only raised by individual
     |  `AuthSource` attempts and should typically only be seen by users when
     |  encapsulated in this class. It subclasses `AuthenticationException`
     |  primarily for backwards compatibility reasons.
     |
     |  Method resolution order:
     |      AuthFailure
     |      paramiko.ssh_exception.AuthenticationException
     |      paramiko.ssh_exception.SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, result)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.ssh_exception.SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class AuthResult(builtins.list)
     |  AuthResult(strategy, *args, **kwargs)
     |
     |  Represents a partial or complete SSH authentication attempt.
     |
     |  This class conceptually extends `AuthStrategy` by pairing the former's
     |  authentication **sources** with the **results** of trying to authenticate
     |  with them.
     |
     |  `AuthResult` is a (subclass of) `list` of `namedtuple`, which are of the
     |  form ``namedtuple('SourceResult', 'source', 'result')`` (where the
     |  ``source`` member is an `AuthSource` and the ``result`` member is either a
     |  return value from the relevant `.Transport` method, or an exception
     |  object).
     |
     |  .. note::
     |      Transport auth method results are always themselves a ``list`` of "next
     |      allowable authentication methods".
     |
     |      In the simple case of "you just authenticated successfully", it's an
     |      empty list; if your auth was rejected but you're allowed to try again,
     |      it will be a list of string method names like ``pubkey`` or
     |      ``password``.
     |
     |      The ``__str__`` of this class represents the empty-list scenario as the
     |      word ``success``, which should make reading the result of an
     |      authentication session more obvious to humans.
     |
     |  Instances also have a `strategy` attribute referencing the `AuthStrategy`
     |  which was attempted.
     |
     |  Method resolution order:
     |      AuthResult
     |      builtins.list
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, strategy, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.list:
     |
     |  __add__(self, value, /)
     |      Return self+value.
     |
     |  __contains__(self, key, /)
     |      Return bool(key in self).
     |
     |  __delitem__(self, key, /)
     |      Delete self[key].
     |
     |  __eq__(self, value, /)
     |      Return self==value.
     |
     |  __ge__(self, value, /)
     |      Return self>=value.
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __getitem__(self, index, /)
     |      Return self[index].
     |
     |  __gt__(self, value, /)
     |      Return self>value.
     |
     |  __iadd__(self, value, /)
     |      Implement self+=value.
     |
     |  __imul__(self, value, /)
     |      Implement self*=value.
     |
     |  __iter__(self, /)
     |      Implement iter(self).
     |
     |  __le__(self, value, /)
     |      Return self<=value.
     |
     |  __len__(self, /)
     |      Return len(self).
     |
     |  __lt__(self, value, /)
     |      Return self<value.
     |
     |  __mul__(self, value, /)
     |      Return self*value.
     |
     |  __ne__(self, value, /)
     |      Return self!=value.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __reversed__(self, /)
     |      Return a reverse iterator over the list.
     |
     |  __rmul__(self, value, /)
     |      Return value*self.
     |
     |  __setitem__(self, key, value, /)
     |      Set self[key] to value.
     |
     |  __sizeof__(self, /)
     |      Return the size of the list in memory, in bytes.
     |
     |  append(self, object, /)
     |      Append object to the end of the list.
     |
     |  clear(self, /)
     |      Remove all items from list.
     |
     |  copy(self, /)
     |      Return a shallow copy of the list.
     |
     |  count(self, value, /)
     |      Return number of occurrences of value.
     |
     |  extend(self, iterable, /)
     |      Extend list by appending elements from the iterable.
     |
     |  index(self, value, start=0, stop=9223372036854775807, /)
     |      Return first index of value.
     |
     |      Raises ValueError if the value is not present.
     |
     |  insert(self, index, object, /)
     |      Insert object before index.
     |
     |  pop(self, index=-1, /)
     |      Remove and return item at index (default last).
     |
     |      Raises IndexError if list is empty or index is out of range.
     |
     |  remove(self, value, /)
     |      Remove first occurrence of value.
     |
     |      Raises ValueError if the value is not present.
     |
     |  reverse(self, /)
     |      Reverse *IN PLACE*.
     |
     |  sort(self, /, *, key=None, reverse=False)
     |      Sort the list in ascending order and return None.
     |
     |      The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
     |      order of two equal elements is maintained).
     |
     |      If a key function is given, apply it once to each list item and sort them,
     |      ascending or descending, according to their function values.
     |
     |      The reverse flag can be set to sort in descending order.
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from builtins.list:
     |
     |  __class_getitem__(...)
     |      See PEP 585
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.list:
     |
     |  __new__(*args, **kwargs) class method of builtins.list
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from builtins.list:
     |
     |  __hash__ = None

    class AuthSource(builtins.object)
     |  AuthSource(username)
     |
     |  Some SSH authentication source, such as a password, private key, or agent.
     |
     |  See subclasses in this module for concrete implementations.
     |
     |  All implementations must accept at least a ``username`` (``str``) kwarg.
     |
     |  Methods defined here:
     |
     |  __init__(self, username)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class AuthStrategy(builtins.object)
     |  AuthStrategy(ssh_config)
     |
     |  This class represents one or more attempts to auth with an SSH server.
     |
     |  By default, subclasses must at least accept an ``ssh_config``
     |  (`.SSHConfig`) keyword argument, but may opt to accept more as needed for
     |  their particular strategy.
     |
     |  Methods defined here:
     |
     |  __init__(self, ssh_config)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  authenticate(self, transport)
     |      Handles attempting `AuthSource` instances yielded from `get_sources`.
     |
     |      You *normally* won't need to override this, but it's an option for
     |      advanced users.
     |
     |  get_sources(self)
     |      Generator yielding `AuthSource` instances, in the order to try.
     |
     |      This is the primary override point for subclasses: you figure out what
     |      sources you need, and ``yield`` them.
     |
     |      Subclasses _of_ subclasses may find themselves wanting to do things
     |      like filtering or discarding around a call to `super`.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class InMemoryPrivateKey(PrivateKey)
     |  InMemoryPrivateKey(username, pkey)
     |
     |  An in-memory, decrypted `.PKey` object.
     |
     |  Method resolution order:
     |      InMemoryPrivateKey
     |      PrivateKey
     |      AuthSource
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, username, pkey)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from PrivateKey:
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthSource:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class NoneAuth(AuthSource)
     |  NoneAuth(username)
     |
     |  Auth type "none", ie https://www.rfc-editor.org/rfc/rfc4252#section-5.2 .
     |
     |  Method resolution order:
     |      NoneAuth
     |      AuthSource
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AuthSource:
     |
     |  __init__(self, username)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthSource:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class OnDiskPrivateKey(PrivateKey)
     |  OnDiskPrivateKey(username, source, path, pkey)
     |
     |  Some on-disk private key that needs opening and possibly decrypting.
     |
     |  :param str source:
     |      String tracking where this key's path was specified; should be one of
     |      ``"ssh-config"``, ``"python-config"``, or ``"implicit-home"``.
     |  :param Path path:
     |      The filesystem path this key was loaded from.
     |  :param PKey pkey:
     |      The `PKey` object this auth source uses/represents.
     |
     |  Method resolution order:
     |      OnDiskPrivateKey
     |      PrivateKey
     |      AuthSource
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, username, source, path, pkey)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from PrivateKey:
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthSource:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class Password(AuthSource)
     |  Password(username, password_getter)
     |
     |  Password authentication.
     |
     |  :param callable password_getter:
     |      A lazy callable that should return a `str` password value at
     |      authentication time, such as a `functools.partial` wrapping
     |      `getpass.getpass`, an API call to a secrets store, or similar.
     |
     |      If you already know the password at instantiation time, you should
     |      simply use something like ``lambda: "my literal"`` (for a literal, but
     |      also, shame on you!) or ``lambda: variable_name`` (for something stored
     |      in a variable).
     |
     |  Method resolution order:
     |      Password
     |      AuthSource
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, username, password_getter)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthSource:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class PrivateKey(AuthSource)
     |  PrivateKey(username)
     |
     |  Essentially a mixin for private keys.
     |
     |  Knows how to auth, but leaves key material discovery/loading/decryption to
     |  subclasses.
     |
     |  Subclasses **must** ensure that they've set ``self.pkey`` to a decrypted
     |  `.PKey` instance before calling ``super().authenticate``; typically
     |  either in their ``__init__``, or in an overridden ``authenticate`` prior to
     |  its `super` call.
     |
     |  Method resolution order:
     |      PrivateKey
     |      AuthSource
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  authenticate(self, transport)
     |      Perform authentication.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from AuthSource:
     |
     |  __init__(self, username)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from AuthSource:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SourceResult(builtins.tuple)
     |  SourceResult(source, result)
     |
     |  SourceResult(source, result)
     |
     |  Method resolution order:
     |      SourceResult
     |      builtins.tuple
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __getnewargs__(self) from collections.SourceResult
     |      Return self as a plain tuple.  Used by copy and pickle.
     |
     |  __repr__(self) from collections.SourceResult
     |      Return a nicely formatted representation string
     |
     |  _asdict(self) from collections.SourceResult
     |      Return a new dict which maps field names to their values.
     |
     |  _replace(self, /, **kwds) from collections.SourceResult
     |      Return a new SourceResult object replacing specified fields with new values
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  _make(iterable) from collections.SourceResult
     |      Make a new SourceResult object from a sequence or iterable
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  __new__(_cls, source, result) from namedtuple_SourceResult.SourceResult
     |      Create new instance of SourceResult(source, result)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  source
     |      Alias for field number 0
     |
     |  result
     |      Alias for field number 1
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  __match_args__ = ('source', 'result')
     |
     |  _field_defaults = {}
     |
     |  _fields = ('source', 'result')
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.tuple:
     |
     |  __add__(self, value, /)
     |      Return self+value.
     |
     |  __contains__(self, key, /)
     |      Return bool(key in self).
     |
     |  __eq__(self, value, /)
     |      Return self==value.
     |
     |  __ge__(self, value, /)
     |      Return self>=value.
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __getitem__(self, key, /)
     |      Return self[key].
     |
     |  __gt__(self, value, /)
     |      Return self>value.
     |
     |  __hash__(self, /)
     |      Return hash(self).
     |
     |  __iter__(self, /)
     |      Implement iter(self).
     |
     |  __le__(self, value, /)
     |      Return self<=value.
     |
     |  __len__(self, /)
     |      Return len(self).
     |
     |  __lt__(self, value, /)
     |      Return self<value.
     |
     |  __mul__(self, value, /)
     |      Return self*value.
     |
     |  __ne__(self, value, /)
     |      Return self!=value.
     |
     |  __rmul__(self, value, /)
     |      Return value*self.
     |
     |  count(self, value, /)
     |      Return number of occurrences of value.
     |
     |  index(self, value, start=0, stop=9223372036854775807, /)
     |      Return first index of value.
     |
     |      Raises ValueError if the value is not present.
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from builtins.tuple:
     |
     |  __class_getitem__(...)
     |      See PEP 585

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\auth_strategy.py

paramiko.buffered_pipe
Python Library Documentation: module paramiko.buffered_pipe in paramiko

NAME
    paramiko.buffered_pipe

DESCRIPTION
    Attempt to generalize the "feeder" part of a `.Channel`: an object which can be
    read from and closed, but is reading from a buffer fed by another thread.  The
    read operations are blocking and can have a timeout set.

CLASSES
    builtins.OSError(builtins.Exception)
        PipeTimeout
    builtins.object
        BufferedPipe

    class BufferedPipe(builtins.object)
     |  A buffer that obeys normal read (with timeout) & close semantics for a
     |  file or socket, but is fed data from another thread.  This is used by
     |  `.Channel`.
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __len__(self)
     |      Return the number of bytes buffered.
     |
     |      :return: number (`int`) of bytes buffered
     |
     |  close(self)
     |      Close this pipe object.  Future calls to `read` after the buffer
     |      has been emptied will return immediately with an empty string.
     |
     |  empty(self)
     |      Clear out the buffer and return all data that was in it.
     |
     |      :return:
     |          any data that was in the buffer prior to clearing it out, as a
     |          `str`
     |
     |  feed(self, data)
     |      Feed new data into this pipe.  This method is assumed to be called
     |      from a separate thread, so synchronization is done.
     |
     |      :param data: the data to add, as a ``str`` or ``bytes``
     |
     |  read(self, nbytes, timeout=None)
     |      Read data from the pipe.  The return value is a string representing
     |      the data received.  The maximum amount of data to be received at once
     |      is specified by ``nbytes``.  If a string of length zero is returned,
     |      the pipe has been closed.
     |
     |      The optional ``timeout`` argument can be a nonnegative float expressing
     |      seconds, or ``None`` for no timeout.  If a float is given, a
     |      `.PipeTimeout` will be raised if the timeout period value has elapsed
     |      before any data arrives.
     |
     |      :param int nbytes: maximum number of bytes to read
     |      :param float timeout:
     |          maximum seconds to wait (or ``None``, the default, to wait forever)
     |      :return: the read data, as a ``str`` or ``bytes``
     |
     |      :raises:
     |          `.PipeTimeout` -- if a timeout was specified and no data was ready
     |          before that timeout
     |
     |  read_ready(self)
     |      Returns true if data is buffered and ready to be read from this
     |      feeder.  A ``False`` result does not mean that the feeder has closed;
     |      it means you may need to wait before more data arrives.
     |
     |      :return:
     |          ``True`` if a `read` call would immediately return at least one
     |          byte; ``False`` otherwise.
     |
     |  set_event(self, event)
     |      Set an event on this buffer.  When data is ready to be read (or the
     |      buffer has been closed), the event will be set.  When no data is
     |      ready, the event will be cleared.
     |
     |      :param threading.Event event: the event to set/clear
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class PipeTimeout(builtins.OSError)
     |  Indicates that a timeout was reached on a read from a `.BufferedPipe`.
     |
     |  Method resolution order:
     |      PipeTimeout
     |      builtins.OSError
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.OSError:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.OSError:
     |
     |  __new__(*args, **kwargs) class method of builtins.OSError
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.OSError:
     |
     |  characters_written
     |
     |  errno
     |      POSIX exception code
     |
     |  filename
     |      exception filename
     |
     |  filename2
     |      second exception filename
     |
     |  strerror
     |      exception strerror
     |
     |  winerror
     |      Win32 exception code
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\buffered_pipe.py

paramiko.channel
Python Library Documentation: module paramiko.channel in paramiko

NAME
    paramiko.channel - Abstraction for an SSH2 channel.

CLASSES
    paramiko.file.BufferedFile(paramiko.util.ClosingContextManager)
        ChannelFile
            ChannelStderrFile
            ChannelStdinFile
    paramiko.util.ClosingContextManager(builtins.object)
        Channel

    class Channel(paramiko.util.ClosingContextManager)
     |  Channel(chanid)
     |
     |  A secure tunnel across an SSH `.Transport`.  A Channel is meant to behave
     |  like a socket, and has an API that should be indistinguishable from the
     |  Python socket API.
     |
     |  Because SSH2 has a windowing kind of flow control, if you stop reading data
     |  from a Channel and its buffer fills up, the server will be unable to send
     |  you any more data until you read some of it.  (This won't affect other
     |  channels on the same transport -- all channels on a single transport are
     |  flow-controlled independently.)  Similarly, if the server isn't reading
     |  data you send, calls to `send` may block, unless you set a timeout.  This
     |  is exactly like a normal network socket, so it shouldn't be too surprising.
     |
     |  Instances of this class may be used as context managers.
     |
     |  Method resolution order:
     |      Channel
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self, chanid)
     |      Create a new channel.  The channel is not associated with any
     |      particular session or `.Transport` until the Transport attaches it.
     |      Normally you would only call this method from the constructor of a
     |      subclass of `.Channel`.
     |
     |      :param int chanid:
     |          the ID of this channel, as passed by an existing `.Transport`.
     |
     |  __repr__(self)
     |      Return a string representation of this object, for debugging.
     |
     |  close(self)
     |      Close the channel.  All future read/write operations on the channel
     |      will fail.  The remote end will receive no more data (after queued data
     |      is flushed).  Channels are automatically closed when their `.Transport`
     |      is closed or when they are garbage collected.
     |
     |  exec_command(self, command)
     |      Execute a command on the server.  If the server allows it, the channel
     |      will then be directly connected to the stdin, stdout, and stderr of
     |      the command being executed.
     |
     |      When the command finishes executing, the channel will be closed and
     |      can't be reused.  You must open a new channel if you wish to execute
     |      another command.
     |
     |      :param str command: a shell command to execute.
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  exit_status_ready(self)
     |      Return true if the remote process has exited and returned an exit
     |      status. You may use this to poll the process status if you don't
     |      want to block in `recv_exit_status`. Note that the server may not
     |      return an exit status in some cases (like bad servers).
     |
     |      :return:
     |          ``True`` if `recv_exit_status` will return immediately, else
     |          ``False``.
     |
     |      .. versionadded:: 1.7.3
     |
     |  fileno(self)
     |      Returns an OS-level file descriptor which can be used for polling, but
     |      but not for reading or writing.  This is primarily to allow Python's
     |      ``select`` module to work.
     |
     |      The first time ``fileno`` is called on a channel, a pipe is created to
     |      simulate real OS-level file descriptor (FD) behavior.  Because of this,
     |      two OS-level FDs are created, which will use up FDs faster than normal.
     |      (You won't notice this effect unless you have hundreds of channels
     |      open at the same time.)
     |
     |      :return: an OS-level file descriptor (`int`)
     |
     |      .. warning::
     |          This method causes channel reads to be slightly less efficient.
     |
     |  get_id(self)
     |      Return the `int` ID # for this channel.
     |
     |      The channel ID is unique across a `.Transport` and usually a small
     |      number.  It's also the number passed to
     |      `.ServerInterface.check_channel_request` when determining whether to
     |      accept a channel request in server mode.
     |
     |  get_name(self)
     |      Get the name of this channel that was previously set by `set_name`.
     |
     |  get_pty(self, term='vt100', width=80, height=24, width_pixels=0, height_pixels=0)
     |      Request a pseudo-terminal from the server.  This is usually used right
     |      after creating a client channel, to ask the server to provide some
     |      basic terminal semantics for a shell invoked with `invoke_shell`.
     |      It isn't necessary (or desirable) to call this method if you're going
     |      to execute a single command with `exec_command`.
     |
     |      :param str term: the terminal type to emulate
     |          (for example, ``'vt100'``)
     |      :param int width: width (in characters) of the terminal screen
     |      :param int height: height (in characters) of the terminal screen
     |      :param int width_pixels: width (in pixels) of the terminal screen
     |      :param int height_pixels: height (in pixels) of the terminal screen
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  get_transport(self)
     |      Return the `.Transport` associated with this channel.
     |
     |  getpeername(self)
     |      Return the address of the remote side of this Channel, if possible.
     |
     |      This simply wraps `.Transport.getpeername`, used to provide enough of a
     |      socket-like interface to allow asyncore to work. (asyncore likes to
     |      call ``'getpeername'``.)
     |
     |  gettimeout(self)
     |      Returns the timeout in seconds (as a float) associated with socket
     |      operations, or ``None`` if no timeout is set.  This reflects the last
     |      call to `setblocking` or `settimeout`.
     |
     |  invoke_shell(self)
     |      Request an interactive shell session on this channel.  If the server
     |      allows it, the channel will then be directly connected to the stdin,
     |      stdout, and stderr of the shell.
     |
     |      Normally you would call `get_pty` before this, in which case the
     |      shell will operate through the pty, and the channel will be connected
     |      to the stdin and stdout of the pty.
     |
     |      When the shell exits, the channel will be closed and can't be reused.
     |      You must open a new channel if you wish to open another shell.
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  invoke_subsystem(self, subsystem)
     |      Request a subsystem on the server (for example, ``sftp``).  If the
     |      server allows it, the channel will then be directly connected to the
     |      requested subsystem.
     |
     |      When the subsystem finishes, the channel will be closed and can't be
     |      reused.
     |
     |      :param str subsystem: name of the subsystem being requested.
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  makefile(self, *params)
     |      Return a file-like object associated with this channel.  The optional
     |      ``mode`` and ``bufsize`` arguments are interpreted the same way as by
     |      the built-in ``file()`` function in Python.
     |
     |      :return: `.ChannelFile` object which can be used for Python file I/O.
     |
     |  makefile_stderr(self, *params)
     |      Return a file-like object associated with this channel's stderr
     |      stream.   Only channels using `exec_command` or `invoke_shell`
     |      without a pty will ever have data on the stderr stream.
     |
     |      The optional ``mode`` and ``bufsize`` arguments are interpreted the
     |      same way as by the built-in ``file()`` function in Python.  For a
     |      client, it only makes sense to open this file for reading.  For a
     |      server, it only makes sense to open this file for writing.
     |
     |      :returns:
     |          `.ChannelStderrFile` object which can be used for Python file I/O.
     |
     |      .. versionadded:: 1.1
     |
     |  makefile_stdin(self, *params)
     |      Return a file-like object associated with this channel's stdin
     |      stream.
     |
     |      The optional ``mode`` and ``bufsize`` arguments are interpreted the
     |      same way as by the built-in ``file()`` function in Python.  For a
     |      client, it only makes sense to open this file for writing.  For a
     |      server, it only makes sense to open this file for reading.
     |
     |      :returns:
     |          `.ChannelStdinFile` object which can be used for Python file I/O.
     |
     |      .. versionadded:: 2.6
     |
     |  recv(self, nbytes)
     |      Receive data from the channel.  The return value is a string
     |      representing the data received.  The maximum amount of data to be
     |      received at once is specified by ``nbytes``.  If a string of
     |      length zero is returned, the channel stream has closed.
     |
     |      :param int nbytes: maximum number of bytes to read.
     |      :return: received data, as a `bytes`.
     |
     |      :raises socket.timeout:
     |          if no data is ready before the timeout set by `settimeout`.
     |
     |  recv_exit_status(self)
     |      Return the exit status from the process on the server.  This is
     |      mostly useful for retrieving the results of an `exec_command`.
     |      If the command hasn't finished yet, this method will wait until
     |      it does, or until the channel is closed.  If no exit status is
     |      provided by the server, -1 is returned.
     |
     |      .. warning::
     |          In some situations, receiving remote output larger than the current
     |          `.Transport` or session's ``window_size`` (e.g. that set by the
     |          ``default_window_size`` kwarg for `.Transport.__init__`) will cause
     |          `.recv_exit_status` to hang indefinitely if it is called prior to a
     |          sufficiently large `.Channel.recv` (or if there are no threads
     |          calling `.Channel.recv` in the background).
     |
     |          In these cases, ensuring that `.recv_exit_status` is called *after*
     |          `.Channel.recv` (or, again, using threads) can avoid the hang.
     |
     |      :return: the exit code (as an `int`) of the process on the server.
     |
     |      .. versionadded:: 1.2
     |
     |  recv_ready(self)
     |      Returns true if data is buffered and ready to be read from this
     |      channel.  A ``False`` result does not mean that the channel has closed;
     |      it means you may need to wait before more data arrives.
     |
     |      :return:
     |          ``True`` if a `recv` call on this channel would immediately return
     |          at least one byte; ``False`` otherwise.
     |
     |  recv_stderr(self, nbytes)
     |      Receive data from the channel's stderr stream.  Only channels using
     |      `exec_command` or `invoke_shell` without a pty will ever have data
     |      on the stderr stream.  The return value is a string representing the
     |      data received.  The maximum amount of data to be received at once is
     |      specified by ``nbytes``.  If a string of length zero is returned, the
     |      channel stream has closed.
     |
     |      :param int nbytes: maximum number of bytes to read.
     |      :return: received data as a `bytes`
     |
     |      :raises socket.timeout: if no data is ready before the timeout set by
     |          `settimeout`.
     |
     |      .. versionadded:: 1.1
     |
     |  recv_stderr_ready(self)
     |      Returns true if data is buffered and ready to be read from this
     |      channel's stderr stream.  Only channels using `exec_command` or
     |      `invoke_shell` without a pty will ever have data on the stderr
     |      stream.
     |
     |      :return:
     |          ``True`` if a `recv_stderr` call on this channel would immediately
     |          return at least one byte; ``False`` otherwise.
     |
     |      .. versionadded:: 1.1
     |
     |  request_forward_agent(self, handler)
     |      Request for a forward SSH Agent on this channel.
     |      This is only valid for an ssh-agent from OpenSSH !!!
     |
     |      :param handler:
     |          a required callable handler to use for incoming SSH Agent
     |          connections
     |
     |      :return: True if we are ok, else False
     |          (at that time we always return ok)
     |
     |      :raises: SSHException in case of channel problem.
     |
     |  request_x11(self, screen_number=0, auth_protocol=None, auth_cookie=None, single_connection=False, handler=None)
     |      Request an x11 session on this channel.  If the server allows it,
     |      further x11 requests can be made from the server to the client,
     |      when an x11 application is run in a shell session.
     |
     |      From :rfc:`4254`::
     |
     |          It is RECOMMENDED that the 'x11 authentication cookie' that is
     |          sent be a fake, random cookie, and that the cookie be checked and
     |          replaced by the real cookie when a connection request is received.
     |
     |      If you omit the auth_cookie, a new secure random 128-bit value will be
     |      generated, used, and returned.  You will need to use this value to
     |      verify incoming x11 requests and replace them with the actual local
     |      x11 cookie (which requires some knowledge of the x11 protocol).
     |
     |      If a handler is passed in, the handler is called from another thread
     |      whenever a new x11 connection arrives.  The default handler queues up
     |      incoming x11 connections, which may be retrieved using
     |      `.Transport.accept`.  The handler's calling signature is::
     |
     |          handler(channel: Channel, (address: str, port: int))
     |
     |      :param int screen_number: the x11 screen number (0, 10, etc.)
     |      :param str auth_protocol:
     |          the name of the X11 authentication method used; if none is given,
     |          ``"MIT-MAGIC-COOKIE-1"`` is used
     |      :param str auth_cookie:
     |          hexadecimal string containing the x11 auth cookie; if none is
     |          given, a secure random 128-bit value is generated
     |      :param bool single_connection:
     |          if True, only a single x11 connection will be forwarded (by
     |          default, any number of x11 connections can arrive over this
     |          session)
     |      :param handler:
     |          an optional callable handler to use for incoming X11 connections
     |      :return: the auth_cookie used
     |
     |  resize_pty(self, width=80, height=24, width_pixels=0, height_pixels=0)
     |      Resize the pseudo-terminal.  This can be used to change the width and
     |      height of the terminal emulation created in a previous `get_pty` call.
     |
     |      :param int width: new width (in characters) of the terminal screen
     |      :param int height: new height (in characters) of the terminal screen
     |      :param int width_pixels: new width (in pixels) of the terminal screen
     |      :param int height_pixels: new height (in pixels) of the terminal screen
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  send(self, s)
     |      Send data to the channel.  Returns the number of bytes sent, or 0 if
     |      the channel stream is closed.  Applications are responsible for
     |      checking that all data has been sent: if only some of the data was
     |      transmitted, the application needs to attempt delivery of the remaining
     |      data.
     |
     |      :param bytes s: data to send
     |      :return: number of bytes actually sent, as an `int`
     |
     |      :raises socket.timeout: if no data could be sent before the timeout set
     |          by `settimeout`.
     |
     |  send_exit_status(self, status)
     |      Send the exit status of an executed command to the client.  (This
     |      really only makes sense in server mode.)  Many clients expect to
     |      get some sort of status code back from an executed command after
     |      it completes.
     |
     |      :param int status: the exit code of the process
     |
     |      .. versionadded:: 1.2
     |
     |  send_ready(self)
     |      Returns true if data can be written to this channel without blocking.
     |      This means the channel is either closed (so any write attempt would
     |      return immediately) or there is at least one byte of space in the
     |      outbound buffer. If there is at least one byte of space in the
     |      outbound buffer, a `send` call will succeed immediately and return
     |      the number of bytes actually written.
     |
     |      :return:
     |          ``True`` if a `send` call on this channel would immediately succeed
     |          or fail
     |
     |  send_stderr(self, s)
     |      Send data to the channel on the "stderr" stream.  This is normally
     |      only used by servers to send output from shell commands -- clients
     |      won't use this.  Returns the number of bytes sent, or 0 if the channel
     |      stream is closed.  Applications are responsible for checking that all
     |      data has been sent: if only some of the data was transmitted, the
     |      application needs to attempt delivery of the remaining data.
     |
     |      :param bytes s: data to send.
     |      :return: number of bytes actually sent, as an `int`.
     |
     |      :raises socket.timeout:
     |          if no data could be sent before the timeout set by `settimeout`.
     |
     |      .. versionadded:: 1.1
     |
     |  sendall(self, s)
     |      Send data to the channel, without allowing partial results.  Unlike
     |      `send`, this method continues to send data from the given string until
     |      either all data has been sent or an error occurs.  Nothing is returned.
     |
     |      :param bytes s: data to send.
     |
     |      :raises socket.timeout:
     |          if sending stalled for longer than the timeout set by `settimeout`.
     |      :raises socket.error:
     |          if an error occurred before the entire string was sent.
     |
     |      .. note::
     |          If the channel is closed while only part of the data has been
     |          sent, there is no way to determine how much data (if any) was sent.
     |          This is irritating, but identically follows Python's API.
     |
     |  sendall_stderr(self, s)
     |      Send data to the channel's "stderr" stream, without allowing partial
     |      results.  Unlike `send_stderr`, this method continues to send data
     |      from the given bytestring until all data has been sent or an error
     |      occurs. Nothing is returned.
     |
     |      :param bytes s: data to send to the client as "stderr" output.
     |
     |      :raises socket.timeout:
     |          if sending stalled for longer than the timeout set by `settimeout`.
     |      :raises socket.error:
     |          if an error occurred before the entire string was sent.
     |
     |      .. versionadded:: 1.1
     |
     |  set_combine_stderr(self, combine)
     |      Set whether stderr should be combined into stdout on this channel.
     |      The default is ``False``, but in some cases it may be convenient to
     |      have both streams combined.
     |
     |      If this is ``False``, and `exec_command` is called (or ``invoke_shell``
     |      with no pty), output to stderr will not show up through the `recv`
     |      and `recv_ready` calls.  You will have to use `recv_stderr` and
     |      `recv_stderr_ready` to get stderr output.
     |
     |      If this is ``True``, data will never show up via `recv_stderr` or
     |      `recv_stderr_ready`.
     |
     |      :param bool combine:
     |          ``True`` if stderr output should be combined into stdout on this
     |          channel.
     |      :return: the previous setting (a `bool`).
     |
     |      .. versionadded:: 1.1
     |
     |  set_environment_variable(self, name, value)
     |      Set the value of an environment variable.
     |
     |      .. warning::
     |          The server may reject this request depending on its ``AcceptEnv``
     |          setting; such rejections will fail silently (which is common client
     |          practice for this particular request type). Make sure you
     |          understand your server's configuration before using!
     |
     |      :param str name: name of the environment variable
     |      :param str value: value of the environment variable
     |
     |      :raises:
     |          `.SSHException` -- if the request was rejected or the channel was
     |          closed
     |
     |  set_name(self, name)
     |      Set a name for this channel.  Currently it's only used to set the name
     |      of the channel in logfile entries.  The name can be fetched with the
     |      `get_name` method.
     |
     |      :param str name: new channel name
     |
     |  setblocking(self, blocking)
     |      Set blocking or non-blocking mode of the channel: if ``blocking`` is 0,
     |      the channel is set to non-blocking mode; otherwise it's set to blocking
     |      mode. Initially all channels are in blocking mode.
     |
     |      In non-blocking mode, if a `recv` call doesn't find any data, or if a
     |      `send` call can't immediately dispose of the data, an error exception
     |      is raised. In blocking mode, the calls block until they can proceed. An
     |      EOF condition is considered "immediate data" for `recv`, so if the
     |      channel is closed in the read direction, it will never block.
     |
     |      ``chan.setblocking(0)`` is equivalent to ``chan.settimeout(0)``;
     |      ``chan.setblocking(1)`` is equivalent to ``chan.settimeout(None)``.
     |
     |      :param int blocking:
     |          0 to set non-blocking mode; non-0 to set blocking mode.
     |
     |  settimeout(self, timeout)
     |      Set a timeout on blocking read/write operations.  The ``timeout``
     |      argument can be a nonnegative float expressing seconds, or ``None``.
     |      If a float is given, subsequent channel read/write operations will
     |      raise a timeout exception if the timeout period value has elapsed
     |      before the operation has completed.  Setting a timeout of ``None``
     |      disables timeouts on socket operations.
     |
     |      ``chan.settimeout(0.0)`` is equivalent to ``chan.setblocking(0)``;
     |      ``chan.settimeout(None)`` is equivalent to ``chan.setblocking(1)``.
     |
     |      :param float timeout:
     |          seconds to wait for a pending read/write operation before raising
     |          ``socket.timeout``, or ``None`` for no timeout.
     |
     |  shutdown(self, how)
     |      Shut down one or both halves of the connection.  If ``how`` is 0,
     |      further receives are disallowed.  If ``how`` is 1, further sends
     |      are disallowed.  If ``how`` is 2, further sends and receives are
     |      disallowed.  This closes the stream in one or both directions.
     |
     |      :param int how:
     |          0 (stop receiving), 1 (stop sending), or 2 (stop receiving and
     |            sending).
     |
     |  shutdown_read(self)
     |      Shutdown the receiving side of this socket, closing the stream in
     |      the incoming direction.  After this call, future reads on this
     |      channel will fail instantly.  This is a convenience method, equivalent
     |      to ``shutdown(0)``, for people who don't make it a habit to
     |      memorize unix constants from the 1970s.
     |
     |      .. versionadded:: 1.2
     |
     |  shutdown_write(self)
     |      Shutdown the sending side of this socket, closing the stream in
     |      the outgoing direction.  After this call, future writes on this
     |      channel will fail instantly.  This is a convenience method, equivalent
     |      to ``shutdown(1)``, for people who don't make it a habit to
     |      memorize unix constants from the 1970s.
     |
     |      .. versionadded:: 1.2
     |
     |  update_environment(self, environment)
     |      Updates this channel's remote shell environment.
     |
     |      .. note::
     |          This operation is additive - i.e. the current environment is not
     |          reset before the given environment variables are set.
     |
     |      .. warning::
     |          Servers may silently reject some environment variables; see the
     |          warning in `set_environment_variable` for details.
     |
     |      :param dict environment:
     |          a dictionary containing the name and respective values to set
     |      :raises:
     |          `.SSHException` -- if any of the environment variables was rejected
     |          by the server or the channel was closed
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class ChannelFile(paramiko.file.BufferedFile)
     |  ChannelFile(channel, mode='r', bufsize=-1)
     |
     |  A file-like wrapper around `.Channel`.  A ChannelFile is created by calling
     |  `Channel.makefile`.
     |
     |  .. warning::
     |      To correctly emulate the file object created from a socket's `makefile
     |      <python:socket.socket.makefile>` method, a `.Channel` and its
     |      `.ChannelFile` should be able to be closed or garbage-collected
     |      independently. Currently, closing the `ChannelFile` does nothing but
     |      flush the buffer.
     |
     |  Method resolution order:
     |      ChannelFile
     |      paramiko.file.BufferedFile
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, channel, mode='r', bufsize=-1)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.file.BufferedFile:
     |
     |  __del__(self)
     |
     |  __iter__(self)
     |      Returns an iterator that can be used to iterate over the lines in this
     |      file.  This iterator happens to return the file itself, since a file is
     |      its own iterator.
     |
     |      :raises: ``ValueError`` -- if the file is closed.
     |
     |  __next__(self)
     |      Returns the next line from the input, or raises ``StopIteration``
     |      when EOF is hit.  Unlike python file objects, it's okay to mix
     |      calls to `.next` and `.readline`.
     |
     |      :raises: ``StopIteration`` -- when the end of the file is reached.
     |
     |      :returns:
     |          a line (`str`, or `bytes` if the file was opened in binary mode)
     |          read from the file.
     |
     |  close(self)
     |      Close the file.  Future read and write operations will fail.
     |
     |  flush(self)
     |      Write out any data in the write buffer.  This may do nothing if write
     |      buffering is not turned on.
     |
     |  read(self, size=None)
     |      Read at most ``size`` bytes from the file (less if we hit the end of
     |      the file first).  If the ``size`` argument is negative or omitted,
     |      read all the remaining data in the file.
     |
     |      .. note::
     |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
     |          ``self._flags``), because SSH treats all files as binary, since we
     |          have no idea what encoding the file is in, or even if the file is
     |          text data.
     |
     |      :param int size: maximum number of bytes to read
     |      :returns:
     |          data read from the file (as bytes), or an empty string if EOF was
     |          encountered immediately
     |
     |  readable(self)
     |      Check if the file can be read from.
     |
     |      :returns:
     |          `True` if the file can be read from. If `False`, `read` will raise
     |          an exception.
     |
     |  readinto(self, buff)
     |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
     |      number of bytes read.
     |
     |      :returns:
     |          The number of bytes read.
     |
     |  readline(self, size=None)
     |      Read one entire line from the file.  A trailing newline character is
     |      kept in the string (but may be absent when a file ends with an
     |      incomplete line).  If the size argument is present and non-negative, it
     |      is a maximum byte count (including the trailing newline) and an
     |      incomplete line may be returned.  An empty string is returned only when
     |      EOF is encountered immediately.
     |
     |      .. note::
     |          Unlike stdio's ``fgets``, the returned string contains null
     |          characters (``'\0'``) if they occurred in the input.
     |
     |      :param int size: maximum length of returned string.
     |      :returns:
     |          next line of the file, or an empty string if the end of the
     |          file has been reached.
     |
     |          If the file was opened in binary (``'b'``) mode: bytes are returned
     |          Else: the encoding of the file is assumed to be UTF-8 and character
     |          strings (`str`) are returned
     |
     |  readlines(self, sizehint=None)
     |      Read all remaining lines using `readline` and return them as a list.
     |      If the optional ``sizehint`` argument is present, instead of reading up
     |      to EOF, whole lines totalling approximately sizehint bytes (possibly
     |      after rounding up to an internal buffer size) are read.
     |
     |      :param int sizehint: desired maximum number of bytes to read.
     |      :returns: list of lines read from the file.
     |
     |  seek(self, offset, whence=0)
     |      Set the file's current position, like stdio's ``fseek``.  Not all file
     |      objects support seeking.
     |
     |      .. note::
     |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
     |          operations will be undone at the next write (as the file position
     |          will move back to the end of the file).
     |
     |      :param int offset:
     |          position to move to within the file, relative to ``whence``.
     |      :param int whence:
     |          type of movement: 0 = absolute; 1 = relative to the current
     |          position; 2 = relative to the end of the file.
     |
     |      :raises: ``IOError`` -- if the file doesn't support random access.
     |
     |  seekable(self)
     |      Check if the file supports random access.
     |
     |      :returns:
     |          `True` if the file supports random access. If `False`, `seek` will
     |          raise an exception.
     |
     |  tell(self)
     |      Return the file's current position.  This may not be accurate or
     |      useful if the underlying file doesn't support random access, or was
     |      opened in append mode.
     |
     |      :returns: file position (`number <int>` of bytes).
     |
     |  writable(self)
     |      Check if the file can be written to.
     |
     |      :returns:
     |          `True` if the file can be written to. If `False`, `write` will
     |          raise an exception.
     |
     |  write(self, data)
     |      Write data to the file.  If write buffering is on (``bufsize`` was
     |      specified and non-zero), some or all of the data may not actually be
     |      written yet.  (Use `flush` or `close` to force buffered data to be
     |      written out.)
     |
     |      :param data: ``str``/``bytes`` data to write
     |
     |  writelines(self, sequence)
     |      Write a sequence of strings to the file.  The sequence can be any
     |      iterable object producing strings, typically a list of strings.  (The
     |      name is intended to match `readlines`; `writelines` does not add line
     |      separators.)
     |
     |      :param sequence: an iterable sequence of strings.
     |
     |  xreadlines(self)
     |      Identical to ``iter(f)``.  This is a deprecated file interface that
     |      predates Python iterator support.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.file.BufferedFile:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.file.BufferedFile:
     |
     |  FLAG_APPEND = 4
     |
     |  FLAG_BINARY = 16
     |
     |  FLAG_BUFFERED = 32
     |
     |  FLAG_LINE_BUFFERED = 64
     |
     |  FLAG_READ = 1
     |
     |  FLAG_UNIVERSAL_NEWLINE = 128
     |
     |  FLAG_WRITE = 2
     |
     |  SEEK_CUR = 1
     |
     |  SEEK_END = 2
     |
     |  SEEK_SET = 0
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class ChannelStderrFile(ChannelFile)
     |  ChannelStderrFile(channel, mode='r', bufsize=-1)
     |
     |  A file-like wrapper around `.Channel` stderr.
     |
     |  See `Channel.makefile_stderr` for details.
     |
     |  Method resolution order:
     |      ChannelStderrFile
     |      ChannelFile
     |      paramiko.file.BufferedFile
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods inherited from ChannelFile:
     |
     |  __init__(self, channel, mode='r', bufsize=-1)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.file.BufferedFile:
     |
     |  __del__(self)
     |
     |  __iter__(self)
     |      Returns an iterator that can be used to iterate over the lines in this
     |      file.  This iterator happens to return the file itself, since a file is
     |      its own iterator.
     |
     |      :raises: ``ValueError`` -- if the file is closed.
     |
     |  __next__(self)
     |      Returns the next line from the input, or raises ``StopIteration``
     |      when EOF is hit.  Unlike python file objects, it's okay to mix
     |      calls to `.next` and `.readline`.
     |
     |      :raises: ``StopIteration`` -- when the end of the file is reached.
     |
     |      :returns:
     |          a line (`str`, or `bytes` if the file was opened in binary mode)
     |          read from the file.
     |
     |  close(self)
     |      Close the file.  Future read and write operations will fail.
     |
     |  flush(self)
     |      Write out any data in the write buffer.  This may do nothing if write
     |      buffering is not turned on.
     |
     |  read(self, size=None)
     |      Read at most ``size`` bytes from the file (less if we hit the end of
     |      the file first).  If the ``size`` argument is negative or omitted,
     |      read all the remaining data in the file.
     |
     |      .. note::
     |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
     |          ``self._flags``), because SSH treats all files as binary, since we
     |          have no idea what encoding the file is in, or even if the file is
     |          text data.
     |
     |      :param int size: maximum number of bytes to read
     |      :returns:
     |          data read from the file (as bytes), or an empty string if EOF was
     |          encountered immediately
     |
     |  readable(self)
     |      Check if the file can be read from.
     |
     |      :returns:
     |          `True` if the file can be read from. If `False`, `read` will raise
     |          an exception.
     |
     |  readinto(self, buff)
     |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
     |      number of bytes read.
     |
     |      :returns:
     |          The number of bytes read.
     |
     |  readline(self, size=None)
     |      Read one entire line from the file.  A trailing newline character is
     |      kept in the string (but may be absent when a file ends with an
     |      incomplete line).  If the size argument is present and non-negative, it
     |      is a maximum byte count (including the trailing newline) and an
     |      incomplete line may be returned.  An empty string is returned only when
     |      EOF is encountered immediately.
     |
     |      .. note::
     |          Unlike stdio's ``fgets``, the returned string contains null
     |          characters (``'\0'``) if they occurred in the input.
     |
     |      :param int size: maximum length of returned string.
     |      :returns:
     |          next line of the file, or an empty string if the end of the
     |          file has been reached.
     |
     |          If the file was opened in binary (``'b'``) mode: bytes are returned
     |          Else: the encoding of the file is assumed to be UTF-8 and character
     |          strings (`str`) are returned
     |
     |  readlines(self, sizehint=None)
     |      Read all remaining lines using `readline` and return them as a list.
     |      If the optional ``sizehint`` argument is present, instead of reading up
     |      to EOF, whole lines totalling approximately sizehint bytes (possibly
     |      after rounding up to an internal buffer size) are read.
     |
     |      :param int sizehint: desired maximum number of bytes to read.
     |      :returns: list of lines read from the file.
     |
     |  seek(self, offset, whence=0)
     |      Set the file's current position, like stdio's ``fseek``.  Not all file
     |      objects support seeking.
     |
     |      .. note::
     |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
     |          operations will be undone at the next write (as the file position
     |          will move back to the end of the file).
     |
     |      :param int offset:
     |          position to move to within the file, relative to ``whence``.
     |      :param int whence:
     |          type of movement: 0 = absolute; 1 = relative to the current
     |          position; 2 = relative to the end of the file.
     |
     |      :raises: ``IOError`` -- if the file doesn't support random access.
     |
     |  seekable(self)
     |      Check if the file supports random access.
     |
     |      :returns:
     |          `True` if the file supports random access. If `False`, `seek` will
     |          raise an exception.
     |
     |  tell(self)
     |      Return the file's current position.  This may not be accurate or
     |      useful if the underlying file doesn't support random access, or was
     |      opened in append mode.
     |
     |      :returns: file position (`number <int>` of bytes).
     |
     |  writable(self)
     |      Check if the file can be written to.
     |
     |      :returns:
     |          `True` if the file can be written to. If `False`, `write` will
     |          raise an exception.
     |
     |  write(self, data)
     |      Write data to the file.  If write buffering is on (``bufsize`` was
     |      specified and non-zero), some or all of the data may not actually be
     |      written yet.  (Use `flush` or `close` to force buffered data to be
     |      written out.)
     |
     |      :param data: ``str``/``bytes`` data to write
     |
     |  writelines(self, sequence)
     |      Write a sequence of strings to the file.  The sequence can be any
     |      iterable object producing strings, typically a list of strings.  (The
     |      name is intended to match `readlines`; `writelines` does not add line
     |      separators.)
     |
     |      :param sequence: an iterable sequence of strings.
     |
     |  xreadlines(self)
     |      Identical to ``iter(f)``.  This is a deprecated file interface that
     |      predates Python iterator support.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.file.BufferedFile:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.file.BufferedFile:
     |
     |  FLAG_APPEND = 4
     |
     |  FLAG_BINARY = 16
     |
     |  FLAG_BUFFERED = 32
     |
     |  FLAG_LINE_BUFFERED = 64
     |
     |  FLAG_READ = 1
     |
     |  FLAG_UNIVERSAL_NEWLINE = 128
     |
     |  FLAG_WRITE = 2
     |
     |  SEEK_CUR = 1
     |
     |  SEEK_END = 2
     |
     |  SEEK_SET = 0
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class ChannelStdinFile(ChannelFile)
     |  ChannelStdinFile(channel, mode='r', bufsize=-1)
     |
     |  A file-like wrapper around `.Channel` stdin.
     |
     |  See `Channel.makefile_stdin` for details.
     |
     |  Method resolution order:
     |      ChannelStdinFile
     |      ChannelFile
     |      paramiko.file.BufferedFile
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  close(self)
     |      Close the file.  Future read and write operations will fail.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from ChannelFile:
     |
     |  __init__(self, channel, mode='r', bufsize=-1)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.file.BufferedFile:
     |
     |  __del__(self)
     |
     |  __iter__(self)
     |      Returns an iterator that can be used to iterate over the lines in this
     |      file.  This iterator happens to return the file itself, since a file is
     |      its own iterator.
     |
     |      :raises: ``ValueError`` -- if the file is closed.
     |
     |  __next__(self)
     |      Returns the next line from the input, or raises ``StopIteration``
     |      when EOF is hit.  Unlike python file objects, it's okay to mix
     |      calls to `.next` and `.readline`.
     |
     |      :raises: ``StopIteration`` -- when the end of the file is reached.
     |
     |      :returns:
     |          a line (`str`, or `bytes` if the file was opened in binary mode)
     |          read from the file.
     |
     |  flush(self)
     |      Write out any data in the write buffer.  This may do nothing if write
     |      buffering is not turned on.
     |
     |  read(self, size=None)
     |      Read at most ``size`` bytes from the file (less if we hit the end of
     |      the file first).  If the ``size`` argument is negative or omitted,
     |      read all the remaining data in the file.
     |
     |      .. note::
     |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
     |          ``self._flags``), because SSH treats all files as binary, since we
     |          have no idea what encoding the file is in, or even if the file is
     |          text data.
     |
     |      :param int size: maximum number of bytes to read
     |      :returns:
     |          data read from the file (as bytes), or an empty string if EOF was
     |          encountered immediately
     |
     |  readable(self)
     |      Check if the file can be read from.
     |
     |      :returns:
     |          `True` if the file can be read from. If `False`, `read` will raise
     |          an exception.
     |
     |  readinto(self, buff)
     |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
     |      number of bytes read.
     |
     |      :returns:
     |          The number of bytes read.
     |
     |  readline(self, size=None)
     |      Read one entire line from the file.  A trailing newline character is
     |      kept in the string (but may be absent when a file ends with an
     |      incomplete line).  If the size argument is present and non-negative, it
     |      is a maximum byte count (including the trailing newline) and an
     |      incomplete line may be returned.  An empty string is returned only when
     |      EOF is encountered immediately.
     |
     |      .. note::
     |          Unlike stdio's ``fgets``, the returned string contains null
     |          characters (``'\0'``) if they occurred in the input.
     |
     |      :param int size: maximum length of returned string.
     |      :returns:
     |          next line of the file, or an empty string if the end of the
     |          file has been reached.
     |
     |          If the file was opened in binary (``'b'``) mode: bytes are returned
     |          Else: the encoding of the file is assumed to be UTF-8 and character
     |          strings (`str`) are returned
     |
     |  readlines(self, sizehint=None)
     |      Read all remaining lines using `readline` and return them as a list.
     |      If the optional ``sizehint`` argument is present, instead of reading up
     |      to EOF, whole lines totalling approximately sizehint bytes (possibly
     |      after rounding up to an internal buffer size) are read.
     |
     |      :param int sizehint: desired maximum number of bytes to read.
     |      :returns: list of lines read from the file.
     |
     |  seek(self, offset, whence=0)
     |      Set the file's current position, like stdio's ``fseek``.  Not all file
     |      objects support seeking.
     |
     |      .. note::
     |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
     |          operations will be undone at the next write (as the file position
     |          will move back to the end of the file).
     |
     |      :param int offset:
     |          position to move to within the file, relative to ``whence``.
     |      :param int whence:
     |          type of movement: 0 = absolute; 1 = relative to the current
     |          position; 2 = relative to the end of the file.
     |
     |      :raises: ``IOError`` -- if the file doesn't support random access.
     |
     |  seekable(self)
     |      Check if the file supports random access.
     |
     |      :returns:
     |          `True` if the file supports random access. If `False`, `seek` will
     |          raise an exception.
     |
     |  tell(self)
     |      Return the file's current position.  This may not be accurate or
     |      useful if the underlying file doesn't support random access, or was
     |      opened in append mode.
     |
     |      :returns: file position (`number <int>` of bytes).
     |
     |  writable(self)
     |      Check if the file can be written to.
     |
     |      :returns:
     |          `True` if the file can be written to. If `False`, `write` will
     |          raise an exception.
     |
     |  write(self, data)
     |      Write data to the file.  If write buffering is on (``bufsize`` was
     |      specified and non-zero), some or all of the data may not actually be
     |      written yet.  (Use `flush` or `close` to force buffered data to be
     |      written out.)
     |
     |      :param data: ``str``/``bytes`` data to write
     |
     |  writelines(self, sequence)
     |      Write a sequence of strings to the file.  The sequence can be any
     |      iterable object producing strings, typically a list of strings.  (The
     |      name is intended to match `readlines`; `writelines` does not add line
     |      separators.)
     |
     |      :param sequence: an iterable sequence of strings.
     |
     |  xreadlines(self)
     |      Identical to ``iter(f)``.  This is a deprecated file interface that
     |      predates Python iterator support.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.file.BufferedFile:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.file.BufferedFile:
     |
     |  FLAG_APPEND = 4
     |
     |  FLAG_BINARY = 16
     |
     |  FLAG_BUFFERED = 32
     |
     |  FLAG_LINE_BUFFERED = 64
     |
     |  FLAG_READ = 1
     |
     |  FLAG_UNIVERSAL_NEWLINE = 128
     |
     |  FLAG_WRITE = 2
     |
     |  SEEK_CUR = 1
     |
     |  SEEK_END = 2
     |
     |  SEEK_SET = 0
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    open_only(func)
        Decorator for `.Channel` methods which performs an openness check.

        :raises:
            `.SSHException` -- If the wrapped method is called on an unopened
            `.Channel`.

DATA
    DEBUG = 10
    ERROR = 40
    cMSG_CHANNEL_CLOSE = b'a'
    cMSG_CHANNEL_DATA = b'^'
    cMSG_CHANNEL_EOF = b'`'
    cMSG_CHANNEL_EXTENDED_DATA = b'_'
    cMSG_CHANNEL_FAILURE = b'd'
    cMSG_CHANNEL_REQUEST = b'b'
    cMSG_CHANNEL_SUCCESS = b'c'
    cMSG_CHANNEL_WINDOW_ADJUST = b']'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\channel.py

paramiko.client
Python Library Documentation: module paramiko.client in paramiko

NAME
    paramiko.client - SSH client & key policies

CLASSES
    builtins.object
        MissingHostKeyPolicy
            AutoAddPolicy
            RejectPolicy
            WarningPolicy
    paramiko.util.ClosingContextManager(builtins.object)
        SSHClient

    class AutoAddPolicy(MissingHostKeyPolicy)
     |  Policy for automatically adding the hostname and new host key to the
     |  local `.HostKeys` object, and saving it.  This is used by `.SSHClient`.
     |
     |  Method resolution order:
     |      AutoAddPolicy
     |      MissingHostKeyPolicy
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  missing_host_key(self, client, hostname, key)
     |      Called when an `.SSHClient` receives a server key for a server that
     |      isn't in either the system or local `.HostKeys` object.  To accept
     |      the key, simply return.  To reject, raised an exception (which will
     |      be passed to the calling application).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from MissingHostKeyPolicy:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class MissingHostKeyPolicy(builtins.object)
     |  Interface for defining the policy that `.SSHClient` should use when the
     |  SSH server's hostname is not in either the system host keys or the
     |  application's keys.  Pre-made classes implement policies for automatically
     |  adding the key to the application's `.HostKeys` object (`.AutoAddPolicy`),
     |  and for automatically rejecting the key (`.RejectPolicy`).
     |
     |  This function may be used to ask the user to verify the key, for example.
     |
     |  Methods defined here:
     |
     |  missing_host_key(self, client, hostname, key)
     |      Called when an `.SSHClient` receives a server key for a server that
     |      isn't in either the system or local `.HostKeys` object.  To accept
     |      the key, simply return.  To reject, raised an exception (which will
     |      be passed to the calling application).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class RejectPolicy(MissingHostKeyPolicy)
     |  Policy for automatically rejecting the unknown hostname & key.  This is
     |  used by `.SSHClient`.
     |
     |  Method resolution order:
     |      RejectPolicy
     |      MissingHostKeyPolicy
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  missing_host_key(self, client, hostname, key)
     |      Called when an `.SSHClient` receives a server key for a server that
     |      isn't in either the system or local `.HostKeys` object.  To accept
     |      the key, simply return.  To reject, raised an exception (which will
     |      be passed to the calling application).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from MissingHostKeyPolicy:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SSHClient(paramiko.util.ClosingContextManager)
     |  A high-level representation of a session with an SSH server.  This class
     |  wraps `.Transport`, `.Channel`, and `.SFTPClient` to take care of most
     |  aspects of authenticating and opening channels.  A typical use case is::
     |
     |      client = SSHClient()
     |      client.load_system_host_keys()
     |      client.connect('ssh.example.com')
     |      stdin, stdout, stderr = client.exec_command('ls -l')
     |
     |  You may pass in explicit overrides for authentication and server host key
     |  checking.  The default mechanism is to try to use local key files or an
     |  SSH agent (if one is running).
     |
     |  Instances of this class may be used as context managers.
     |
     |  .. versionadded:: 1.6
     |
     |  Method resolution order:
     |      SSHClient
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Create a new SSHClient.
     |
     |  close(self)
     |      Close this SSHClient and its underlying `.Transport`.
     |
     |      This should be called anytime you are done using the client object.
     |
     |      .. warning::
     |          Paramiko registers garbage collection hooks that will try to
     |          automatically close connections for you, but this is not presently
     |          reliable. Failure to explicitly close your client after use may
     |          lead to end-of-process hangs!
     |
     |  connect(self, hostname, port=22, username=None, password=None, pkey=None, key_filename=None, timeout=None, allow_agent=True, look_for_keys=True, compress=False, sock=None, banner_timeout=None, auth_timeout=None, channel_timeout=None, passphrase=None, disabled_algorithms=None, transport_factory=None, auth_strategy=None)
     |      Connect to an SSH server and authenticate to it.  The server's host key
     |      is checked against the system host keys (see `load_system_host_keys`)
     |      and any local host keys (`load_host_keys`).  If the server's hostname
     |      is not found in either set of host keys, the missing host key policy
     |      is used (see `set_missing_host_key_policy`).  The default policy is
     |      to reject the key and raise an `.SSHException`.
     |
     |      Authentication is attempted in the following order of priority:
     |
     |          - The ``pkey`` or ``key_filename`` passed in (if any)
     |
     |            - ``key_filename`` may contain OpenSSH public certificate paths
     |              as well as regular private-key paths; when files ending in
     |              ``-cert.pub`` are found, they are assumed to match a private
     |              key, and both components will be loaded. (The private key
     |              itself does *not* need to be listed in ``key_filename`` for
     |              this to occur - *just* the certificate.)
     |
     |          - Any key we can find through an SSH agent
     |          - Any ``id_*`` keys discoverable in ``~/.ssh/``
     |
     |            - When OpenSSH-style public certificates exist that match an
     |              existing such private key (so e.g. one has ``id_rsa`` and
     |              ``id_rsa-cert.pub``) the certificate will be loaded alongside
     |              the private key and used for authentication.
     |
     |          - Plain username/password auth, if a password was given
     |
     |      If a private key requires a password to unlock it, and a password is
     |      passed in, that password will be used to attempt to unlock the key.
     |
     |      :param str hostname: the server to connect to
     |      :param int port: the server port to connect to
     |      :param str username:
     |          the username to authenticate as (defaults to the current local
     |          username)
     |      :param str password:
     |          Used for password authentication; is also used for private key
     |          decryption if ``passphrase`` is not given.
     |      :param str passphrase:
     |          Used for decrypting private keys.
     |      :param .PKey pkey: an optional private key to use for authentication
     |      :param str key_filename:
     |          the filename, or list of filenames, of optional private key(s)
     |          and/or certs to try for authentication
     |      :param float timeout:
     |          an optional timeout (in seconds) for the TCP connect
     |      :param bool allow_agent:
     |          set to False to disable connecting to the SSH agent
     |      :param bool look_for_keys:
     |          set to False to disable searching for discoverable private key
     |          files in ``~/.ssh/``
     |      :param bool compress: set to True to turn on compression
     |      :param socket sock:
     |          an open socket or socket-like object (such as a `.Channel`) to use
     |          for communication to the target host
     |      :param float banner_timeout: an optional timeout (in seconds) to wait
     |          for the SSH banner to be presented.
     |      :param float auth_timeout: an optional timeout (in seconds) to wait for
     |          an authentication response.
     |      :param float channel_timeout: an optional timeout (in seconds) to wait
     |           for a channel open response.
     |      :param dict disabled_algorithms:
     |          an optional dict passed directly to `.Transport` and its keyword
     |          argument of the same name.
     |      :param transport_factory:
     |          an optional callable which is handed a subset of the constructor
     |          arguments (primarily those related to the socket and algorithm
     |          selection) and generates a `.Transport` instance to be used by this
     |          client. Defaults to `.Transport.__init__`.
     |      :param auth_strategy:
     |          an optional instance of `.AuthStrategy`, triggering use of this
     |          newer authentication mechanism instead of SSHClient's legacy auth
     |          method.
     |
     |          .. warning::
     |              This parameter is **incompatible** with all other
     |              authentication-related parameters (such as, but not limited to,
     |              ``password``, ``key_filename`` and ``allow_agent``) and will
     |              trigger an exception if given alongside them.
     |
     |      :returns:
     |          `.AuthResult` if ``auth_strategy`` is non-``None``; otherwise,
     |          returns ``None``.
     |
     |      :raises BadHostKeyException:
     |          if the server's host key could not be verified.
     |      :raises AuthenticationException:
     |          if authentication failed.
     |      :raises UnableToAuthenticate:
     |          if authentication failed (when ``auth_strategy`` is non-``None``;
     |          and note that this is a subclass of ``AuthenticationException``).
     |      :raises socket.error:
     |          if a socket error (other than connection-refused or
     |          host-unreachable) occurred while connecting.
     |      :raises NoValidConnectionsError:
     |          if all valid connection targets for the requested hostname (eg IPv4
     |          and IPv6) yielded connection-refused or host-unreachable socket
     |          errors.
     |      :raises SSHException:
     |          if there was any other error connecting or establishing an SSH
     |          session.
     |
     |      .. versionchanged:: 1.15
     |          Added the ``banner_timeout`` argument.
     |      .. versionchanged:: 2.4
     |          Added the ``passphrase`` argument.
     |      .. versionchanged:: 2.6
     |          Added the ``disabled_algorithms`` argument.
     |      .. versionchanged:: 2.12
     |          Added the ``transport_factory`` argument.
     |      .. versionchanged:: 3.2
     |          Added the ``auth_strategy`` argument.
     |
     |  exec_command(self, command, bufsize=-1, timeout=None, get_pty=False, environment=None)
     |      Execute a command on the SSH server.  A new `.Channel` is opened and
     |      the requested command is executed.  The command's input and output
     |      streams are returned as Python ``file``-like objects representing
     |      stdin, stdout, and stderr.
     |
     |      :param str command: the command to execute
     |      :param int bufsize:
     |          interpreted the same way as by the built-in ``file()`` function in
     |          Python
     |      :param int timeout:
     |          set command's channel timeout. See `.Channel.settimeout`
     |      :param bool get_pty:
     |          Request a pseudo-terminal from the server (default ``False``).
     |          See `.Channel.get_pty`
     |      :param dict environment:
     |          a dict of shell environment variables, to be merged into the
     |          default environment that the remote command executes within.
     |
     |          .. warning::
     |              Servers may silently reject some environment variables; see the
     |              warning in `.Channel.set_environment_variable` for details.
     |
     |      :return:
     |          the stdin, stdout, and stderr of the executing command, as a
     |          3-tuple
     |
     |      :raises: `.SSHException` -- if the server fails to execute the command
     |
     |      .. versionchanged:: 1.10
     |          Added the ``get_pty`` kwarg.
     |
     |  get_host_keys(self)
     |      Get the local `.HostKeys` object.  This can be used to examine the
     |      local host keys or change them.
     |
     |      :return: the local host keys as a `.HostKeys` object.
     |
     |  get_transport(self)
     |      Return the underlying `.Transport` object for this SSH connection.
     |      This can be used to perform lower-level tasks, like opening specific
     |      kinds of channels.
     |
     |      :return: the `.Transport` for this connection
     |
     |  invoke_shell(self, term='vt100', width=80, height=24, width_pixels=0, height_pixels=0, environment=None)
     |      Start an interactive shell session on the SSH server.  A new `.Channel`
     |      is opened and connected to a pseudo-terminal using the requested
     |      terminal type and size.
     |
     |      :param str term:
     |          the terminal type to emulate (for example, ``"vt100"``)
     |      :param int width: the width (in characters) of the terminal window
     |      :param int height: the height (in characters) of the terminal window
     |      :param int width_pixels: the width (in pixels) of the terminal window
     |      :param int height_pixels: the height (in pixels) of the terminal window
     |      :param dict environment: the command's environment
     |      :return: a new `.Channel` connected to the remote shell
     |
     |      :raises: `.SSHException` -- if the server fails to invoke a shell
     |
     |  load_host_keys(self, filename)
     |      Load host keys from a local host-key file.  Host keys read with this
     |      method will be checked after keys loaded via `load_system_host_keys`,
     |      but will be saved back by `save_host_keys` (so they can be modified).
     |      The missing host key policy `.AutoAddPolicy` adds keys to this set and
     |      saves them, when connecting to a previously-unknown server.
     |
     |      This method can be called multiple times.  Each new set of host keys
     |      will be merged with the existing set (new replacing old if there are
     |      conflicts).  When automatically saving, the last hostname is used.
     |
     |      :param str filename: the filename to read
     |
     |      :raises: ``IOError`` -- if the filename could not be read
     |
     |  load_system_host_keys(self, filename=None)
     |      Load host keys from a system (read-only) file.  Host keys read with
     |      this method will not be saved back by `save_host_keys`.
     |
     |      This method can be called multiple times.  Each new set of host keys
     |      will be merged with the existing set (new replacing old if there are
     |      conflicts).
     |
     |      If ``filename`` is left as ``None``, an attempt will be made to read
     |      keys from the user's local "known hosts" file, as used by OpenSSH,
     |      and no exception will be raised if the file can't be read.  This is
     |      probably only useful on posix.
     |
     |      :param str filename: the filename to read, or ``None``
     |
     |      :raises: ``IOError`` --
     |          if a filename was provided and the file could not be read
     |
     |  open_sftp(self)
     |      Open an SFTP session on the SSH server.
     |
     |      :return: a new `.SFTPClient` session object
     |
     |  save_host_keys(self, filename)
     |      Save the host keys back to a file.  Only the host keys loaded with
     |      `load_host_keys` (plus any added directly) will be saved -- not any
     |      host keys loaded with `load_system_host_keys`.
     |
     |      :param str filename: the filename to save to
     |
     |      :raises: ``IOError`` -- if the file could not be written
     |
     |  set_log_channel(self, name)
     |      Set the channel for logging.  The default is ``"paramiko.transport"``
     |      but it can be set to anything you want.
     |
     |      :param str name: new channel name for logging
     |
     |  set_missing_host_key_policy(self, policy)
     |      Set policy to use when connecting to servers without a known host key.
     |
     |      Specifically:
     |
     |      * A **policy** is a "policy class" (or instance thereof), namely some
     |        subclass of `.MissingHostKeyPolicy` such as `.RejectPolicy` (the
     |        default), `.AutoAddPolicy`, `.WarningPolicy`, or a user-created
     |        subclass.
     |      * A host key is **known** when it appears in the client object's cached
     |        host keys structures (those manipulated by `load_system_host_keys`
     |        and/or `load_host_keys`).
     |
     |      :param .MissingHostKeyPolicy policy:
     |          the policy to use when receiving a host key from a
     |          previously-unknown server
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class WarningPolicy(MissingHostKeyPolicy)
     |  Policy for logging a Python-style warning for an unknown host key, but
     |  accepting it. This is used by `.SSHClient`.
     |
     |  Method resolution order:
     |      WarningPolicy
     |      MissingHostKeyPolicy
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  missing_host_key(self, client, hostname, key)
     |      Called when an `.SSHClient` receives a server key for a server that
     |      isn't in either the system or local `.HostKeys` object.  To accept
     |      the key, simply return.  To reject, raised an exception (which will
     |      be passed to the calling application).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from MissingHostKeyPolicy:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    hexlify(...)
        Hexadecimal representation of binary data.

          sep
            An optional single character or byte to separate hex bytes.
          bytes_per_sep
            How many bytes between separators.  Positive values count from the
            right, negative values count from the left.

        The return value is a bytes object.  This function is also
        available as "b2a_hex()".

DATA
    DEBUG = 10
    ECONNREFUSED = 10061
    EHOSTUNREACH = 10065
    SSH_PORT = 22

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\client.py

paramiko.common
Python Library Documentation: module paramiko.common in paramiko

NAME
    paramiko.common - Common constants and global variables.

FUNCTIONS
    byte_chr(c)

    byte_mask(c, mask)

    byte_ord(c)

DATA
    AUTH_FAILED = 2
    AUTH_PARTIALLY_SUCCESSFUL = 1
    AUTH_SUCCESSFUL = 0
    CONNECTION_FAILED_CODE = {1: 'Administratively prohibited', 2: 'Connec...
    CRITICAL = 50
    DEBUG = 10
    DEFAULT_MAX_PACKET_SIZE = 32768
    DEFAULT_WINDOW_SIZE = 2097152
    DISCONNECT_AUTH_CANCELLED_BY_USER = 13
    DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE = 14
    DISCONNECT_SERVICE_NOT_AVAILABLE = 7
    ERROR = 40
    HIGHEST_USERAUTH_MESSAGE_ID = 79
    INFO = 20
    MAX_WINDOW_SIZE = 4294967295
    MIN_PACKET_SIZE = 4096
    MIN_WINDOW_SIZE = 32768
    MSG_CHANNEL_CLOSE = 97
    MSG_CHANNEL_DATA = 94
    MSG_CHANNEL_EOF = 96
    MSG_CHANNEL_EXTENDED_DATA = 95
    MSG_CHANNEL_FAILURE = 100
    MSG_CHANNEL_OPEN = 90
    MSG_CHANNEL_OPEN_FAILURE = 92
    MSG_CHANNEL_OPEN_SUCCESS = 91
    MSG_CHANNEL_REQUEST = 98
    MSG_CHANNEL_SUCCESS = 99
    MSG_CHANNEL_WINDOW_ADJUST = 93
    MSG_DEBUG = 4
    MSG_DISCONNECT = 1
    MSG_EXT_INFO = 7
    MSG_GLOBAL_REQUEST = 80
    MSG_IGNORE = 2
    MSG_KEXINIT = 20
    MSG_NAMES = {1: 'disconnect', 2: 'ignore', 3: 'unimplemented', 4: 'deb...
    MSG_NEWKEYS = 21
    MSG_REQUEST_FAILURE = 82
    MSG_REQUEST_SUCCESS = 81
    MSG_SERVICE_ACCEPT = 6
    MSG_SERVICE_REQUEST = 5
    MSG_UNIMPLEMENTED = 3
    MSG_USERAUTH_BANNER = 53
    MSG_USERAUTH_FAILURE = 51
    MSG_USERAUTH_GSSAPI_ERROR = 64
    MSG_USERAUTH_GSSAPI_ERRTOK = 65
    MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE = 63
    MSG_USERAUTH_GSSAPI_MIC = 66
    MSG_USERAUTH_GSSAPI_RESPONSE = 60
    MSG_USERAUTH_GSSAPI_TOKEN = 61
    MSG_USERAUTH_INFO_REQUEST = 60
    MSG_USERAUTH_INFO_RESPONSE = 61
    MSG_USERAUTH_PK_OK = 60
    MSG_USERAUTH_REQUEST = 50
    MSG_USERAUTH_SUCCESS = 52
    OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED = 1
    OPEN_FAILED_CONNECT_FAILED = 2
    OPEN_FAILED_RESOURCE_SHORTAGE = 4
    OPEN_FAILED_UNKNOWN_CHANNEL_TYPE = 3
    OPEN_SUCCEEDED = 0
    WARNING = 30
    cMSG_CHANNEL_CLOSE = b'a'
    cMSG_CHANNEL_DATA = b'^'
    cMSG_CHANNEL_EOF = b'`'
    cMSG_CHANNEL_EXTENDED_DATA = b'_'
    cMSG_CHANNEL_FAILURE = b'd'
    cMSG_CHANNEL_OPEN = b'Z'
    cMSG_CHANNEL_OPEN_FAILURE = b'\\'
    cMSG_CHANNEL_OPEN_SUCCESS = b'['
    cMSG_CHANNEL_REQUEST = b'b'
    cMSG_CHANNEL_SUCCESS = b'c'
    cMSG_CHANNEL_WINDOW_ADJUST = b']'
    cMSG_DEBUG = b'\x04'
    cMSG_DISCONNECT = b'\x01'
    cMSG_EXT_INFO = b'\x07'
    cMSG_GLOBAL_REQUEST = b'P'
    cMSG_IGNORE = b'\x02'
    cMSG_KEXINIT = b'\x14'
    cMSG_NEWKEYS = b'\x15'
    cMSG_REQUEST_FAILURE = b'R'
    cMSG_REQUEST_SUCCESS = b'Q'
    cMSG_SERVICE_ACCEPT = b'\x06'
    cMSG_SERVICE_REQUEST = b'\x05'
    cMSG_UNIMPLEMENTED = b'\x03'
    cMSG_USERAUTH_BANNER = b'5'
    cMSG_USERAUTH_FAILURE = b'3'
    cMSG_USERAUTH_GSSAPI_ERROR = b'@'
    cMSG_USERAUTH_GSSAPI_ERRTOK = b'A'
    cMSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE = b'?'
    cMSG_USERAUTH_GSSAPI_MIC = b'B'
    cMSG_USERAUTH_GSSAPI_RESPONSE = b'<'
    cMSG_USERAUTH_GSSAPI_TOKEN = b'='
    cMSG_USERAUTH_INFO_REQUEST = b'<'
    cMSG_USERAUTH_INFO_RESPONSE = b'='
    cMSG_USERAUTH_PK_OK = b'<'
    cMSG_USERAUTH_REQUEST = b'2'
    cMSG_USERAUTH_SUCCESS = b'4'
    cr_byte = b'\r'
    cr_byte_value = 13
    crlf = b'\r\n'
    four_byte = b'\x04'
    io_sleep = 0.01
    linefeed_byte = b'\n'
    linefeed_byte_value = 10
    max_byte = b'\xff'
    o600 = 384
    o644 = 420
    o660 = 432
    o666 = 438
    o70 = 56
    o700 = 448
    o777 = 511
    one_byte = b'\x01'
    x80000000 = 2147483648
    xffffffff = 4294967295
    zero_byte = b'\x00'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\common.py

paramiko.compress
Python Library Documentation: module paramiko.compress in paramiko

NAME
    paramiko.compress - Compression implementations for a Transport.

CLASSES
    builtins.object
        ZlibCompressor
        ZlibDecompressor

    class ZlibCompressor(builtins.object)
     |  Methods defined here:
     |
     |  __call__(self, data)
     |      Call self as a function.
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class ZlibDecompressor(builtins.object)
     |  Methods defined here:
     |
     |  __call__(self, data)
     |      Call self as a function.
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\compress.py

paramiko.config
Python Library Documentation: module paramiko.config in paramiko

NAME
    paramiko.config - Configuration file (aka ``ssh_config``) support.

CLASSES
    builtins.dict(builtins.object)
        SSHConfigDict
    builtins.object
        LazyFqdn
        SSHConfig

    class LazyFqdn(builtins.object)
     |  LazyFqdn(config, host=None)
     |
     |  Returns the host's fqdn on request as string.
     |
     |  Methods defined here:
     |
     |  __init__(self, config, host=None)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SSHConfig(builtins.object)
     |  Representation of config information as stored in the format used by
     |  OpenSSH. Queries can be made via `lookup`. The format is described in
     |  OpenSSH's ``ssh_config`` man page. This class is provided primarily as a
     |  convenience to posix users (since the OpenSSH format is a de-facto
     |  standard on posix) but should work fine on Windows too.
     |
     |  .. versionadded:: 1.6
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Create a new OpenSSH config object.
     |
     |      Note: the newer alternate constructors `from_path`, `from_file` and
     |      `from_text` are simpler to use, as they parse on instantiation. For
     |      example, instead of::
     |
     |          config = SSHConfig()
     |          config.parse(open("some-path.config")
     |
     |      you could::
     |
     |          config = SSHConfig.from_file(open("some-path.config"))
     |          # Or more directly:
     |          config = SSHConfig.from_path("some-path.config")
     |          # Or if you have arbitrary ssh_config text from some other source:
     |          config = SSHConfig.from_text("Host foo\n\tUser bar")
     |
     |  canonicalize(self, hostname, options, domains)
     |      Return canonicalized version of ``hostname``.
     |
     |      :param str hostname: Target hostname.
     |      :param options: An `SSHConfigDict` from a previous lookup pass.
     |      :param domains: List of domains (e.g. ``["paramiko.org"]``).
     |
     |      :returns: A canonicalized hostname if one was found, else ``None``.
     |
     |      .. versionadded:: 2.7
     |
     |  get_hostnames(self)
     |      Return the set of literal hostnames defined in the SSH config (both
     |      explicit hostnames and wildcard entries).
     |
     |  lookup(self, hostname)
     |      Return a dict (`SSHConfigDict`) of config options for a given hostname.
     |
     |      The host-matching rules of OpenSSH's ``ssh_config`` man page are used:
     |      For each parameter, the first obtained value will be used.  The
     |      configuration files contain sections separated by ``Host`` and/or
     |      ``Match`` specifications, and that section is only applied for hosts
     |      which match the given patterns or keywords
     |
     |      Since the first obtained value for each parameter is used, more host-
     |      specific declarations should be given near the beginning of the file,
     |      and general defaults at the end.
     |
     |      The keys in the returned dict are all normalized to lowercase (look for
     |      ``"port"``, not ``"Port"``. The values are processed according to the
     |      rules for substitution variable expansion in ``ssh_config``.
     |
     |      Finally, please see the docs for `SSHConfigDict` for deeper info on
     |      features such as optional type conversion methods, e.g.::
     |
     |          conf = my_config.lookup('myhost')
     |          assert conf['passwordauthentication'] == 'yes'
     |          assert conf.as_bool('passwordauthentication') is True
     |
     |      .. note::
     |          If there is no explicitly configured ``HostName`` value, it will be
     |          set to the being-looked-up hostname, which is as close as we can
     |          get to OpenSSH's behavior around that particular option.
     |
     |      :param str hostname: the hostname to lookup
     |
     |      .. versionchanged:: 2.5
     |          Returns `SSHConfigDict` objects instead of dict literals.
     |      .. versionchanged:: 2.7
     |          Added canonicalization support.
     |      .. versionchanged:: 2.7
     |          Added ``Match`` support.
     |      .. versionchanged:: 3.3
     |          Added ``Match final`` support.
     |
     |  parse(self, file_obj)
     |      Read an OpenSSH config from the given file object.
     |
     |      :param file_obj: a file-like object to read the config file from
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_file(flo)
     |      Create a new, parsed `SSHConfig` from file-like object ``flo``.
     |
     |      .. versionadded:: 2.7
     |
     |  from_path(path)
     |      Create a new, parsed `SSHConfig` from the file found at ``path``.
     |
     |      .. versionadded:: 2.7
     |
     |  from_text(text)
     |      Create a new, parsed `SSHConfig` from ``text`` string.
     |
     |      .. versionadded:: 2.7
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  SETTINGS_REGEX = re.compile('(\\w+)(?:\\s*=\\s*|\\s+)(.+)')
     |
     |  TOKENS_BY_CONFIG_KEY = {'controlpath': ['%C', '%h', '%l', '%L', '%n', ...

    class SSHConfigDict(builtins.dict)
     |  A dictionary wrapper/subclass for per-host configuration structures.
     |
     |  This class introduces some usage niceties for consumers of `SSHConfig`,
     |  specifically around the issue of variable type conversions: normal value
     |  access yields strings, but there are now methods such as `as_bool` and
     |  `as_int` that yield casted values instead.
     |
     |  For example, given the following ``ssh_config`` file snippet::
     |
     |      Host foo.example.com
     |          PasswordAuthentication no
     |          Compression yes
     |          ServerAliveInterval 60
     |
     |  the following code highlights how you can access the raw strings as well as
     |  usefully Python type-casted versions (recalling that keys are all
     |  normalized to lowercase first)::
     |
     |      my_config = SSHConfig()
     |      my_config.parse(open('~/.ssh/config'))
     |      conf = my_config.lookup('foo.example.com')
     |
     |      assert conf['passwordauthentication'] == 'no'
     |      assert conf.as_bool('passwordauthentication') is False
     |      assert conf['compression'] == 'yes'
     |      assert conf.as_bool('compression') is True
     |      assert conf['serveraliveinterval'] == '60'
     |      assert conf.as_int('serveraliveinterval') == 60
     |
     |  .. versionadded:: 2.5
     |
     |  Method resolution order:
     |      SSHConfigDict
     |      builtins.dict
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  as_bool(self, key)
     |      Express given key's value as a boolean type.
     |
     |      Typically, this is used for ``ssh_config``'s pseudo-boolean values
     |      which are either ``"yes"`` or ``"no"``. In such cases, ``"yes"`` yields
     |      ``True`` and any other value becomes ``False``.
     |
     |      .. note::
     |          If (for whatever reason) the stored value is already boolean in
     |          nature, it's simply returned.
     |
     |      .. versionadded:: 2.5
     |
     |  as_int(self, key)
     |      Express given key's value as an integer, if possible.
     |
     |      This method will raise ``ValueError`` or similar if the value is not
     |      int-appropriate, same as the builtin `int` type.
     |
     |      .. versionadded:: 2.5
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.dict:
     |
     |  __contains__(self, key, /)
     |      True if the dictionary has the specified key, else False.
     |
     |  __delitem__(self, key, /)
     |      Delete self[key].
     |
     |  __eq__(self, value, /)
     |      Return self==value.
     |
     |  __ge__(self, value, /)
     |      Return self>=value.
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __getitem__(self, key, /)
     |      Return self[key].
     |
     |  __gt__(self, value, /)
     |      Return self>value.
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __ior__(self, value, /)
     |      Return self|=value.
     |
     |  __iter__(self, /)
     |      Implement iter(self).
     |
     |  __le__(self, value, /)
     |      Return self<=value.
     |
     |  __len__(self, /)
     |      Return len(self).
     |
     |  __lt__(self, value, /)
     |      Return self<value.
     |
     |  __ne__(self, value, /)
     |      Return self!=value.
     |
     |  __or__(self, value, /)
     |      Return self|value.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __reversed__(self, /)
     |      Return a reverse iterator over the dict keys.
     |
     |  __ror__(self, value, /)
     |      Return value|self.
     |
     |  __setitem__(self, key, value, /)
     |      Set self[key] to value.
     |
     |  __sizeof__(...)
     |      D.__sizeof__() -> size of D in memory, in bytes
     |
     |  clear(...)
     |      D.clear() -> None.  Remove all items from D.
     |
     |  copy(...)
     |      D.copy() -> a shallow copy of D
     |
     |  get(self, key, default=None, /)
     |      Return the value for key if key is in the dictionary, else default.
     |
     |  items(...)
     |      D.items() -> a set-like object providing a view on D's items
     |
     |  keys(...)
     |      D.keys() -> a set-like object providing a view on D's keys
     |
     |  pop(...)
     |      D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
     |
     |      If the key is not found, return the default if given; otherwise,
     |      raise a KeyError.
     |
     |  popitem(self, /)
     |      Remove and return a (key, value) pair as a 2-tuple.
     |
     |      Pairs are returned in LIFO (last-in, first-out) order.
     |      Raises KeyError if the dict is empty.
     |
     |  setdefault(self, key, default=None, /)
     |      Insert key with a value of default if key is not in the dictionary.
     |
     |      Return the value for key if key is in the dictionary, else default.
     |
     |  update(...)
     |      D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.
     |      If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]
     |      If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = v
     |      In either case, this is followed by: for k in F:  D[k] = F[k]
     |
     |  values(...)
     |      D.values() -> an object providing a view on D's values
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from builtins.dict:
     |
     |  __class_getitem__(...)
     |      See PEP 585
     |
     |  fromkeys(iterable, value=None, /)
     |      Create a new dictionary with keys from iterable and values set to value.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.dict:
     |
     |  __new__(*args, **kwargs) class method of builtins.dict
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from builtins.dict:
     |
     |  __hash__ = None

FUNCTIONS
    sha1 = openssl_sha1(string=b'', *, usedforsecurity=True)
        Returns a sha1 hash object; optionally initialized with a string

DATA
    SSH_PORT = 22
    invoke_import_error = None

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\config.py

paramiko.ecdsakey
Python Library Documentation: module paramiko.ecdsakey in paramiko

NAME
    paramiko.ecdsakey - ECDSA keys

CLASSES
    paramiko.pkey.PKey(builtins.object)
        ECDSAKey

    class ECDSAKey(paramiko.pkey.PKey)
     |  ECDSAKey(msg=None, data=None, filename=None, password=None, vals=None, file_obj=None, validate_point=True)
     |
     |  Representation of an ECDSA key which can be used to sign and verify SSH2
     |  data.
     |
     |  Method resolution order:
     |      ECDSAKey
     |      paramiko.pkey.PKey
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, msg=None, data=None, filename=None, password=None, vals=None, file_obj=None, validate_point=True)
     |      Create a new instance of this public key type.  If ``msg`` is given,
     |      the key's public part(s) will be filled in from the message.  If
     |      ``data`` is given, the key's public part(s) will be filled in from
     |      the string.
     |
     |      :param .Message msg:
     |          an optional SSH `.Message` containing a public key of this type.
     |      :param bytes data:
     |          optional, the bytes of a public key of this type
     |
     |      :raises: `.SSHException` --
     |          if a key cannot be created from the ``data`` or ``msg`` given, or
     |          no key was passed in.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  _decode_key(self, data)
     |
     |  _from_private_key(self, file_obj, password)
     |
     |  _from_private_key_file(self, filename, password)
     |
     |  _sigdecode(self, sig)
     |
     |  _sigencode(self, r, s)
     |
     |  asbytes(self)
     |      Return a string of an SSH `.Message` made up of the public part(s) of
     |      this key.  This string is suitable for passing to `__init__` to
     |      re-create the key object later.
     |
     |  can_sign(self)
     |      Return ``True`` if this key has the private part necessary for signing
     |      data.
     |
     |  get_bits(self)
     |      Return the number of significant bits in this key.  This is useful
     |      for judging the relative security of a key.
     |
     |      :return: bits in the key (as an `int`)
     |
     |  get_name(self)
     |      Return the name of this private key implementation.
     |
     |      :return:
     |          name of this private key type, in SSH terminology, as a `str` (for
     |          example, ``"ssh-rsa"``).
     |
     |  sign_ssh_data(self, data, algorithm=None)
     |      Sign a blob of data with this private key, and return a `.Message`
     |      representing an SSH signature message.
     |
     |      :param bytes data:
     |          the data to sign.
     |      :param str algorithm:
     |          the signature algorithm to use, if different from the key's
     |          internal name. Default: ``None``.
     |      :return: an SSH signature `message <.Message>`.
     |
     |      .. versionchanged:: 2.9
     |          Added the ``algorithm`` kwarg.
     |
     |  verify_ssh_sig(self, data, msg)
     |      Given a blob of data, and an SSH message representing a signature of
     |      that data, verify that it was signed with this key.
     |
     |      :param bytes data: the data that was signed.
     |      :param .Message msg: an SSH signature message
     |      :return:
     |          ``True`` if the signature verifies correctly; ``False`` otherwise.
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  generate(curve=<cryptography.hazmat.primitives.asymmetric.ec.SECP256R1 object at 0x000002919E1C8740>, progress_func=None, bits=None)
     |      Generate a new private ECDSA key.  This factory function can be used to
     |      generate a new host key or authentication key.
     |
     |      :param progress_func: Not used for this type of key.
     |      :returns: A new private key (`.ECDSAKey`) object
     |
     |  identifiers()
     |      returns an iterable of key format/name strings this class can handle.
     |
     |      Most classes only have a single identifier, and thus this default
     |      implementation suffices; see `.ECDSAKey` for one example of an
     |      override.
     |
     |  supported_key_format_identifiers()
     |      # TODO (backwards incompat): deprecate/remove
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  _fields
     |
     |  private_key
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  _ECDSA_CURVES = <paramiko.ecdsakey._ECDSACurveSet object>
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.pkey.PKey:
     |
     |  __bytes__(self)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __hash__(self)
     |      Return hash(self).
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  _check_type_and_load_cert(self, msg, key_type, cert_type)
     |      Perform message type-checking & optional certificate loading.
     |
     |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
     |      that the subsequent fields are the key numbers; thus the caller may
     |      expect to treat the message as key material afterwards either way.
     |
     |      The obtained key type is returned for classes which need to know what
     |      it was (e.g. ECDSA.)
     |
     |  _got_bad_key_format_id(self, id_)
     |
     |  _read_private_key(self, tag, f, password=None)
     |
     |  _read_private_key_file(self, tag, filename, password=None)
     |      Read an SSH2-format private key file, looking for a string of the type
     |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
     |      find, and return it as a string.  If the private key is encrypted and
     |      ``password`` is not ``None``, the given password will be used to
     |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
     |
     |      :param str tag:
     |          ``"RSA"`` (or etc), the tag used to mark the data block.
     |      :param str filename:
     |          name of the file to read.
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted.
     |      :return:
     |          the `bytes` that make up the private key.
     |
     |      :raises: ``IOError`` -- if there was an error reading the file.
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``.
     |      :raises: `.SSHException` -- if the key file is invalid.
     |
     |  _read_private_key_openssh(self, lines, password)
     |      Read the new OpenSSH SSH2 private key format available
     |      since OpenSSH version 6.5
     |      Reference:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
     |
     |  _read_private_key_pem(self, lines, end, password)
     |
     |  _uint32_cstruct_unpack(self, data, strformat)
     |      Used to read new OpenSSH private key format.
     |      Unpacks a c data structure containing a mix of 32-bit uints and
     |      variable length strings prefixed by 32-bit uint size field,
     |      according to the specified format. Returns the unpacked vars
     |      in a tuple.
     |      Format strings:
     |        s - denotes a string
     |        i - denotes a long integer, encoded as a byte string
     |        u - denotes a 32-bit unsigned integer
     |        r - the remainder of the input string, returned as a string
     |
     |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  get_base64(self)
     |      Return a base64 string containing the public part of this key.  Nothing
     |      secret is revealed.  This format is compatible with that used to store
     |      public key files or recognized host keys.
     |
     |      :return: a base64 `string <str>` containing the public part of the key.
     |
     |  get_fingerprint(self)
     |      Return an MD5 fingerprint of the public part of this key.  Nothing
     |      secret is revealed.
     |
     |      :return:
     |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
     |          format.
     |
     |  load_certificate(self, value)
     |      Supplement the private key contents with data loaded from an OpenSSH
     |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
     |      containing such a file, or a `.Message` object.
     |
     |      The .pub contents adds no real value, since the private key
     |      file includes sufficient information to derive the public
     |      key info. For certificates, however, this can be used on
     |      the client side to offer authentication requests to the server
     |      based on certificate instead of raw public key.
     |
     |      See:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
     |
     |      Note: very little effort is made to validate the certificate contents,
     |      that is for the server to decide if it is good enough to authenticate
     |      successfully.
     |
     |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file (or file-like) object.  If the
     |      password is not ``None``, the key is encrypted before writing.
     |
     |      :param file_obj: the file-like object to write into
     |      :param str password: an optional password to use to encrypt the key
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing to the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file.  If the password is not
     |      ``None``, the key is encrypted before writing.
     |
     |      :param str filename: name of the file to write
     |      :param str password:
     |          an optional password to use to encrypt the key file
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from paramiko.pkey.PKey:
     |
     |  from_private_key(file_obj, password=None)
     |      Create a key object by reading a private key from a file (or file-like)
     |      object.  If the private key is encrypted and ``password`` is not
     |      ``None``, the given password will be used to decrypt the key (otherwise
     |      `.PasswordRequiredException` is thrown).
     |
     |      :param file_obj: the file-like object to read from
     |      :param str password:
     |          an optional password to use to decrypt the key, if it's encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the key
     |      :raises: `.PasswordRequiredException` --
     |          if the private key file is encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  from_private_key_file(filename, password=None)
     |      Create a key object by reading a private key file.  If the private
     |      key is encrypted and ``password`` is not ``None``, the given password
     |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
     |      is thrown).  Through the magic of Python, this factory method will
     |      exist in all subclasses of PKey (such as `.RSAKey`), but
     |      is useless on the abstract PKey class.
     |
     |      :param str filename: name of the file to read
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from paramiko.pkey.PKey:
     |
     |  from_path(path, password: Optional[str] = None)
     |      Attempt to instantiate appropriate key subclass from given file path.
     |
     |      :param pathlib.Path path: The path to load (may also be a `str`).
     |      :param str password: Optional decryption password.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Renamed ``passphrase`` argument to ``password`` for consistency
     |          with older methods.
     |
     |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
     |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
     |
     |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
     |      will (if successful) return a new `.Ed25519Key`.
     |
     |      :param str key_type:
     |          The key type, eg ``"ssh-ed25519"``.
     |      :param bytes key_bytes:
     |          The raw byte data forming the key material, as expected by
     |          subclasses' ``data`` parameter.
     |      :param str password:
     |          Optional password used to decrypt ``key_bytes``.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if no registered classes knew about this type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Added the ``password`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.pkey.PKey:
     |
     |  algorithm_name
     |      Return the key algorithm identifier for this key.
     |
     |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
     |      protocol field value.
     |
     |  fingerprint
     |      Modern fingerprint property designed to be comparable to OpenSSH.
     |
     |      Currently only does SHA256 (the OpenSSH default).
     |
     |      .. versionadded:: 3.2
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.pkey.PKey:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.pkey.PKey:
     |
     |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
     |
     |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
     |
     |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
     |
     |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
     |
     |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1

FUNCTIONS
    decode_dss_signature(data)

    encode_dss_signature(r, s)

DATA
    Optional = typing.Optional
        Optional[X] is equivalent to Union[X, None].

    four_byte = b'\x04'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\ecdsakey.py

paramiko.ed25519key
Python Library Documentation: module paramiko.ed25519key in paramiko

NAME
    paramiko.ed25519key

DESCRIPTION
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    paramiko.pkey.PKey(builtins.object)
        Ed25519Key

    class Ed25519Key(paramiko.pkey.PKey)
     |  Ed25519Key(msg=None, data=None, filename=None, password=None, file_obj=None)
     |
     |  Representation of an `Ed25519 <https://ed25519.cr.yp.to/>`_ key.
     |
     |  .. note::
     |      Ed25519 key support was added to OpenSSH in version 6.5.
     |
     |  .. versionadded:: 2.2
     |  .. versionchanged:: 2.3
     |      Added a ``file_obj`` parameter to match other key classes.
     |
     |  Method resolution order:
     |      Ed25519Key
     |      paramiko.pkey.PKey
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, msg=None, data=None, filename=None, password=None, file_obj=None)
     |      Create a new instance of this public key type.  If ``msg`` is given,
     |      the key's public part(s) will be filled in from the message.  If
     |      ``data`` is given, the key's public part(s) will be filled in from
     |      the string.
     |
     |      :param .Message msg:
     |          an optional SSH `.Message` containing a public key of this type.
     |      :param bytes data:
     |          optional, the bytes of a public key of this type
     |
     |      :raises: `.SSHException` --
     |          if a key cannot be created from the ``data`` or ``msg`` given, or
     |          no key was passed in.
     |
     |  _parse_signing_key_data(self, data, password)
     |
     |  asbytes(self)
     |      Return a string of an SSH `.Message` made up of the public part(s) of
     |      this key.  This string is suitable for passing to `__init__` to
     |      re-create the key object later.
     |
     |  can_sign(self)
     |      Return ``True`` if this key has the private part necessary for signing
     |      data.
     |
     |  can_verify(self)
     |
     |  get_bits(self)
     |      Return the number of significant bits in this key.  This is useful
     |      for judging the relative security of a key.
     |
     |      :return: bits in the key (as an `int`)
     |
     |  get_name(self)
     |      Return the name of this private key implementation.
     |
     |      :return:
     |          name of this private key type, in SSH terminology, as a `str` (for
     |          example, ``"ssh-rsa"``).
     |
     |  sign_ssh_data(self, data, algorithm=None)
     |      Sign a blob of data with this private key, and return a `.Message`
     |      representing an SSH signature message.
     |
     |      :param bytes data:
     |          the data to sign.
     |      :param str algorithm:
     |          the signature algorithm to use, if different from the key's
     |          internal name. Default: ``None``.
     |      :return: an SSH signature `message <.Message>`.
     |
     |      .. versionchanged:: 2.9
     |          Added the ``algorithm`` kwarg.
     |
     |  verify_ssh_sig(self, data, msg)
     |      Given a blob of data, and an SSH message representing a signature of
     |      that data, verify that it was signed with this key.
     |
     |      :param bytes data: the data that was signed.
     |      :param .Message msg: an SSH signature message
     |      :return:
     |          ``True`` if the signature verifies correctly; ``False`` otherwise.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  _fields
     |
     |  verifying_key
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  name = 'ssh-ed25519'
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.pkey.PKey:
     |
     |  __bytes__(self)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __hash__(self)
     |      Return hash(self).
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  _check_type_and_load_cert(self, msg, key_type, cert_type)
     |      Perform message type-checking & optional certificate loading.
     |
     |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
     |      that the subsequent fields are the key numbers; thus the caller may
     |      expect to treat the message as key material afterwards either way.
     |
     |      The obtained key type is returned for classes which need to know what
     |      it was (e.g. ECDSA.)
     |
     |  _got_bad_key_format_id(self, id_)
     |
     |  _read_private_key(self, tag, f, password=None)
     |
     |  _read_private_key_file(self, tag, filename, password=None)
     |      Read an SSH2-format private key file, looking for a string of the type
     |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
     |      find, and return it as a string.  If the private key is encrypted and
     |      ``password`` is not ``None``, the given password will be used to
     |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
     |
     |      :param str tag:
     |          ``"RSA"`` (or etc), the tag used to mark the data block.
     |      :param str filename:
     |          name of the file to read.
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted.
     |      :return:
     |          the `bytes` that make up the private key.
     |
     |      :raises: ``IOError`` -- if there was an error reading the file.
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``.
     |      :raises: `.SSHException` -- if the key file is invalid.
     |
     |  _read_private_key_openssh(self, lines, password)
     |      Read the new OpenSSH SSH2 private key format available
     |      since OpenSSH version 6.5
     |      Reference:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
     |
     |  _read_private_key_pem(self, lines, end, password)
     |
     |  _uint32_cstruct_unpack(self, data, strformat)
     |      Used to read new OpenSSH private key format.
     |      Unpacks a c data structure containing a mix of 32-bit uints and
     |      variable length strings prefixed by 32-bit uint size field,
     |      according to the specified format. Returns the unpacked vars
     |      in a tuple.
     |      Format strings:
     |        s - denotes a string
     |        i - denotes a long integer, encoded as a byte string
     |        u - denotes a 32-bit unsigned integer
     |        r - the remainder of the input string, returned as a string
     |
     |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  get_base64(self)
     |      Return a base64 string containing the public part of this key.  Nothing
     |      secret is revealed.  This format is compatible with that used to store
     |      public key files or recognized host keys.
     |
     |      :return: a base64 `string <str>` containing the public part of the key.
     |
     |  get_fingerprint(self)
     |      Return an MD5 fingerprint of the public part of this key.  Nothing
     |      secret is revealed.
     |
     |      :return:
     |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
     |          format.
     |
     |  load_certificate(self, value)
     |      Supplement the private key contents with data loaded from an OpenSSH
     |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
     |      containing such a file, or a `.Message` object.
     |
     |      The .pub contents adds no real value, since the private key
     |      file includes sufficient information to derive the public
     |      key info. For certificates, however, this can be used on
     |      the client side to offer authentication requests to the server
     |      based on certificate instead of raw public key.
     |
     |      See:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
     |
     |      Note: very little effort is made to validate the certificate contents,
     |      that is for the server to decide if it is good enough to authenticate
     |      successfully.
     |
     |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file (or file-like) object.  If the
     |      password is not ``None``, the key is encrypted before writing.
     |
     |      :param file_obj: the file-like object to write into
     |      :param str password: an optional password to use to encrypt the key
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing to the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file.  If the password is not
     |      ``None``, the key is encrypted before writing.
     |
     |      :param str filename: name of the file to write
     |      :param str password:
     |          an optional password to use to encrypt the key file
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from paramiko.pkey.PKey:
     |
     |  from_private_key(file_obj, password=None)
     |      Create a key object by reading a private key from a file (or file-like)
     |      object.  If the private key is encrypted and ``password`` is not
     |      ``None``, the given password will be used to decrypt the key (otherwise
     |      `.PasswordRequiredException` is thrown).
     |
     |      :param file_obj: the file-like object to read from
     |      :param str password:
     |          an optional password to use to decrypt the key, if it's encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the key
     |      :raises: `.PasswordRequiredException` --
     |          if the private key file is encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  from_private_key_file(filename, password=None)
     |      Create a key object by reading a private key file.  If the private
     |      key is encrypted and ``password`` is not ``None``, the given password
     |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
     |      is thrown).  Through the magic of Python, this factory method will
     |      exist in all subclasses of PKey (such as `.RSAKey`), but
     |      is useless on the abstract PKey class.
     |
     |      :param str filename: name of the file to read
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  identifiers()
     |      returns an iterable of key format/name strings this class can handle.
     |
     |      Most classes only have a single identifier, and thus this default
     |      implementation suffices; see `.ECDSAKey` for one example of an
     |      override.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from paramiko.pkey.PKey:
     |
     |  from_path(path, password: Optional[str] = None)
     |      Attempt to instantiate appropriate key subclass from given file path.
     |
     |      :param pathlib.Path path: The path to load (may also be a `str`).
     |      :param str password: Optional decryption password.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Renamed ``passphrase`` argument to ``password`` for consistency
     |          with older methods.
     |
     |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
     |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
     |
     |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
     |      will (if successful) return a new `.Ed25519Key`.
     |
     |      :param str key_type:
     |          The key type, eg ``"ssh-ed25519"``.
     |      :param bytes key_bytes:
     |          The raw byte data forming the key material, as expected by
     |          subclasses' ``data`` parameter.
     |      :param str password:
     |          Optional password used to decrypt ``key_bytes``.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if no registered classes knew about this type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Added the ``password`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.pkey.PKey:
     |
     |  algorithm_name
     |      Return the key algorithm identifier for this key.
     |
     |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
     |      protocol field value.
     |
     |  fingerprint
     |      Modern fingerprint property designed to be comparable to OpenSSH.
     |
     |      Currently only does SHA256 (the OpenSSH default).
     |
     |      .. versionadded:: 3.2
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.pkey.PKey:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.pkey.PKey:
     |
     |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
     |
     |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
     |
     |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
     |
     |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
     |
     |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1

DATA
    OPENSSH_AUTH_MAGIC = b'openssh-key-v1\x00'
    Union = typing.Union
        Union type; Union[X, Y] means either X or Y.

        On Python 3.10 and higher, the | operator
        can also be used to denote unions;
        X | Y means the same thing to the type checker as Union[X, Y].

        To define a union, use e.g. Union[int, str]. Details:
        - The arguments must be types and there must be at least one.
        - None as an argument is a special case and is replaced by
          type(None).
        - Unions of unions are flattened, e.g.::

            assert Union[Union[int, str], float] == Union[int, str, float]

        - Unions of a single argument vanish, e.g.::

            assert Union[int] == int  # The constructor actually returns int

        - Redundant arguments are skipped, e.g.::

            assert Union[int, str, int] == Union[int, str]

        - When comparing unions, the argument order is ignored, e.g.::

            assert Union[int, str] == Union[str, int]

        - You cannot subclass or instantiate a union.
        - You can use Optional[X] as a shorthand for Union[X, None].

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\ed25519key.py

paramiko.file
Python Library Documentation: module paramiko.file in paramiko

NAME
    paramiko.file

DESCRIPTION
    # Copyright (C) 2003-2007  Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    paramiko.util.ClosingContextManager(builtins.object)
        BufferedFile

    class BufferedFile(paramiko.util.ClosingContextManager)
     |  Reusable base class to implement Python-style file buffering around a
     |  simpler stream.
     |
     |  Method resolution order:
     |      BufferedFile
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __iter__(self)
     |      Returns an iterator that can be used to iterate over the lines in this
     |      file.  This iterator happens to return the file itself, since a file is
     |      its own iterator.
     |
     |      :raises: ``ValueError`` -- if the file is closed.
     |
     |  __next__(self)
     |      Returns the next line from the input, or raises ``StopIteration``
     |      when EOF is hit.  Unlike python file objects, it's okay to mix
     |      calls to `.next` and `.readline`.
     |
     |      :raises: ``StopIteration`` -- when the end of the file is reached.
     |
     |      :returns:
     |          a line (`str`, or `bytes` if the file was opened in binary mode)
     |          read from the file.
     |
     |  close(self)
     |      Close the file.  Future read and write operations will fail.
     |
     |  flush(self)
     |      Write out any data in the write buffer.  This may do nothing if write
     |      buffering is not turned on.
     |
     |  read(self, size=None)
     |      Read at most ``size`` bytes from the file (less if we hit the end of
     |      the file first).  If the ``size`` argument is negative or omitted,
     |      read all the remaining data in the file.
     |
     |      .. note::
     |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
     |          ``self._flags``), because SSH treats all files as binary, since we
     |          have no idea what encoding the file is in, or even if the file is
     |          text data.
     |
     |      :param int size: maximum number of bytes to read
     |      :returns:
     |          data read from the file (as bytes), or an empty string if EOF was
     |          encountered immediately
     |
     |  readable(self)
     |      Check if the file can be read from.
     |
     |      :returns:
     |          `True` if the file can be read from. If `False`, `read` will raise
     |          an exception.
     |
     |  readinto(self, buff)
     |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
     |      number of bytes read.
     |
     |      :returns:
     |          The number of bytes read.
     |
     |  readline(self, size=None)
     |      Read one entire line from the file.  A trailing newline character is
     |      kept in the string (but may be absent when a file ends with an
     |      incomplete line).  If the size argument is present and non-negative, it
     |      is a maximum byte count (including the trailing newline) and an
     |      incomplete line may be returned.  An empty string is returned only when
     |      EOF is encountered immediately.
     |
     |      .. note::
     |          Unlike stdio's ``fgets``, the returned string contains null
     |          characters (``'\0'``) if they occurred in the input.
     |
     |      :param int size: maximum length of returned string.
     |      :returns:
     |          next line of the file, or an empty string if the end of the
     |          file has been reached.
     |
     |          If the file was opened in binary (``'b'``) mode: bytes are returned
     |          Else: the encoding of the file is assumed to be UTF-8 and character
     |          strings (`str`) are returned
     |
     |  readlines(self, sizehint=None)
     |      Read all remaining lines using `readline` and return them as a list.
     |      If the optional ``sizehint`` argument is present, instead of reading up
     |      to EOF, whole lines totalling approximately sizehint bytes (possibly
     |      after rounding up to an internal buffer size) are read.
     |
     |      :param int sizehint: desired maximum number of bytes to read.
     |      :returns: list of lines read from the file.
     |
     |  seek(self, offset, whence=0)
     |      Set the file's current position, like stdio's ``fseek``.  Not all file
     |      objects support seeking.
     |
     |      .. note::
     |          If a file is opened in append mode (``'a'`` or ``'a+'``), any seek
     |          operations will be undone at the next write (as the file position
     |          will move back to the end of the file).
     |
     |      :param int offset:
     |          position to move to within the file, relative to ``whence``.
     |      :param int whence:
     |          type of movement: 0 = absolute; 1 = relative to the current
     |          position; 2 = relative to the end of the file.
     |
     |      :raises: ``IOError`` -- if the file doesn't support random access.
     |
     |  seekable(self)
     |      Check if the file supports random access.
     |
     |      :returns:
     |          `True` if the file supports random access. If `False`, `seek` will
     |          raise an exception.
     |
     |  tell(self)
     |      Return the file's current position.  This may not be accurate or
     |      useful if the underlying file doesn't support random access, or was
     |      opened in append mode.
     |
     |      :returns: file position (`number <int>` of bytes).
     |
     |  writable(self)
     |      Check if the file can be written to.
     |
     |      :returns:
     |          `True` if the file can be written to. If `False`, `write` will
     |          raise an exception.
     |
     |  write(self, data)
     |      Write data to the file.  If write buffering is on (``bufsize`` was
     |      specified and non-zero), some or all of the data may not actually be
     |      written yet.  (Use `flush` or `close` to force buffered data to be
     |      written out.)
     |
     |      :param data: ``str``/``bytes`` data to write
     |
     |  writelines(self, sequence)
     |      Write a sequence of strings to the file.  The sequence can be any
     |      iterable object producing strings, typically a list of strings.  (The
     |      name is intended to match `readlines`; `writelines` does not add line
     |      separators.)
     |
     |      :param sequence: an iterable sequence of strings.
     |
     |  xreadlines(self)
     |      Identical to ``iter(f)``.  This is a deprecated file interface that
     |      predates Python iterator support.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  FLAG_APPEND = 4
     |
     |  FLAG_BINARY = 16
     |
     |  FLAG_BUFFERED = 32
     |
     |  FLAG_LINE_BUFFERED = 64
     |
     |  FLAG_READ = 1
     |
     |  FLAG_UNIVERSAL_NEWLINE = 128
     |
     |  FLAG_WRITE = 2
     |
     |  SEEK_CUR = 1
     |
     |  SEEK_END = 2
     |
     |  SEEK_SET = 0
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

DATA
    cr_byte = b'\r'
    cr_byte_value = 13
    crlf = b'\r\n'
    linefeed_byte = b'\n'
    linefeed_byte_value = 10

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\file.py

paramiko.hostkeys
Python Library Documentation: module paramiko.hostkeys in paramiko

NAME
    paramiko.hostkeys

DESCRIPTION
    # Copyright (C) 2006-2007  Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    builtins.Exception(builtins.BaseException)
        InvalidHostKey
    builtins.object
        HostKeyEntry
    collections.abc.MutableMapping(collections.abc.Mapping)
        HostKeys

    class HostKeyEntry(builtins.object)
     |  HostKeyEntry(hostnames=None, key=None)
     |
     |  Representation of a line in an OpenSSH-style "known hosts" file.
     |
     |  Methods defined here:
     |
     |  __init__(self, hostnames=None, key=None)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  to_line(self)
     |      Returns a string in OpenSSH known_hosts file format, or None if
     |      the object is not in a valid state.  A trailing newline is
     |      included.
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_line(line, lineno=None)
     |      Parses the given line of text to find the names for the host,
     |      the type of key, and the key data. The line is expected to be in the
     |      format used by the OpenSSH known_hosts file. Fields are separated by a
     |      single space or tab.
     |
     |      Lines are expected to not have leading or trailing whitespace.
     |      We don't bother to check for comments or empty lines.  All of
     |      that should be taken care of before sending the line to us.
     |
     |      :param str line: a line from an OpenSSH known_hosts file
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class HostKeys(collections.abc.MutableMapping)
     |  HostKeys(filename=None)
     |
     |  Representation of an OpenSSH-style "known hosts" file.  Host keys can be
     |  read from one or more files, and then individual hosts can be looked up to
     |  verify server keys during SSH negotiation.
     |
     |  A `.HostKeys` object can be treated like a dict; any dict lookup is
     |  equivalent to calling `lookup`.
     |
     |  .. versionadded:: 1.5.3
     |
     |  Method resolution order:
     |      HostKeys
     |      collections.abc.MutableMapping
     |      collections.abc.Mapping
     |      collections.abc.Collection
     |      collections.abc.Sized
     |      collections.abc.Iterable
     |      collections.abc.Container
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __delitem__(self, key)
     |
     |  __getitem__(self, key)
     |
     |  __init__(self, filename=None)
     |      Create a new HostKeys object, optionally loading keys from an OpenSSH
     |      style host-key file.
     |
     |      :param str filename: filename to load host keys from, or ``None``
     |
     |  __iter__(self)
     |
     |  __len__(self)
     |
     |  __setitem__(self, hostname, entry)
     |
     |  add(self, hostname, keytype, key)
     |      Add a host key entry to the table.  Any existing entry for a
     |      ``(hostname, keytype)`` pair will be replaced.
     |
     |      :param str hostname: the hostname (or IP) to add
     |      :param str keytype: key type (in ``"ssh-<type>"`` format)
     |      :param .PKey key: the key to add
     |
     |  check(self, hostname, key)
     |      Return True if the given key is associated with the given hostname
     |      in this dictionary.
     |
     |      :param str hostname: hostname (or IP) of the SSH server
     |      :param .PKey key: the key to check
     |      :return:
     |          ``True`` if the key is associated with the hostname; else ``False``
     |
     |  clear(self)
     |      Remove all host keys from the dictionary.
     |
     |  keys(self)
     |      D.keys() -> a set-like object providing a view on D's keys
     |
     |  load(self, filename)
     |      Read a file of known SSH host keys, in the format used by OpenSSH.
     |      This type of file unfortunately doesn't exist on Windows, but on
     |      posix, it will usually be stored in
     |      ``os.path.expanduser("~/.ssh/known_hosts")``.
     |
     |      If this method is called multiple times, the host keys are merged,
     |      not cleared.  So multiple calls to `load` will just call `add`,
     |      replacing any existing entries and adding new ones.
     |
     |      :param str filename: name of the file to read host keys from
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |
     |  lookup(self, hostname)
     |      Find a hostkey entry for a given hostname or IP.  If no entry is found,
     |      ``None`` is returned.  Otherwise a dictionary of keytype to key is
     |      returned.
     |
     |      :param str hostname: the hostname (or IP) to lookup
     |      :return: dict of `str` -> `.PKey` keys associated with this host
     |          (or ``None``)
     |
     |  save(self, filename)
     |      Save host keys into a file, in the format used by OpenSSH.  The order
     |      of keys in the file will be preserved when possible (if these keys were
     |      loaded from a file originally).  The single exception is that combined
     |      lines will be split into individual key lines, which is arguably a bug.
     |
     |      :param str filename: name of the file to write
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |
     |      .. versionadded:: 1.6.1
     |
     |  values(self)
     |      D.values() -> an object providing a view on D's values
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  hash_host(hostname, salt=None)
     |      Return a "hashed" form of the hostname, as used by OpenSSH when storing
     |      hashed hostnames in the known_hosts file.
     |
     |      :param str hostname: the hostname to hash
     |      :param str salt: optional salt to use when hashing
     |          (must be 20 bytes long)
     |      :return: the hashed hostname as a `str`
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  __abstractmethods__ = frozenset()
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from collections.abc.MutableMapping:
     |
     |  pop(self, key, default=<object object at 0x000002919ACF81F0>)
     |      D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
     |      If key is not found, d is returned if given, otherwise KeyError is raised.
     |
     |  popitem(self)
     |      D.popitem() -> (k, v), remove and return some (key, value) pair
     |      as a 2-tuple; but raise KeyError if D is empty.
     |
     |  setdefault(self, key, default=None)
     |      D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
     |
     |  update(self, other=(), /, **kwds)
     |      D.update([E, ]**F) -> None.  Update D from mapping/iterable E and F.
     |      If E present and has a .keys() method, does:     for k in E: D[k] = E[k]
     |      If E present and lacks .keys() method, does:     for (k, v) in E: D[k] = v
     |      In either case, this is followed by: for k, v in F.items(): D[k] = v
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from collections.abc.Mapping:
     |
     |  __contains__(self, key)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  get(self, key, default=None)
     |      D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None.
     |
     |  items(self)
     |      D.items() -> a set-like object providing a view on D's items
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from collections.abc.Mapping:
     |
     |  __hash__ = None
     |
     |  __reversed__ = None
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from collections.abc.Collection:
     |
     |  __subclasshook__(C)
     |      Abstract classes can override this to customize issubclass().
     |
     |      This is invoked early on by abc.ABCMeta.__subclasscheck__().
     |      It should return True, False or NotImplemented.  If it returns
     |      NotImplemented, the normal algorithm is used.  Otherwise, it
     |      overrides the normal algorithm (and the outcome is cached).
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from collections.abc.Iterable:
     |
     |  __class_getitem__ = GenericAlias(...)
     |      Represent a PEP 585 generic type
     |
     |      E.g. for t = list[int], t.__origin__ is list and t.__args__ is (int,).

    class InvalidHostKey(builtins.Exception)
     |  InvalidHostKey(line, exc)
     |
     |  Method resolution order:
     |      InvalidHostKey
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, line, exc)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

FUNCTIONS
    sha1 = openssl_sha1(string=b'', *, usedforsecurity=True)
        Returns a sha1 hash object; optionally initialized with a string

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\hostkeys.py

paramiko.io_sleep
Python Library Documentation: float object

class float(object)
 |  float(x=0, /)
 |
 |  Convert a string or number to a floating-point number, if possible.
 |
 |  Methods defined here:
 |
 |  __abs__(self, /)
 |      abs(self)
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __bool__(self, /)
 |      True if self else False
 |
 |  __ceil__(self, /)
 |      Return the ceiling as an Integral.
 |
 |  __divmod__(self, value, /)
 |      Return divmod(self, value).
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __float__(self, /)
 |      float(self)
 |
 |  __floor__(self, /)
 |      Return the floor as an Integral.
 |
 |  __floordiv__(self, value, /)
 |      Return self//value.
 |
 |  __format__(self, format_spec, /)
 |      Formats the float according to format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getnewargs__(self, /)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __hash__(self, /)
 |      Return hash(self).
 |
 |  __int__(self, /)
 |      int(self)
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mod__(self, value, /)
 |      Return self%value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __neg__(self, /)
 |      -self
 |
 |  __pos__(self, /)
 |      +self
 |
 |  __pow__(self, value, mod=None, /)
 |      Return pow(self, value, mod).
 |
 |  __radd__(self, value, /)
 |      Return value+self.
 |
 |  __rdivmod__(self, value, /)
 |      Return divmod(value, self).
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __rfloordiv__(self, value, /)
 |      Return value//self.
 |
 |  __rmod__(self, value, /)
 |      Return value%self.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __round__(self, ndigits=None, /)
 |      Return the Integral closest to x, rounding half toward even.
 |
 |      When an argument is passed, work like built-in round(x, ndigits).
 |
 |  __rpow__(self, value, mod=None, /)
 |      Return pow(value, self, mod).
 |
 |  __rsub__(self, value, /)
 |      Return value-self.
 |
 |  __rtruediv__(self, value, /)
 |      Return value/self.
 |
 |  __sub__(self, value, /)
 |      Return self-value.
 |
 |  __truediv__(self, value, /)
 |      Return self/value.
 |
 |  __trunc__(self, /)
 |      Return the Integral closest to x between 0 and x.
 |
 |  as_integer_ratio(self, /)
 |      Return a pair of integers, whose ratio is exactly equal to the original float.
 |
 |      The ratio is in lowest terms and has a positive denominator.  Raise
 |      OverflowError on infinities and a ValueError on NaNs.
 |
 |      >>> (10.0).as_integer_ratio()
 |      (10, 1)
 |      >>> (0.0).as_integer_ratio()
 |      (0, 1)
 |      >>> (-.25).as_integer_ratio()
 |      (-1, 4)
 |
 |  conjugate(self, /)
 |      Return self, the complex conjugate of any float.
 |
 |  hex(self, /)
 |      Return a hexadecimal representation of a floating-point number.
 |
 |      >>> (-0.1).hex()
 |      '-0x1.999999999999ap-4'
 |      >>> 3.14159.hex()
 |      '0x1.921f9f01b866ep+1'
 |
 |  is_integer(self, /)
 |      Return True if the float is an integer.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  __getformat__(typestr, /)
 |      You probably don't want to use this function.
 |
 |        typestr
 |          Must be 'double' or 'float'.
 |
 |      It exists mainly to be used in Python's test suite.
 |
 |      This function returns whichever of 'unknown', 'IEEE, big-endian' or 'IEEE,
 |      little-endian' best describes the format of floating-point numbers used by the
 |      C type named by typestr.
 |
 |  fromhex(string, /)
 |      Create a floating-point number from a hexadecimal string.
 |
 |      >>> float.fromhex('0x1.ffffp10')
 |      2047.984375
 |      >>> float.fromhex('-0x1p-1074')
 |      -5e-324
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  imag
 |      the imaginary part of a complex number
 |
 |  real
 |      the real part of a complex number
paramiko.kex_curve25519
Python Library Documentation: module paramiko.kex_curve25519 in paramiko

NAME
    paramiko.kex_curve25519

CLASSES
    builtins.object
        KexCurve25519

    class KexCurve25519(builtins.object)
     |  KexCurve25519(transport)
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  is_available()
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha256(string=b'', *, usedforsecurity=True)
     |      Returns a sha256 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

DATA
    c_MSG_KEXECDH_INIT = b'\x1e'
    c_MSG_KEXECDH_REPLY = b'\x1f'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\kex_curve25519.py

paramiko.kex_ecdh_nist
Python Library Documentation: module paramiko.kex_ecdh_nist in paramiko

NAME
    paramiko.kex_ecdh_nist

DESCRIPTION
    Ephemeral Elliptic Curve Diffie-Hellman (ECDH) key exchange
    RFC 5656, Section 4

CLASSES
    builtins.object
        KexNistp256
            KexNistp384
            KexNistp521

    class KexNistp256(builtins.object)
     |  KexNistp256(transport)
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha256(string=b'', *, usedforsecurity=True)
     |      Returns a sha256 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  curve = <cryptography.hazmat.primitives.asymmetric.ec.SECP256R1 object...
     |
     |  name = 'ecdh-sha2-nistp256'

    class KexNistp384(KexNistp256)
     |  KexNistp384(transport)
     |
     |  Method resolution order:
     |      KexNistp384
     |      KexNistp256
     |      builtins.object
     |
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha384(string=b'', *, usedforsecurity=True)
     |      Returns a sha384 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  curve = <cryptography.hazmat.primitives.asymmetric.ec.SECP384R1 object...
     |
     |  name = 'ecdh-sha2-nistp384'
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from KexNistp256:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from KexNistp256:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class KexNistp521(KexNistp256)
     |  KexNistp521(transport)
     |
     |  Method resolution order:
     |      KexNistp521
     |      KexNistp256
     |      builtins.object
     |
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha512(string=b'', *, usedforsecurity=True)
     |      Returns a sha512 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  curve = <cryptography.hazmat.primitives.asymmetric.ec.SECP521R1 object...
     |
     |  name = 'ecdh-sha2-nistp521'
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from KexNistp256:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from KexNistp256:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    hexlify(...)
        Hexadecimal representation of binary data.

          sep
            An optional single character or byte to separate hex bytes.
          bytes_per_sep
            How many bytes between separators.  Positive values count from the
            right, negative values count from the left.

        The return value is a bytes object.  This function is also
        available as "b2a_hex()".

    sha256 = openssl_sha256(string=b'', *, usedforsecurity=True)
        Returns a sha256 hash object; optionally initialized with a string

    sha384 = openssl_sha384(string=b'', *, usedforsecurity=True)
        Returns a sha384 hash object; optionally initialized with a string

    sha512 = openssl_sha512(string=b'', *, usedforsecurity=True)
        Returns a sha512 hash object; optionally initialized with a string

DATA
    c_MSG_KEXECDH_INIT = b'\x1e'
    c_MSG_KEXECDH_REPLY = b'\x1f'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\kex_ecdh_nist.py

paramiko.kex_gex
Python Library Documentation: module paramiko.kex_gex in paramiko

NAME
    paramiko.kex_gex

DESCRIPTION
    Variant on the (now deprecated/removed) ``KexGroup1`` where the prime "p" and
    generator "g" are provided by the server.  A bit more work is required on the
    client side, and a **lot** more on the server side.

CLASSES
    builtins.object
        KexGexSHA256

    class KexGexSHA256(builtins.object)
     |  KexGexSHA256(transport)
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self, _test_old_style=False)
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha256(string=b'', *, usedforsecurity=True)
     |      Returns a sha256 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  max_bits = 8192
     |
     |  min_bits = 2048
     |
     |  name = 'diffie-hellman-group-exchange-sha256'
     |
     |  preferred_bits = 2048

FUNCTIONS
    sha256 = openssl_sha256(string=b'', *, usedforsecurity=True)
        Returns a sha256 hash object; optionally initialized with a string

DATA
    DEBUG = 10
    c_MSG_KEXDH_GEX_GROUP = b'\x1f'
    c_MSG_KEXDH_GEX_INIT = b' '
    c_MSG_KEXDH_GEX_REPLY = b'!'
    c_MSG_KEXDH_GEX_REQUEST = b'"'
    c_MSG_KEXDH_GEX_REQUEST_OLD = b'\x1e'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\kex_gex.py

paramiko.kex_group14
Python Library Documentation: module paramiko.kex_group14 in paramiko

NAME
    paramiko.kex_group14

DESCRIPTION
    Standard SSH key exchange ("kex" if you wanna sound cool).  Diffie-Hellman of
    1024 bit key halves, using a known "p" prime and "g" generator.

CLASSES
    builtins.object
        KexGroup14SHA256

    class KexGroup14SHA256(builtins.object)
     |  KexGroup14SHA256(transport)
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha256(string=b'', *, usedforsecurity=True)
     |      Returns a sha256 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  G = 2
     |
     |  P = 323170060713110073...1852507045361090559
     |
     |  name = 'diffie-hellman-group14-sha256'

FUNCTIONS
    sha256 = openssl_sha256(string=b'', *, usedforsecurity=True)
        Returns a sha256 hash object; optionally initialized with a string

DATA
    b0000000000000000 = b'\x00\x00\x00\x00\x00\x00\x00\x00'
    b7fffffffffffffff = b'\x7f\xff\xff\xff\xff\xff\xff\xff'
    c_MSG_KEXDH_INIT = b'\x1e'
    c_MSG_KEXDH_REPLY = b'\x1f'
    max_byte = b'\xff'
    zero_byte = b'\x00'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\kex_group14.py

paramiko.kex_group16
Python Library Documentation: module paramiko.kex_group16 in paramiko

NAME
    paramiko.kex_group16

DESCRIPTION
    Standard SSH key exchange ("kex" if you wanna sound cool).  Diffie-Hellman of
    4096 bit key halves, using a known "p" prime and "g" generator.

CLASSES
    paramiko.kex_group14.KexGroup14SHA256(builtins.object)
        KexGroup16SHA512

    class KexGroup16SHA512(paramiko.kex_group14.KexGroup14SHA256)
     |  KexGroup16SHA512(transport)
     |
     |  Method resolution order:
     |      KexGroup16SHA512
     |      paramiko.kex_group14.KexGroup14SHA256
     |      builtins.object
     |
     |  Static methods defined here:
     |
     |  hash_algo = openssl_sha512(string=b'', *, usedforsecurity=True)
     |      Returns a sha512 hash object; optionally initialized with a string
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  G = 2
     |
     |  P = 104438888141315250...0045385534758453247
     |
     |  name = 'diffie-hellman-group16-sha512'
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.kex_group14.KexGroup14SHA256:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  parse_next(self, ptype, m)
     |
     |  start_kex(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.kex_group14.KexGroup14SHA256:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    sha512 = openssl_sha512(string=b'', *, usedforsecurity=True)
        Returns a sha512 hash object; optionally initialized with a string

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\kex_group16.py

paramiko.key_classes
Python Library Documentation: list object

class list(object)
 |  list(iterable=(), /)
 |
 |  Built-in mutable sequence.
 |
 |  If no argument is given, the constructor creates a new empty list.
 |  The argument must be an iterable if specified.
 |
 |  Methods defined here:
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __contains__(self, key, /)
 |      Return bool(key in self).
 |
 |  __delitem__(self, key, /)
 |      Delete self[key].
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribute__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getitem__(self, index, /)
 |      Return self[index].
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
 |  __iadd__(self, value, /)
 |      Implement self+=value.
 |
 |  __imul__(self, value, /)
 |      Implement self*=value.
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |
 |  __iter__(self, /)
 |      Implement iter(self).
 |
 |  __le__(self, value, /)
 |      Return self<=value.
 |
 |  __len__(self, /)
 |      Return len(self).
 |
 |  __lt__(self, value, /)
 |      Return self<value.
 |
 |  __mul__(self, value, /)
 |      Return self*value.
 |
 |  __ne__(self, value, /)
 |      Return self!=value.
 |
 |  __repr__(self, /)
 |      Return repr(self).
 |
 |  __reversed__(self, /)
 |      Return a reverse iterator over the list.
 |
 |  __rmul__(self, value, /)
 |      Return value*self.
 |
 |  __setitem__(self, key, value, /)
 |      Set self[key] to value.
 |
 |  __sizeof__(self, /)
 |      Return the size of the list in memory, in bytes.
 |
 |  append(self, object, /)
 |      Append object to the end of the list.
 |
 |  clear(self, /)
 |      Remove all items from list.
 |
 |  copy(self, /)
 |      Return a shallow copy of the list.
 |
 |  count(self, value, /)
 |      Return number of occurrences of value.
 |
 |  extend(self, iterable, /)
 |      Extend list by appending elements from the iterable.
 |
 |  index(self, value, start=0, stop=9223372036854775807, /)
 |      Return first index of value.
 |
 |      Raises ValueError if the value is not present.
 |
 |  insert(self, index, object, /)
 |      Insert object before index.
 |
 |  pop(self, index=-1, /)
 |      Remove and return item at index (default last).
 |
 |      Raises IndexError if list is empty or index is out of range.
 |
 |  remove(self, value, /)
 |      Remove first occurrence of value.
 |
 |      Raises ValueError if the value is not present.
 |
 |  reverse(self, /)
 |      Reverse *IN PLACE*.
 |
 |  sort(self, /, *, key=None, reverse=False)
 |      Sort the list in ascending order and return None.
 |
 |      The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
 |      order of two equal elements is maintained).
 |
 |      If a key function is given, apply it once to each list item and sort them,
 |      ascending or descending, according to their function values.
 |
 |      The reverse flag can be set to sort in descending order.
 |
 |  ----------------------------------------------------------------------
 |  Class methods defined here:
 |
 |  __class_getitem__(...)
 |      See PEP 585
 |
 |  ----------------------------------------------------------------------
 |  Static methods defined here:
 |
 |  __new__(*args, **kwargs)
 |      Create and return a new object.  See help(type) for accurate signature.
 |
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |
 |  __hash__ = None
paramiko.message
Python Library Documentation: module paramiko.message in paramiko

NAME
    paramiko.message - Implementation of an SSH2 "message".

CLASSES
    builtins.object
        Message

    class Message(builtins.object)
     |  Message(content=None)
     |
     |  An SSH2 message is a stream of bytes that encodes some combination of
     |  strings, integers, bools, and infinite-precision integers.  This class
     |  builds or breaks down such a byte stream.
     |
     |  Normally you don't need to deal with anything this low-level, but it's
     |  exposed for people implementing custom extensions, or features that
     |  paramiko doesn't support yet.
     |
     |  Methods defined here:
     |
     |  __bytes__(self)
     |
     |  __init__(self, content=None)
     |      Create a new SSH2 message.
     |
     |      :param bytes content:
     |          the byte stream to use as the message content (passed in only when
     |          decomposing a message).
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  add(self, *seq)
     |      Add a sequence of items to the stream.  The values are encoded based
     |      on their type: bytes, str, int, bool, or list.
     |
     |      .. warning::
     |          Longs are encoded non-deterministically.  Don't use this method.
     |
     |      :param seq: the sequence of items
     |
     |  add_adaptive_int(self, n)
     |      Add an integer to the stream.
     |
     |      :param int n: integer to add
     |
     |  add_boolean(self, b)
     |      Add a boolean value to the stream.
     |
     |      :param bool b: boolean value to add
     |
     |  add_byte(self, b)
     |      Write a single byte to the stream, without any formatting.
     |
     |      :param bytes b: byte to add
     |
     |  add_bytes(self, b)
     |      Write bytes to the stream, without any formatting.
     |
     |      :param bytes b: bytes to add
     |
     |  add_int(self, n)
     |      Add an integer to the stream.
     |
     |      :param int n: integer to add
     |
     |  add_int64(self, n)
     |      Add a 64-bit int to the stream.
     |
     |      :param int n: long int to add
     |
     |  add_list(self, l)
     |      Add a list of strings to the stream.  They are encoded identically to
     |      a single string of values separated by commas.  (Yes, really, that's
     |      how SSH2 does it.)
     |
     |      :param l: list of strings to add
     |
     |  add_mpint(self, z)
     |      Add a long int to the stream, encoded as an infinite-precision
     |      integer.  This method only works on positive numbers.
     |
     |      :param int z: long int to add
     |
     |  add_string(self, s)
     |      Add a bytestring to the stream.
     |
     |      :param byte s: bytestring to add
     |
     |  asbytes(self)
     |      Return the byte stream content of this Message, as a `bytes`.
     |
     |  get_adaptive_int(self)
     |      Fetch an int from the stream.
     |
     |      :return: a 32-bit unsigned `int`.
     |
     |  get_binary(self)
     |      Alias for `get_string` (obtains a bytestring).
     |
     |  get_boolean(self)
     |      Fetch a boolean from the stream.
     |
     |  get_byte(self)
     |      Return the next byte of the message, without decomposing it.  This
     |      is equivalent to `get_bytes(1) <get_bytes>`.
     |
     |      :return:
     |          the next (`bytes`) byte of the message, or ``b''`` if there
     |          aren't any bytes remaining.
     |
     |  get_bytes(self, n)
     |      Return the next ``n`` bytes of the message, without decomposing into an
     |      int, decoded string, etc.  Just the raw bytes are returned. Returns a
     |      string of ``n`` zero bytes if there weren't ``n`` bytes remaining in
     |      the message.
     |
     |  get_int(self)
     |      Fetch an int from the stream.
     |
     |  get_int64(self)
     |      Fetch a 64-bit int from the stream.
     |
     |      :return: a 64-bit unsigned integer (`int`).
     |
     |  get_list(self)
     |      Fetch a list of `strings <str>` from the stream.
     |
     |      These are trivially encoded as comma-separated values in a string.
     |
     |  get_mpint(self)
     |      Fetch a long int (mpint) from the stream.
     |
     |      :return: an arbitrary-length integer (`int`).
     |
     |  get_remainder(self)
     |      Return the `bytes` of this message that haven't already been parsed and
     |      returned.
     |
     |  get_so_far(self)
     |      Returns the `bytes` of this message that have been parsed and
     |      returned. The string passed into a message's constructor can be
     |      regenerated by concatenating ``get_so_far`` and `get_remainder`.
     |
     |  get_string(self)
     |      Fetch a "string" from the stream.  This will actually be a `bytes`
     |      object, and may contain unprintable characters.  (It's not unheard of
     |      for a string to contain another byte-stream message.)
     |
     |  get_text(self)
     |      Fetch a Unicode string from the stream.
     |
     |      This currently operates by attempting to encode the next "string" as
     |      ``utf-8``.
     |
     |  rewind(self)
     |      Rewind the message to the beginning as if no items had been parsed
     |      out of it yet.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  big_int = 4278190080

DATA
    max_byte = b'\xff'
    one_byte = b'\x01'
    zero_byte = b'\x00'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\message.py

paramiko.metadata
Python Library Documentation: package importlib.metadata in importlib

NAME
    importlib.metadata

MODULE REFERENCE
    https://docs.python.org/3.12/library/importlib.metadata.html

    The following documentation is automatically generated from the Python
    source files.  It may be incomplete, incorrect or include features that
    are considered implementation detail and may vary between Python
    implementations.  When in doubt, consult the module reference at the
    location listed above.

PACKAGE CONTENTS
    _adapters
    _collections
    _functools
    _itertools
    _meta
    _text

CLASSES
    builtins.ModuleNotFoundError(builtins.ImportError)
        PackageNotFoundError
    importlib.abc.MetaPathFinder(builtins.object)
        DistributionFinder
    DeprecatedNonAbstract(builtins.object)
        Distribution
    typing.Protocol(typing.Generic)
        importlib.metadata._meta.PackageMetadata

    class Distribution(DeprecatedNonAbstract)
     |  Distribution(*args, **kwargs)
     |
     |  A Python distribution package.
     |
     |  Method resolution order:
     |      Distribution
     |      DeprecatedNonAbstract
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  locate_file(self, path)
     |      Given a path to a file in this distribution, return a path
     |      to it.
     |
     |  read_text(self, filename) -> Optional[str]
     |      Attempt to load metadata file given by the name.
     |
     |      :param filename: The name of the file in the distribution info.
     |      :return: The text if found, otherwise None.
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  discover(**kwargs)
     |      Return an iterable of Distribution objects for all packages.
     |
     |      Pass a ``context`` or pass keyword arguments for constructing
     |      a context.
     |
     |      :context: A ``DistributionFinder.Context`` object.
     |      :return: Iterable of Distribution objects for all packages.
     |
     |  from_name(name: str)
     |      Return the Distribution for the given package name.
     |
     |      :param name: The name of the distribution package to search for.
     |      :return: The Distribution instance (or subclass thereof) for the named
     |          package, if found.
     |      :raises PackageNotFoundError: When the named package's distribution
     |          metadata cannot be found.
     |      :raises ValueError: When an invalid value is supplied for name.
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  at(path)
     |      Return a Distribution for the indicated metadata path
     |
     |      :param path: a string or path-like object
     |      :return: a concrete Distribution instance for the path
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  entry_points
     |
     |  files
     |      Files in this distribution.
     |
     |      :return: List of PackagePath for this distribution or None
     |
     |      Result is `None` if the metadata file that enumerates files
     |      (i.e. RECORD for dist-info, or installed-files.txt or
     |      SOURCES.txt for egg-info) is missing.
     |      Result may be empty if the metadata exists but is empty.
     |
     |  metadata
     |      Return the parsed metadata for this Distribution.
     |
     |      The returned object will have keys that name the various bits of
     |      metadata.  See PEP 566 for details.
     |
     |  name
     |      Return the 'Name' metadata for the distribution package.
     |
     |  requires
     |      Generated requirements specified for this Distribution
     |
     |  version
     |      Return the 'Version' metadata for the distribution package.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from DeprecatedNonAbstract:
     |
     |  __new__(cls, *args, **kwargs)
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from DeprecatedNonAbstract:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class DistributionFinder(importlib.abc.MetaPathFinder)
     |  A MetaPathFinder capable of discovering installed distributions.
     |
     |  Method resolution order:
     |      DistributionFinder
     |      importlib.abc.MetaPathFinder
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  find_distributions(self, context=<importlib.metadata.DistributionFinder.Context object at 0x000002919BB9D250>)
     |      Find distributions.
     |
     |      Return an iterable of all Distribution instances capable of
     |      loading the metadata for packages matching the ``context``,
     |      a DistributionFinder.Context instance.
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  Context = <class 'importlib.metadata.DistributionFinder.Context'>
     |      Keyword arguments presented by the caller to
     |      ``distributions()`` or ``Distribution.discover()``
     |      to narrow the scope of a search for distributions
     |      in all DistributionFinders.
     |
     |      Each DistributionFinder may expect any parameters
     |      and should attempt to honor the canonical
     |      parameters defined below when appropriate.
     |
     |
     |  __abstractmethods__ = frozenset({'find_distributions'})
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from importlib.abc.MetaPathFinder:
     |
     |  invalidate_caches(self)
     |      An optional method for clearing the finder's cache, if any.
     |      This method is used by importlib.invalidate_caches().
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from importlib.abc.MetaPathFinder:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class PackageMetadata(typing.Protocol)
     |  PackageMetadata(*args, **kwargs)
     |
     |  Method resolution order:
     |      PackageMetadata
     |      typing.Protocol
     |      typing.Generic
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __contains__(self, item: str) -> bool
     |
     |  __getitem__(self, key: str) -> str
     |
     |  __init__ = _no_init_or_replace_init(self, *args, **kwargs) from typing
     |
     |  __iter__(self) -> Iterator[str]
     |
     |  __len__(self) -> int
     |
     |  get = _overload_dummy(*args, **kwds) from typing
     |      Helper for @overload to raise when called.
     |
     |  get_all = _overload_dummy(*args, **kwds) from typing
     |      Helper for @overload to raise when called.
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  __subclasshook__ = _proto_hook(other) from typing
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  json
     |      A JSON-compatible form of the metadata.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  __abstractmethods__ = frozenset()
     |
     |  __annotations__ = {}
     |
     |  __parameters__ = ()
     |
     |  __protocol_attrs__ = {'__contains__', '__getitem__', '__iter__', '__le...
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from typing.Protocol:
     |
     |  __init_subclass__(*args, **kwargs)
     |      Function to initialize subclasses.
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from typing.Generic:
     |
     |  __class_getitem__(...)
     |      Parameterizes a generic class.
     |
     |      At least, parameterizing a generic class is the *main* thing this
     |      method does. For example, for some generic class `Foo`, this is called
     |      when we do `Foo[int]` - there, with `cls=Foo` and `params=int`.
     |
     |      However, note that this method is also called when defining generic
     |      classes in the first place with `class Foo[T]: ...`.

    class PackageNotFoundError(builtins.ModuleNotFoundError)
     |  The package was not found.
     |
     |  Method resolution order:
     |      PackageNotFoundError
     |      builtins.ModuleNotFoundError
     |      builtins.ImportError
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  name
     |      module name
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.ModuleNotFoundError:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.ImportError:
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.ImportError:
     |
     |  msg
     |      exception message
     |
     |  name_from
     |      name imported from module
     |
     |  path
     |      module path
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

FUNCTIONS
    distribution(distribution_name)
        Get the ``Distribution`` instance for the named package.

        :param distribution_name: The name of the distribution package as a string.
        :return: A ``Distribution`` instance (or subclass thereof).

    distributions(**kwargs)
        Get all ``Distribution`` instances in the current environment.

        :return: An iterable of ``Distribution`` instances.

    entry_points(**params) -> importlib.metadata.EntryPoints
        Return EntryPoint objects for all installed packages.

        Pass selection parameters (group or name) to filter the
        result to entry points matching those properties (see
        EntryPoints.select()).

        :return: EntryPoints for all installed packages.

    files(distribution_name)
        Return a list of files for the named package.

        :param distribution_name: The name of the distribution package to query.
        :return: List of files composing the distribution.

    metadata(distribution_name) -> importlib.metadata._meta.PackageMetadata
        Get the metadata for the named package.

        :param distribution_name: The name of the distribution package to query.
        :return: A PackageMetadata containing the parsed metadata.

    packages_distributions() -> Mapping[str, List[str]]
        Return a mapping of top-level packages to their
        distributions.

        >>> import collections.abc
        >>> pkgs = packages_distributions()
        >>> all(isinstance(dist, collections.abc.Sequence) for dist in pkgs.values())
        True

    requires(distribution_name)
        Return a list of requirements for the named package.

        :return: An iterator of requirements, suitable for
            packaging.requirement.Requirement.

    version(distribution_name)
        Get the version string for the named package.

        :param distribution_name: The name of the distribution package to query.
        :return: The version string for the package as defined in the package's
            "Version" metadata key.

DATA
    __all__ = ['Distribution', 'DistributionFinder', 'PackageMetadata', 'P...

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\importlib\metadata\__init__.py

paramiko.packet
Python Library Documentation: module paramiko.packet in paramiko

NAME
    paramiko.packet - Packet handling

CLASSES
    builtins.Exception(builtins.BaseException)
        NeedRekeyException
    builtins.object
        Packetizer

    class NeedRekeyException(builtins.Exception)
     |  Exception indicating a rekey is needed.
     |
     |  Method resolution order:
     |      NeedRekeyException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class Packetizer(builtins.object)
     |  Packetizer(socket)
     |
     |  Implementation of the base SSH packet protocol.
     |
     |  Methods defined here:
     |
     |  __init__(self, socket)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  close(self)
     |
     |  complete_handshake(self)
     |      Tells `Packetizer` that the handshake has completed.
     |
     |  get_hexdump(self)
     |
     |  get_mac_size_in(self)
     |
     |  get_mac_size_out(self)
     |
     |  handshake_timed_out(self)
     |      Checks if the handshake has timed out.
     |
     |      If `start_handshake` wasn't called before the call to this function,
     |      the return value will always be `False`. If the handshake completed
     |      before a timeout was reached, the return value will be `False`
     |
     |      :return: handshake time out status, as a `bool`
     |
     |  need_rekey(self)
     |      Returns ``True`` if a new set of keys needs to be negotiated.  This
     |      will be triggered during a packet read or write, so it should be
     |      checked after every read or write, or at least after every few.
     |
     |  read_all(self, n, check_rekey=False)
     |      Read as close to N bytes as possible, blocking as long as necessary.
     |
     |      :param int n: number of bytes to read
     |      :return: the data read, as a `str`
     |
     |      :raises:
     |          ``EOFError`` -- if the socket was closed before all the bytes could
     |          be read
     |
     |  read_message(self)
     |      Only one thread should ever be in this function (no other locking is
     |      done).
     |
     |      :raises: `.SSHException` -- if the packet is mangled
     |      :raises: `.NeedRekeyException` -- if the transport should rekey
     |
     |  read_timer(self)
     |
     |  readline(self, timeout)
     |      Read a line from the socket.  We assume no data is pending after the
     |      line, so it's okay to attempt large reads.
     |
     |  reset_seqno_in(self)
     |
     |  reset_seqno_out(self)
     |
     |  send_message(self, data)
     |      Write a block of data using the current cipher, as an SSH block.
     |
     |  set_hexdump(self, hexdump)
     |
     |  set_inbound_cipher(self, block_engine, block_size, mac_engine, mac_size, mac_key, etm=False, aead=False, iv_in=None)
     |      Switch inbound data cipher.
     |      :param etm: Set encrypt-then-mac from OpenSSH
     |
     |  set_inbound_compressor(self, compressor)
     |
     |  set_keepalive(self, interval, callback)
     |      Turn on/off the callback keepalive.  If ``interval`` seconds pass with
     |      no data read from or written to the socket, the callback will be
     |      executed and the timer will be reset.
     |
     |  set_log(self, log)
     |      Set the Python log object to use for logging.
     |
     |  set_outbound_cipher(self, block_engine, block_size, mac_engine, mac_size, mac_key, sdctr=False, etm=False, aead=False, iv_out=None)
     |      Switch outbound data cipher.
     |      :param etm: Set encrypt-then-mac from OpenSSH
     |
     |  set_outbound_compressor(self, compressor)
     |
     |  start_handshake(self, timeout)
     |      Tells `Packetizer` that the handshake process started.
     |      Starts a book keeping timer that can signal a timeout in the
     |      handshake process.
     |
     |      :param float timeout: amount of seconds to wait before timing out
     |
     |  write_all(self, out)
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  REKEY_BYTES = 536870912
     |
     |  REKEY_BYTES_OVERFLOW_MAX = 536870912
     |
     |  REKEY_PACKETS = 536870912
     |
     |  REKEY_PACKETS_OVERFLOW_MAX = 536870912

FUNCTIONS
    compute_hmac(key, message, digest_class)

    first_arg(e)

DATA
    DEBUG = 10
    MSG_NAMES = {1: 'disconnect', 2: 'ignore', 3: 'unimplemented', 4: 'deb...
    cr_byte_value = 13
    linefeed_byte = b'\n'
    xffffffff = 4294967295
    zero_byte = b'\x00'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\packet.py

paramiko.pipe
Python Library Documentation: module paramiko.pipe in paramiko

NAME
    paramiko.pipe

DESCRIPTION
    Abstraction of a one-way pipe where the read end can be used in
    `select.select`. Normally this is trivial, but Windows makes it nearly
    impossible.

    The pipe acts like an Event, which can be set or cleared. When set, the pipe
    will trigger as readable in `select <select.select>`.

CLASSES
    builtins.object
        OrPipe
        PosixPipe
        WindowsPipe

    class OrPipe(builtins.object)
     |  OrPipe(pipe)
     |
     |  Methods defined here:
     |
     |  __init__(self, pipe)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  clear(self)
     |
     |  set(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class PosixPipe(builtins.object)
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  clear(self)
     |
     |  close(self)
     |
     |  fileno(self)
     |
     |  set(self)
     |
     |  set_forever(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class WindowsPipe(builtins.object)
     |  On Windows, only an OS-level "WinSock" may be used in select(), but reads
     |  and writes must be to the actual socket object.
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  clear(self)
     |
     |  close(self)
     |
     |  fileno(self)
     |
     |  set(self)
     |
     |  set_forever(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    make_or_pipe(pipe)
        wraps a pipe into two pipe-like objects which are "or"d together to
        affect the real pipe. if either returned pipe is set, the wrapped pipe
        is set. when both are cleared, the wrapped pipe is cleared.

    make_pipe()

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\pipe.py

paramiko.pkey
Python Library Documentation: module paramiko.pkey in paramiko

NAME
    paramiko.pkey - Common API for all public keys.

CLASSES
    builtins.Exception(builtins.BaseException)
        UnknownKeyType
    builtins.object
        PKey
        PublicBlob
    builtins.tuple(builtins.object)
        FileFormat

    class FileFormat(builtins.tuple)
     |  FileFormat(format: cryptography.hazmat.primitives._serialization.PrivateFormat, encoding: cryptography.hazmat.primitives._serialization.Encoding)
     |
     |  FileFormat(format, encoding)
     |
     |  Method resolution order:
     |      FileFormat
     |      builtins.tuple
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __getnewargs__(self) from collections.FileFormat
     |      Return self as a plain tuple.  Used by copy and pickle.
     |
     |  __repr__(self) from collections.FileFormat
     |      Return a nicely formatted representation string
     |
     |  _asdict(self) from collections.FileFormat
     |      Return a new dict which maps field names to their values.
     |
     |  _replace(self, /, **kwds) from collections.FileFormat
     |      Return a new FileFormat object replacing specified fields with new values
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  _make(iterable) from collections.FileFormat
     |      Make a new FileFormat object from a sequence or iterable
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  __new__(_cls, format: cryptography.hazmat.primitives._serialization.PrivateFormat, encoding: cryptography.hazmat.primitives._serialization.Encoding) from namedtuple_FileFormat.FileFormat
     |      Create new instance of FileFormat(format, encoding)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  format
     |      Alias for field number 0
     |
     |  encoding
     |      Alias for field number 1
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  __annotations__ = {'encoding': <enum 'Encoding'>, 'format': <enum 'Pri...
     |
     |  __match_args__ = ('format', 'encoding')
     |
     |  __orig_bases__ = (<function NamedTuple>,)
     |
     |  _field_defaults = {}
     |
     |  _fields = ('format', 'encoding')
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.tuple:
     |
     |  __add__(self, value, /)
     |      Return self+value.
     |
     |  __contains__(self, key, /)
     |      Return bool(key in self).
     |
     |  __eq__(self, value, /)
     |      Return self==value.
     |
     |  __ge__(self, value, /)
     |      Return self>=value.
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __getitem__(self, key, /)
     |      Return self[key].
     |
     |  __gt__(self, value, /)
     |      Return self>value.
     |
     |  __hash__(self, /)
     |      Return hash(self).
     |
     |  __iter__(self, /)
     |      Implement iter(self).
     |
     |  __le__(self, value, /)
     |      Return self<=value.
     |
     |  __len__(self, /)
     |      Return len(self).
     |
     |  __lt__(self, value, /)
     |      Return self<value.
     |
     |  __mul__(self, value, /)
     |      Return self*value.
     |
     |  __ne__(self, value, /)
     |      Return self!=value.
     |
     |  __rmul__(self, value, /)
     |      Return value*self.
     |
     |  count(self, value, /)
     |      Return number of occurrences of value.
     |
     |  index(self, value, start=0, stop=9223372036854775807, /)
     |      Return first index of value.
     |
     |      Raises ValueError if the value is not present.
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from builtins.tuple:
     |
     |  __class_getitem__(...)
     |      See PEP 585

    class PKey(builtins.object)
     |  PKey(msg=None, data=None)
     |
     |  Base class for public keys.
     |
     |  Also includes some "meta" level convenience constructors such as
     |  `.from_type_string`.
     |
     |  Methods defined here:
     |
     |  __bytes__(self)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __hash__(self)
     |      Return hash(self).
     |
     |  __init__(self, msg=None, data=None)
     |      Create a new instance of this public key type.  If ``msg`` is given,
     |      the key's public part(s) will be filled in from the message.  If
     |      ``data`` is given, the key's public part(s) will be filled in from
     |      the string.
     |
     |      :param .Message msg:
     |          an optional SSH `.Message` containing a public key of this type.
     |      :param bytes data:
     |          optional, the bytes of a public key of this type
     |
     |      :raises: `.SSHException` --
     |          if a key cannot be created from the ``data`` or ``msg`` given, or
     |          no key was passed in.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  _check_type_and_load_cert(self, msg, key_type, cert_type)
     |      Perform message type-checking & optional certificate loading.
     |
     |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
     |      that the subsequent fields are the key numbers; thus the caller may
     |      expect to treat the message as key material afterwards either way.
     |
     |      The obtained key type is returned for classes which need to know what
     |      it was (e.g. ECDSA.)
     |
     |  _got_bad_key_format_id(self, id_)
     |
     |  _read_private_key(self, tag, f, password=None)
     |
     |  _read_private_key_file(self, tag, filename, password=None)
     |      Read an SSH2-format private key file, looking for a string of the type
     |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
     |      find, and return it as a string.  If the private key is encrypted and
     |      ``password`` is not ``None``, the given password will be used to
     |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
     |
     |      :param str tag:
     |          ``"RSA"`` (or etc), the tag used to mark the data block.
     |      :param str filename:
     |          name of the file to read.
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted.
     |      :return:
     |          the `bytes` that make up the private key.
     |
     |      :raises: ``IOError`` -- if there was an error reading the file.
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``.
     |      :raises: `.SSHException` -- if the key file is invalid.
     |
     |  _read_private_key_openssh(self, lines, password)
     |      Read the new OpenSSH SSH2 private key format available
     |      since OpenSSH version 6.5
     |      Reference:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
     |
     |  _read_private_key_pem(self, lines, end, password)
     |
     |  _uint32_cstruct_unpack(self, data, strformat)
     |      Used to read new OpenSSH private key format.
     |      Unpacks a c data structure containing a mix of 32-bit uints and
     |      variable length strings prefixed by 32-bit uint size field,
     |      according to the specified format. Returns the unpacked vars
     |      in a tuple.
     |      Format strings:
     |        s - denotes a string
     |        i - denotes a long integer, encoded as a byte string
     |        u - denotes a 32-bit unsigned integer
     |        r - the remainder of the input string, returned as a string
     |
     |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  asbytes(self)
     |      Return a string of an SSH `.Message` made up of the public part(s) of
     |      this key.  This string is suitable for passing to `__init__` to
     |      re-create the key object later.
     |
     |  can_sign(self)
     |      Return ``True`` if this key has the private part necessary for signing
     |      data.
     |
     |  get_base64(self)
     |      Return a base64 string containing the public part of this key.  Nothing
     |      secret is revealed.  This format is compatible with that used to store
     |      public key files or recognized host keys.
     |
     |      :return: a base64 `string <str>` containing the public part of the key.
     |
     |  get_bits(self)
     |      Return the number of significant bits in this key.  This is useful
     |      for judging the relative security of a key.
     |
     |      :return: bits in the key (as an `int`)
     |
     |  get_fingerprint(self)
     |      Return an MD5 fingerprint of the public part of this key.  Nothing
     |      secret is revealed.
     |
     |      :return:
     |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
     |          format.
     |
     |  get_name(self)
     |      Return the name of this private key implementation.
     |
     |      :return:
     |          name of this private key type, in SSH terminology, as a `str` (for
     |          example, ``"ssh-rsa"``).
     |
     |  load_certificate(self, value)
     |      Supplement the private key contents with data loaded from an OpenSSH
     |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
     |      containing such a file, or a `.Message` object.
     |
     |      The .pub contents adds no real value, since the private key
     |      file includes sufficient information to derive the public
     |      key info. For certificates, however, this can be used on
     |      the client side to offer authentication requests to the server
     |      based on certificate instead of raw public key.
     |
     |      See:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
     |
     |      Note: very little effort is made to validate the certificate contents,
     |      that is for the server to decide if it is good enough to authenticate
     |      successfully.
     |
     |  sign_ssh_data(self, data, algorithm=None)
     |      Sign a blob of data with this private key, and return a `.Message`
     |      representing an SSH signature message.
     |
     |      :param bytes data:
     |          the data to sign.
     |      :param str algorithm:
     |          the signature algorithm to use, if different from the key's
     |          internal name. Default: ``None``.
     |      :return: an SSH signature `message <.Message>`.
     |
     |      .. versionchanged:: 2.9
     |          Added the ``algorithm`` kwarg.
     |
     |  verify_ssh_sig(self, data, msg)
     |      Given a blob of data, and an SSH message representing a signature of
     |      that data, verify that it was signed with this key.
     |
     |      :param bytes data: the data that was signed.
     |      :param .Message msg: an SSH signature message
     |      :return:
     |          ``True`` if the signature verifies correctly; ``False`` otherwise.
     |
     |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file (or file-like) object.  If the
     |      password is not ``None``, the key is encrypted before writing.
     |
     |      :param file_obj: the file-like object to write into
     |      :param str password: an optional password to use to encrypt the key
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing to the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file.  If the password is not
     |      ``None``, the key is encrypted before writing.
     |
     |      :param str filename: name of the file to write
     |      :param str password:
     |          an optional password to use to encrypt the key file
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_private_key(file_obj, password=None)
     |      Create a key object by reading a private key from a file (or file-like)
     |      object.  If the private key is encrypted and ``password`` is not
     |      ``None``, the given password will be used to decrypt the key (otherwise
     |      `.PasswordRequiredException` is thrown).
     |
     |      :param file_obj: the file-like object to read from
     |      :param str password:
     |          an optional password to use to decrypt the key, if it's encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the key
     |      :raises: `.PasswordRequiredException` --
     |          if the private key file is encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  from_private_key_file(filename, password=None)
     |      Create a key object by reading a private key file.  If the private
     |      key is encrypted and ``password`` is not ``None``, the given password
     |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
     |      is thrown).  Through the magic of Python, this factory method will
     |      exist in all subclasses of PKey (such as `.RSAKey`), but
     |      is useless on the abstract PKey class.
     |
     |      :param str filename: name of the file to read
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  identifiers()
     |      returns an iterable of key format/name strings this class can handle.
     |
     |      Most classes only have a single identifier, and thus this default
     |      implementation suffices; see `.ECDSAKey` for one example of an
     |      override.
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  from_path(path, password: Optional[str] = None)
     |      Attempt to instantiate appropriate key subclass from given file path.
     |
     |      :param pathlib.Path path: The path to load (may also be a `str`).
     |      :param str password: Optional decryption password.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Renamed ``passphrase`` argument to ``password`` for consistency
     |          with older methods.
     |
     |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
     |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
     |
     |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
     |      will (if successful) return a new `.Ed25519Key`.
     |
     |      :param str key_type:
     |          The key type, eg ``"ssh-ed25519"``.
     |      :param bytes key_bytes:
     |          The raw byte data forming the key material, as expected by
     |          subclasses' ``data`` parameter.
     |      :param str password:
     |          Optional password used to decrypt ``key_bytes``.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if no registered classes knew about this type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Added the ``password`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  _fields
     |
     |  algorithm_name
     |      Return the key algorithm identifier for this key.
     |
     |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
     |      protocol field value.
     |
     |  fingerprint
     |      Modern fingerprint property designed to be comparable to OpenSSH.
     |
     |      Currently only does SHA256 (the OpenSSH default).
     |
     |      .. versionadded:: 3.2
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
     |
     |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
     |
     |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
     |
     |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
     |
     |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1

    class PublicBlob(builtins.object)
     |  PublicBlob(type_, blob, comment=None)
     |
     |  OpenSSH plain public key or OpenSSH signed public key (certificate).
     |
     |  Tries to be as dumb as possible and barely cares about specific
     |  per-key-type data.
     |
     |  .. note::
     |
     |      Most of the time you'll want to call `from_file`, `from_string` or
     |      `from_message` for useful instantiation, the main constructor is
     |      basically "I should be using ``attrs`` for this."
     |
     |  Methods defined here:
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __init__(self, type_, blob, comment=None)
     |      Create a new public blob of given type and contents.
     |
     |      :param str type_: Type indicator, eg ``ssh-rsa``.
     |      :param bytes blob: The blob bytes themselves.
     |      :param str comment: A comment, if one was given (e.g. file-based.)
     |
     |  __ne__(self, other)
     |      Return self!=value.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_file(filename)
     |      Create a public blob from a ``-cert.pub``-style file on disk.
     |
     |  from_message(message)
     |      Create a public blob from a network `.Message`.
     |
     |      Specifically, a cert-bearing pubkey auth packet, because by definition
     |      OpenSSH-style certificates 'are' their own network representation."
     |
     |  from_string(string)
     |      Create a public blob from a ``-cert.pub``-style string.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  __hash__ = None

    class UnknownKeyType(builtins.Exception)
     |  UnknownKeyType(key_type=None, key_bytes=None)
     |
     |  An unknown public/private key algorithm was attempted to be read.
     |
     |  Method resolution order:
     |      UnknownKeyType
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, key_type=None, key_bytes=None)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

FUNCTIONS
    md5 = openssl_md5(string=b'', *, usedforsecurity=True)
        Returns a md5 hash object; optionally initialized with a string

    sha256 = openssl_sha256(string=b'', *, usedforsecurity=True)
        Returns a sha256 hash object; optionally initialized with a string

    unhexlify(hexstr, /)
        Binary data of hexadecimal representation.

        hexstr must contain an even number of hex digits (upper or lower case).

DATA
    OPENSSH = FileFormat(format=<PrivateFormat.OpenSSH: 'OpenSSH'>, encodi...
    OPENSSH_AUTH_MAGIC = b'openssh-key-v1\x00'
    Optional = typing.Optional
        Optional[X] is equivalent to Union[X, None].

    PEM = FileFormat(format=<PrivateFormat.TraditionalOpen...itionalOpenSS...
    PrivateKey = typing.Union[cryptography.hazmat.primitives.asym....primi...
    Union = typing.Union
        Union type; Union[X, Y] means either X or Y.

        On Python 3.10 and higher, the | operator
        can also be used to denote unions;
        X | Y means the same thing to the type checker as Union[X, Y].

        To define a union, use e.g. Union[int, str]. Details:
        - The arguments must be types and there must be at least one.
        - None as an argument is a special case and is replaced by
          type(None).
        - Unions of unions are flattened, e.g.::

            assert Union[Union[int, str], float] == Union[int, str, float]

        - Unions of a single argument vanish, e.g.::

            assert Union[int] == int  # The constructor actually returns int

        - Redundant arguments are skipped, e.g.::

            assert Union[int, str, int] == Union[int, str]

        - When comparing unions, the argument order is ignored, e.g.::

            assert Union[int, str] == Union[str, int]

        - You cannot subclass or instantiate a union.
        - You can use Optional[X] as a shorthand for Union[X, None].

    o600 = 384

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\pkey.py

paramiko.primes
Python Library Documentation: module paramiko.primes in paramiko

NAME
    paramiko.primes - Utility functions for dealing with primes.

CLASSES
    builtins.object
        ModulusPack

    class ModulusPack(builtins.object)
     |  convenience object for holding the contents of the /etc/ssh/moduli file,
     |  on systems that have such a file.
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  get_modulus(self, min, prefer, max)
     |
     |  read_file(self, filename)
     |      :raises IOError: passed from any file operations that fail.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\primes.py

paramiko.proxy
Python Library Documentation: module paramiko.proxy in paramiko

NAME
    paramiko.proxy

DESCRIPTION
    # Copyright (C) 2012  Yipit, Inc <coders@yipit.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    paramiko.util.ClosingContextManager(builtins.object)
        ProxyCommand

    class ProxyCommand(paramiko.util.ClosingContextManager)
     |  ProxyCommand(command_line)
     |
     |  Wraps a subprocess running ProxyCommand-driven programs.
     |
     |  This class implements a the socket-like interface needed by the
     |  `.Transport` and `.Packetizer` classes. Using this class instead of a
     |  regular socket makes it possible to talk with a Popen'd command that will
     |  proxy traffic between the client and a server hosted in another machine.
     |
     |  Instances of this class may be used as context managers.
     |
     |  Method resolution order:
     |      ProxyCommand
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, command_line)
     |      Create a new CommandProxy instance. The instance created by this
     |      class can be passed as an argument to the `.Transport` class.
     |
     |      :param str command_line:
     |          the command that should be executed and used as the proxy.
     |
     |  close(self)
     |
     |  recv(self, size)
     |      Read from the standard output of the forked program.
     |
     |      :param int size: how many chars should be read
     |
     |      :return: the string of bytes read, which may be shorter than requested
     |
     |  send(self, content)
     |      Write the content received from the SSH client to the standard
     |      input of the forked command.
     |
     |      :param str content: string to be sent to the forked command
     |
     |  settimeout(self, timeout)
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    select(rlist, wlist, xlist, timeout=None, /)
        Wait until one or more file descriptors are ready for some kind of I/O.

        The first three arguments are iterables of file descriptors to be waited for:
        rlist -- wait until ready for reading
        wlist -- wait until ready for writing
        xlist -- wait for an "exceptional condition"
        If only one kind of condition is required, pass [] for the other lists.

        A file descriptor is either a socket or file object, or a small integer
        gotten from a fileno() method call on one of those.

        The optional 4th argument specifies a timeout in seconds; it may be
        a floating-point number to specify fractions of seconds.  If it is absent
        or None, the call will never time out.

        The return value is a tuple of three lists corresponding to the first three
        arguments; each contains the subset of the corresponding file descriptors
        that are ready.

        *** IMPORTANT NOTICE ***
        On Windows, only sockets are supported; on Unix, all file
        descriptors can be used.

DATA
    subprocess_import_error = None

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\proxy.py

paramiko.rsakey
Python Library Documentation: module paramiko.rsakey in paramiko

NAME
    paramiko.rsakey - RSA keys.

CLASSES
    paramiko.pkey.PKey(builtins.object)
        RSAKey

    class RSAKey(paramiko.pkey.PKey)
     |  RSAKey(msg=None, data=None, filename=None, password=None, key=None, file_obj=None)
     |
     |  Representation of an RSA key which can be used to sign and verify SSH2
     |  data.
     |
     |  Method resolution order:
     |      RSAKey
     |      paramiko.pkey.PKey
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, msg=None, data=None, filename=None, password=None, key=None, file_obj=None)
     |      Create a new instance of this public key type.  If ``msg`` is given,
     |      the key's public part(s) will be filled in from the message.  If
     |      ``data`` is given, the key's public part(s) will be filled in from
     |      the string.
     |
     |      :param .Message msg:
     |          an optional SSH `.Message` containing a public key of this type.
     |      :param bytes data:
     |          optional, the bytes of a public key of this type
     |
     |      :raises: `.SSHException` --
     |          if a key cannot be created from the ``data`` or ``msg`` given, or
     |          no key was passed in.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  _decode_key(self, data)
     |
     |  _from_private_key(self, file_obj, password)
     |
     |  _from_private_key_file(self, filename, password)
     |
     |  asbytes(self)
     |      Return a string of an SSH `.Message` made up of the public part(s) of
     |      this key.  This string is suitable for passing to `__init__` to
     |      re-create the key object later.
     |
     |  can_sign(self)
     |      Return ``True`` if this key has the private part necessary for signing
     |      data.
     |
     |  get_bits(self)
     |      Return the number of significant bits in this key.  This is useful
     |      for judging the relative security of a key.
     |
     |      :return: bits in the key (as an `int`)
     |
     |  get_name(self)
     |      Return the name of this private key implementation.
     |
     |      :return:
     |          name of this private key type, in SSH terminology, as a `str` (for
     |          example, ``"ssh-rsa"``).
     |
     |  sign_ssh_data(self, data, algorithm=None)
     |      Sign a blob of data with this private key, and return a `.Message`
     |      representing an SSH signature message.
     |
     |      :param bytes data:
     |          the data to sign.
     |      :param str algorithm:
     |          the signature algorithm to use, if different from the key's
     |          internal name. Default: ``None``.
     |      :return: an SSH signature `message <.Message>`.
     |
     |      .. versionchanged:: 2.9
     |          Added the ``algorithm`` kwarg.
     |
     |  verify_ssh_sig(self, data, msg)
     |      Given a blob of data, and an SSH message representing a signature of
     |      that data, verify that it was signed with this key.
     |
     |      :param bytes data: the data that was signed.
     |      :param .Message msg: an SSH signature message
     |      :return:
     |          ``True`` if the signature verifies correctly; ``False`` otherwise.
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  identifiers()
     |      returns an iterable of key format/name strings this class can handle.
     |
     |      Most classes only have a single identifier, and thus this default
     |      implementation suffices; see `.ECDSAKey` for one example of an
     |      override.
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  generate(bits, progress_func=None)
     |      Generate a new private RSA key.  This factory function can be used to
     |      generate a new host key or authentication key.
     |
     |      :param int bits: number of bits the generated key should be.
     |      :param progress_func: Unused
     |      :return: new `.RSAKey` private key
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  _fields
     |
     |  private_key
     |
     |  public_numbers
     |
     |  size
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  HASHES = {'rsa-sha2-256': <class 'cryptography.hazmat.primitives.hashe...
     |
     |  name = 'ssh-rsa'
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.pkey.PKey:
     |
     |  __bytes__(self)
     |
     |  __eq__(self, other)
     |      Return self==value.
     |
     |  __hash__(self)
     |      Return hash(self).
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  _check_type_and_load_cert(self, msg, key_type, cert_type)
     |      Perform message type-checking & optional certificate loading.
     |
     |      This includes fast-forwarding cert ``msg`` objects past the nonce, so
     |      that the subsequent fields are the key numbers; thus the caller may
     |      expect to treat the message as key material afterwards either way.
     |
     |      The obtained key type is returned for classes which need to know what
     |      it was (e.g. ECDSA.)
     |
     |  _got_bad_key_format_id(self, id_)
     |
     |  _read_private_key(self, tag, f, password=None)
     |
     |  _read_private_key_file(self, tag, filename, password=None)
     |      Read an SSH2-format private key file, looking for a string of the type
     |      ``"BEGIN xxx PRIVATE KEY"`` for some ``xxx``, base64-decode the text we
     |      find, and return it as a string.  If the private key is encrypted and
     |      ``password`` is not ``None``, the given password will be used to
     |      decrypt the key (otherwise `.PasswordRequiredException` is thrown).
     |
     |      :param str tag:
     |          ``"RSA"`` (or etc), the tag used to mark the data block.
     |      :param str filename:
     |          name of the file to read.
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted.
     |      :return:
     |          the `bytes` that make up the private key.
     |
     |      :raises: ``IOError`` -- if there was an error reading the file.
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``.
     |      :raises: `.SSHException` -- if the key file is invalid.
     |
     |  _read_private_key_openssh(self, lines, password)
     |      Read the new OpenSSH SSH2 private key format available
     |      since OpenSSH version 6.5
     |      Reference:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.key
     |
     |  _read_private_key_pem(self, lines, end, password)
     |
     |  _uint32_cstruct_unpack(self, data, strformat)
     |      Used to read new OpenSSH private key format.
     |      Unpacks a c data structure containing a mix of 32-bit uints and
     |      variable length strings prefixed by 32-bit uint size field,
     |      according to the specified format. Returns the unpacked vars
     |      in a tuple.
     |      Format strings:
     |        s - denotes a string
     |        i - denotes a long integer, encoded as a byte string
     |        u - denotes a 32-bit unsigned integer
     |        r - the remainder of the input string, returned as a string
     |
     |  _write_private_key(self, f: io.RawIOBase, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  _write_private_key_file(self, filename: str, key: Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], file_format: paramiko.pkey.FileFormat, password: Optional[str] = None)
     |
     |  get_base64(self)
     |      Return a base64 string containing the public part of this key.  Nothing
     |      secret is revealed.  This format is compatible with that used to store
     |      public key files or recognized host keys.
     |
     |      :return: a base64 `string <str>` containing the public part of the key.
     |
     |  get_fingerprint(self)
     |      Return an MD5 fingerprint of the public part of this key.  Nothing
     |      secret is revealed.
     |
     |      :return:
     |          a 16-byte `string <str>` (binary) of the MD5 fingerprint, in SSH
     |          format.
     |
     |  load_certificate(self, value)
     |      Supplement the private key contents with data loaded from an OpenSSH
     |      public key (``.pub``) or certificate (``-cert.pub``) file, a string
     |      containing such a file, or a `.Message` object.
     |
     |      The .pub contents adds no real value, since the private key
     |      file includes sufficient information to derive the public
     |      key info. For certificates, however, this can be used on
     |      the client side to offer authentication requests to the server
     |      based on certificate instead of raw public key.
     |
     |      See:
     |      https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys
     |
     |      Note: very little effort is made to validate the certificate contents,
     |      that is for the server to decide if it is good enough to authenticate
     |      successfully.
     |
     |  write_private_key(self, file_obj: io.RawIOBase, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file (or file-like) object.  If the
     |      password is not ``None``, the key is encrypted before writing.
     |
     |      :param file_obj: the file-like object to write into
     |      :param str password: an optional password to use to encrypt the key
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing to the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  write_private_key_file(self, filename: str, password: Optional[str] = None, file_format: paramiko.pkey.FileFormat = FileFormat(format=<PrivateFormat.TraditionalOpenSSL: 'TraditionalOpenSSL'>, encoding=<Encoding.PEM: 'PEM'>))
     |      Write private key contents into a file.  If the password is not
     |      ``None``, the key is encrypted before writing.
     |
     |      :param str filename: name of the file to write
     |      :param str password:
     |          an optional password to use to encrypt the key file
     |      :param FileFormat file_format:
     |          what format+encoding pair to use; defaults to the original
     |          behavior, namely PEM.
     |
     |      :raises: ``IOError`` -- if there was an error writing the file
     |      :raises: `.SSHException` -- if the key is invalid
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from paramiko.pkey.PKey:
     |
     |  from_private_key(file_obj, password=None)
     |      Create a key object by reading a private key from a file (or file-like)
     |      object.  If the private key is encrypted and ``password`` is not
     |      ``None``, the given password will be used to decrypt the key (otherwise
     |      `.PasswordRequiredException` is thrown).
     |
     |      :param file_obj: the file-like object to read from
     |      :param str password:
     |          an optional password to use to decrypt the key, if it's encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the key
     |      :raises: `.PasswordRequiredException` --
     |          if the private key file is encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  from_private_key_file(filename, password=None)
     |      Create a key object by reading a private key file.  If the private
     |      key is encrypted and ``password`` is not ``None``, the given password
     |      will be used to decrypt the key (otherwise `.PasswordRequiredException`
     |      is thrown).  Through the magic of Python, this factory method will
     |      exist in all subclasses of PKey (such as `.RSAKey`), but
     |      is useless on the abstract PKey class.
     |
     |      :param str filename: name of the file to read
     |      :param str password:
     |          an optional password to use to decrypt the key file, if it's
     |          encrypted
     |      :return: a new `.PKey` based on the given private key
     |
     |      :raises: ``IOError`` -- if there was an error reading the file
     |      :raises: `.PasswordRequiredException` -- if the private key file is
     |          encrypted, and ``password`` is ``None``
     |      :raises: `.SSHException` -- if the key file is invalid
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from paramiko.pkey.PKey:
     |
     |  from_path(path, password: Optional[str] = None)
     |      Attempt to instantiate appropriate key subclass from given file path.
     |
     |      :param pathlib.Path path: The path to load (may also be a `str`).
     |      :param str password: Optional decryption password.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if our crypto backend doesn't know this key type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Renamed ``passphrase`` argument to ``password`` for consistency
     |          with older methods.
     |
     |  from_type_string(key_type: str, key_bytes: bytes, password: Optional[str] = None)
     |      Given type `str` & raw `bytes`, return a `PKey` subclass instance.
     |
     |      For example, ``PKey.from_type_string("ssh-ed25519", <public bytes>)``
     |      will (if successful) return a new `.Ed25519Key`.
     |
     |      :param str key_type:
     |          The key type, eg ``"ssh-ed25519"``.
     |      :param bytes key_bytes:
     |          The raw byte data forming the key material, as expected by
     |          subclasses' ``data`` parameter.
     |      :param str password:
     |          Optional password used to decrypt ``key_bytes``.
     |
     |      :returns:
     |          A `PKey` subclass instance.
     |
     |      :raises:
     |          `UnknownKeyType`, if no registered classes knew about this type.
     |
     |      .. versionadded:: 3.2
     |      .. versionchanged:: 5.0
     |          Added the ``password`` kwarg.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.pkey.PKey:
     |
     |  algorithm_name
     |      Return the key algorithm identifier for this key.
     |
     |      Similar to `get_name`, but aimed at pure algorithm name instead of SSH
     |      protocol field value.
     |
     |  fingerprint
     |      Modern fingerprint property designed to be comparable to OpenSSH.
     |
     |      Currently only does SHA256 (the OpenSSH default).
     |
     |      .. versionadded:: 3.2
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.pkey.PKey:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.pkey.PKey:
     |
     |  BEGIN_TAG = re.compile('^-{5}BEGIN (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s...
     |
     |  END_TAG = re.compile('^-{5}END (RSA|EC|OPENSSH) PRIVATE KEY-{5}\\s*$')
     |
     |  _CIPHER_TABLE = {'AES-128-CBC': {'blocksize': 16, 'cipher': <class 'cr...
     |
     |  _PRIVATE_KEY_FORMAT_OPENSSH = 2
     |
     |  _PRIVATE_KEY_FORMAT_ORIGINAL = 1

DATA
    Optional = typing.Optional
        Optional[X] is equivalent to Union[X, None].

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\rsakey.py

paramiko.server
Python Library Documentation: module paramiko.server in paramiko

NAME
    paramiko.server - `.ServerInterface` is an interface to override for server support.

CLASSES
    builtins.object
        InteractiveQuery
        ServerInterface
    threading.Thread(builtins.object)
        SubsystemHandler

    class InteractiveQuery(builtins.object)
     |  InteractiveQuery(name='', instructions='', *prompts)
     |
     |  A query (set of prompts) for a user during interactive authentication.
     |
     |  Methods defined here:
     |
     |  __init__(self, name='', instructions='', *prompts)
     |      Create a new interactive query to send to the client.  The name and
     |      instructions are optional, but are generally displayed to the end
     |      user.  A list of prompts may be included, or they may be added via
     |      the `add_prompt` method.
     |
     |      :param str name: name of this query
     |      :param str instructions:
     |          user instructions (usually short) about this query
     |      :param str prompts: one or more authentication prompts
     |
     |  add_prompt(self, prompt, echo=True)
     |      Add a prompt to this query.  The prompt should be a (reasonably short)
     |      string.  Multiple prompts can be added to the same query.
     |
     |      :param str prompt: the user prompt
     |      :param bool echo:
     |          ``True`` (default) if the user's response should be echoed;
     |          ``False`` if not (for a password or similar)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class ServerInterface(builtins.object)
     |  This class defines an interface for controlling the behavior of Paramiko
     |  in server mode.
     |
     |  Methods on this class are called from Paramiko's primary thread, so you
     |  shouldn't do too much work in them.  (Certainly nothing that blocks or
     |  sleeps.)
     |
     |  Methods defined here:
     |
     |  cancel_port_forward_request(self, address, port)
     |      The client would like to cancel a previous port-forwarding request.
     |      If the given address and port is being forwarded across this ssh
     |      connection, the port should be closed.
     |
     |      :param str address: the forwarded address
     |      :param int port: the forwarded port
     |
     |  check_auth_interactive(self, username, submethods)
     |      Begin an interactive authentication challenge, if supported.  You
     |      should override this method in server mode if you want to support the
     |      ``"keyboard-interactive"`` auth type, which requires you to send a
     |      series of questions for the client to answer.
     |
     |      Return ``AUTH_FAILED`` if this auth method isn't supported.  Otherwise,
     |      you should return an `.InteractiveQuery` object containing the prompts
     |      and instructions for the user.  The response will be sent via a call
     |      to `check_auth_interactive_response`.
     |
     |      The default implementation always returns ``AUTH_FAILED``.
     |
     |      :param str username: the username of the authenticating client
     |      :param str submethods:
     |          a comma-separated list of methods preferred by the client (usually
     |          empty)
     |      :return:
     |          ``AUTH_FAILED`` if this auth method isn't supported; otherwise an
     |          object containing queries for the user
     |      :rtype: int or `.InteractiveQuery`
     |
     |  check_auth_interactive_response(self, responses)
     |      Continue or finish an interactive authentication challenge, if
     |      supported.  You should override this method in server mode if you want
     |      to support the ``"keyboard-interactive"`` auth type.
     |
     |      Return ``AUTH_FAILED`` if the responses are not accepted,
     |      ``AUTH_SUCCESSFUL`` if the responses are accepted and complete
     |      the authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
     |      authentication is stateful, and this set of responses is accepted for
     |      authentication, but more authentication is required.  (In this latter
     |      case, `get_allowed_auths` will be called to report to the client what
     |      options it has for continuing the authentication.)
     |
     |      If you wish to continue interactive authentication with more questions,
     |      you may return an `.InteractiveQuery` object, which should cause the
     |      client to respond with more answers, calling this method again.  This
     |      cycle can continue indefinitely.
     |
     |      The default implementation always returns ``AUTH_FAILED``.
     |
     |      :param responses: list of `str` responses from the client
     |      :return:
     |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
     |          it succeeds; ``AUTH_PARTIALLY_SUCCESSFUL`` if the interactive auth
     |          is successful, but authentication must continue; otherwise an
     |          object containing queries for the user
     |      :rtype: int or `.InteractiveQuery`
     |
     |  check_auth_none(self, username)
     |      Determine if a client may open channels with no (further)
     |      authentication.
     |
     |      Return ``AUTH_FAILED`` if the client must authenticate, or
     |      ``AUTH_SUCCESSFUL`` if it's okay for the client to not
     |      authenticate.
     |
     |      The default implementation always returns ``AUTH_FAILED``.
     |
     |      :param str username: the username of the client.
     |      :return:
     |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
     |          it succeeds.
     |      :rtype: int
     |
     |  check_auth_password(self, username, password)
     |      Determine if a given username and password supplied by the client is
     |      acceptable for use in authentication.
     |
     |      Return ``AUTH_FAILED`` if the password is not accepted,
     |      ``AUTH_SUCCESSFUL`` if the password is accepted and completes
     |      the authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
     |      authentication is stateful, and this key is accepted for
     |      authentication, but more authentication is required.  (In this latter
     |      case, `get_allowed_auths` will be called to report to the client what
     |      options it has for continuing the authentication.)
     |
     |      The default implementation always returns ``AUTH_FAILED``.
     |
     |      :param str username: the username of the authenticating client.
     |      :param str password: the password given by the client.
     |      :return:
     |          ``AUTH_FAILED`` if the authentication fails; ``AUTH_SUCCESSFUL`` if
     |          it succeeds; ``AUTH_PARTIALLY_SUCCESSFUL`` if the password auth is
     |          successful, but authentication must continue.
     |      :rtype: int
     |
     |  check_auth_publickey(self, username, key)
     |      Determine if a given key supplied by the client is acceptable for use
     |      in authentication.  You should override this method in server mode to
     |      check the username and key and decide if you would accept a signature
     |      made using this key.
     |
     |      Return ``AUTH_FAILED`` if the key is not accepted,
     |      ``AUTH_SUCCESSFUL`` if the key is accepted and completes the
     |      authentication, or ``AUTH_PARTIALLY_SUCCESSFUL`` if your
     |      authentication is stateful, and this password is accepted for
     |      authentication, but more authentication is required.  (In this latter
     |      case, `get_allowed_auths` will be called to report to the client what
     |      options it has for continuing the authentication.)
     |
     |      Note that you don't have to actually verify any key signtature here.
     |      If you're willing to accept the key, Paramiko will do the work of
     |      verifying the client's signature.
     |
     |      The default implementation always returns ``AUTH_FAILED``.
     |
     |      :param str username: the username of the authenticating client
     |      :param .PKey key: the key object provided by the client
     |      :return:
     |          ``AUTH_FAILED`` if the client can't authenticate with this key;
     |          ``AUTH_SUCCESSFUL`` if it can; ``AUTH_PARTIALLY_SUCCESSFUL`` if it
     |          can authenticate with this key but must continue with
     |          authentication
     |      :rtype: int
     |
     |  check_channel_direct_tcpip_request(self, chanid, origin, destination)
     |      Determine if a local port forwarding channel will be granted, and
     |      return ``OPEN_SUCCEEDED`` or an error code.  This method is
     |      called in server mode when the client requests a channel, after
     |      authentication is complete.
     |
     |      The ``chanid`` parameter is a small number that uniquely identifies the
     |      channel within a `.Transport`.  A `.Channel` object is not created
     |      unless this method returns ``OPEN_SUCCEEDED`` -- once a
     |      `.Channel` object is created, you can call `.Channel.get_id` to
     |      retrieve the channel ID.
     |
     |      The origin and destination parameters are (ip_address, port) tuples
     |      that correspond to both ends of the TCP connection in the forwarding
     |      tunnel.
     |
     |      The return value should either be ``OPEN_SUCCEEDED`` (or
     |      ``0``) to allow the channel request, or one of the following error
     |      codes to reject it:
     |
     |          - ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``
     |          - ``OPEN_FAILED_CONNECT_FAILED``
     |          - ``OPEN_FAILED_UNKNOWN_CHANNEL_TYPE``
     |          - ``OPEN_FAILED_RESOURCE_SHORTAGE``
     |
     |      The default implementation always returns
     |      ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``.
     |
     |      :param int chanid: ID of the channel
     |      :param tuple origin:
     |          2-tuple containing the IP address and port of the originator
     |          (client side)
     |      :param tuple destination:
     |          2-tuple containing the IP address and port of the destination
     |          (server side)
     |      :return: an `int` success or failure code (listed above)
     |
     |  check_channel_env_request(self, channel, name, value)
     |      Check whether a given environment variable can be specified for the
     |      given channel.  This method should return ``True`` if the server
     |      is willing to set the specified environment variable.  Note that
     |      some environment variables (e.g., PATH) can be exceedingly
     |      dangerous, so blindly allowing the client to set the environment
     |      is almost certainly not a good idea.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param channel: the `.Channel` the env request arrived on
     |      :param str name: name
     |      :param str value: Channel value
     |      :returns: A boolean
     |
     |  check_channel_exec_request(self, channel, command)
     |      Determine if a shell command will be executed for the client.  If this
     |      method returns ``True``, the channel should be connected to the stdin,
     |      stdout, and stderr of the shell command.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the request arrived on.
     |      :param str command: the command to execute.
     |      :return:
     |          ``True`` if this channel is now hooked up to the stdin, stdout, and
     |          stderr of the executing command; ``False`` if the command will not
     |          be executed.
     |
     |      .. versionadded:: 1.1
     |
     |  check_channel_forward_agent_request(self, channel)
     |      Determine if the client will be provided with an forward agent session.
     |      If this method returns ``True``, the server will allow SSH Agent
     |      forwarding.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the request arrived on
     |      :return: ``True`` if the AgentForward was loaded; ``False`` if not
     |
     |      If ``True`` is returned, the server should create an
     |      :class:`AgentServerProxy` to access the agent.
     |
     |  check_channel_pty_request(self, channel, term, width, height, pixelwidth, pixelheight, modes)
     |      Determine if a pseudo-terminal of the given dimensions (usually
     |      requested for shell access) can be provided on the given channel.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the pty request arrived on.
     |      :param str term: type of terminal requested (for example, ``"vt100"``).
     |      :param int width: width of screen in characters.
     |      :param int height: height of screen in characters.
     |      :param int pixelwidth:
     |          width of screen in pixels, if known (may be ``0`` if unknown).
     |      :param int pixelheight:
     |          height of screen in pixels, if known (may be ``0`` if unknown).
     |      :return:
     |          ``True`` if the pseudo-terminal has been allocated; ``False``
     |          otherwise.
     |
     |  check_channel_request(self, kind, chanid)
     |      Determine if a channel request of a given type will be granted, and
     |      return ``OPEN_SUCCEEDED`` or an error code.  This method is
     |      called in server mode when the client requests a channel, after
     |      authentication is complete.
     |
     |      If you allow channel requests (and an ssh server that didn't would be
     |      useless), you should also override some of the channel request methods
     |      below, which are used to determine which services will be allowed on
     |      a given channel:
     |
     |          - `check_channel_pty_request`
     |          - `check_channel_shell_request`
     |          - `check_channel_subsystem_request`
     |          - `check_channel_window_change_request`
     |          - `check_channel_x11_request`
     |          - `check_channel_forward_agent_request`
     |
     |      The ``chanid`` parameter is a small number that uniquely identifies the
     |      channel within a `.Transport`.  A `.Channel` object is not created
     |      unless this method returns ``OPEN_SUCCEEDED`` -- once a
     |      `.Channel` object is created, you can call `.Channel.get_id` to
     |      retrieve the channel ID.
     |
     |      The return value should either be ``OPEN_SUCCEEDED`` (or
     |      ``0``) to allow the channel request, or one of the following error
     |      codes to reject it:
     |
     |          - ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``
     |          - ``OPEN_FAILED_CONNECT_FAILED``
     |          - ``OPEN_FAILED_UNKNOWN_CHANNEL_TYPE``
     |          - ``OPEN_FAILED_RESOURCE_SHORTAGE``
     |
     |      The default implementation always returns
     |      ``OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED``.
     |
     |      :param str kind:
     |          the kind of channel the client would like to open (usually
     |          ``"session"``).
     |      :param int chanid: ID of the channel
     |      :return: an `int` success or failure code (listed above)
     |
     |  check_channel_shell_request(self, channel)
     |      Determine if a shell will be provided to the client on the given
     |      channel.  If this method returns ``True``, the channel should be
     |      connected to the stdin/stdout of a shell (or something that acts like
     |      a shell).
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the request arrived on.
     |      :return:
     |          ``True`` if this channel is now hooked up to a shell; ``False`` if
     |          a shell can't or won't be provided.
     |
     |  check_channel_subsystem_request(self, channel, name)
     |      Determine if a requested subsystem will be provided to the client on
     |      the given channel.  If this method returns ``True``, all future I/O
     |      through this channel will be assumed to be connected to the requested
     |      subsystem.  An example of a subsystem is ``sftp``.
     |
     |      The default implementation checks for a subsystem handler assigned via
     |      `.Transport.set_subsystem_handler`.
     |      If one has been set, the handler is invoked and this method returns
     |      ``True``.  Otherwise it returns ``False``.
     |
     |      .. note:: Because the default implementation uses the `.Transport` to
     |          identify valid subsystems, you probably won't need to override this
     |          method.
     |
     |      :param .Channel channel: the `.Channel` the pty request arrived on.
     |      :param str name: name of the requested subsystem.
     |      :return:
     |          ``True`` if this channel is now hooked up to the requested
     |          subsystem; ``False`` if that subsystem can't or won't be provided.
     |
     |  check_channel_window_change_request(self, channel, width, height, pixelwidth, pixelheight)
     |      Determine if the pseudo-terminal on the given channel can be resized.
     |      This only makes sense if a pty was previously allocated on it.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the pty request arrived on.
     |      :param int width: width of screen in characters.
     |      :param int height: height of screen in characters.
     |      :param int pixelwidth:
     |          width of screen in pixels, if known (may be ``0`` if unknown).
     |      :param int pixelheight:
     |          height of screen in pixels, if known (may be ``0`` if unknown).
     |      :return: ``True`` if the terminal was resized; ``False`` if not.
     |
     |  check_channel_x11_request(self, channel, single_connection, auth_protocol, auth_cookie, screen_number)
     |      Determine if the client will be provided with an X11 session.  If this
     |      method returns ``True``, X11 applications should be routed through new
     |      SSH channels, using `.Transport.open_x11_channel`.
     |
     |      The default implementation always returns ``False``.
     |
     |      :param .Channel channel: the `.Channel` the X11 request arrived on
     |      :param bool single_connection:
     |          ``True`` if only a single X11 channel should be opened, else
     |          ``False``.
     |      :param str auth_protocol: the protocol used for X11 authentication
     |      :param str auth_cookie: the cookie used to authenticate to X11
     |      :param int screen_number: the number of the X11 screen to connect to
     |      :return: ``True`` if the X11 session was opened; ``False`` if not
     |
     |  check_global_request(self, kind, msg)
     |      Handle a global request of the given ``kind``.  This method is called
     |      in server mode and client mode, whenever the remote host makes a global
     |      request.  If there are any arguments to the request, they will be in
     |      ``msg``.
     |
     |      There aren't any useful global requests defined, aside from port
     |      forwarding, so usually this type of request is an extension to the
     |      protocol.
     |
     |      If the request was successful and you would like to return contextual
     |      data to the remote host, return a tuple.  Items in the tuple will be
     |      sent back with the successful result.  (Note that the items in the
     |      tuple can only be strings, ints, or bools.)
     |
     |      The default implementation always returns ``False``, indicating that it
     |      does not support any global requests.
     |
     |      .. note:: Port forwarding requests are handled separately, in
     |          `check_port_forward_request`.
     |
     |      :param str kind: the kind of global request being made.
     |      :param .Message msg: any extra arguments to the request.
     |      :return:
     |          ``True`` or a `tuple` of data if the request was granted; ``False``
     |          otherwise.
     |
     |  check_port_forward_request(self, address, port)
     |      Handle a request for port forwarding.  The client is asking that
     |      connections to the given address and port be forwarded back across
     |      this ssh connection.  An address of ``"0.0.0.0"`` indicates a global
     |      address (any address associated with this server) and a port of ``0``
     |      indicates that no specific port is requested (usually the OS will pick
     |      a port).
     |
     |      The default implementation always returns ``False``, rejecting the
     |      port forwarding request.  If the request is accepted, you should return
     |      the port opened for listening.
     |
     |      :param str address: the requested address
     |      :param int port: the requested port
     |      :return:
     |          the port number (`int`) that was opened for listening, or ``False``
     |          to reject
     |
     |  get_allowed_auths(self, username)
     |      Return a list of authentication methods supported by the server.
     |      This list is sent to clients attempting to authenticate, to inform them
     |      of authentication methods that might be successful.
     |
     |      The "list" is actually a string of comma-separated names of types of
     |      authentication.  Possible values are ``"password"``, ``"publickey"``,
     |      and ``"none"``.
     |
     |      The default implementation always returns ``"password"``.
     |
     |      :param str username: the username requesting authentication.
     |      :return: a comma-separated `str` of authentication types
     |
     |  get_banner(self)
     |      A pre-login banner to display to the user. The message may span
     |      multiple lines separated by crlf pairs. The language should be in
     |      rfc3066 style, for example: en-US
     |
     |      The default implementation always returns ``(None, None)``.
     |
     |      :returns: A tuple containing the banner and language code.
     |
     |      .. versionadded:: 2.3
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SubsystemHandler(threading.Thread)
     |  SubsystemHandler(channel, name, server)
     |
     |  Handler for a subsystem in server mode.  If you create a subclass of this
     |  class and pass it to `.Transport.set_subsystem_handler`, an object of this
     |  class will be created for each request for this subsystem.  Each new object
     |  will be executed within its own new thread by calling `start_subsystem`.
     |  When that method completes, the channel is closed.
     |
     |  For example, if you made a subclass ``MP3Handler`` and registered it as the
     |  handler for subsystem ``"mp3"``, then whenever a client has successfully
     |  authenticated and requests subsystem ``"mp3"``, an object of class
     |  ``MP3Handler`` will be created, and `start_subsystem` will be called on
     |  it from a new thread.
     |
     |  Method resolution order:
     |      SubsystemHandler
     |      threading.Thread
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, channel, name, server)
     |      Create a new handler for a channel.  This is used by `.ServerInterface`
     |      to start up a new handler when a channel requests this subsystem.  You
     |      don't need to override this method, but if you do, be sure to pass the
     |      ``channel`` and ``name`` parameters through to the original
     |      ``__init__`` method here.
     |
     |      :param .Channel channel: the channel associated with this
     |          subsystem request.
     |      :param str name: name of the requested subsystem.
     |      :param .ServerInterface server:
     |          the server object for the session that started this subsystem
     |
     |  finish_subsystem(self)
     |      Perform any cleanup at the end of a subsystem.  The default
     |      implementation just closes the channel.
     |
     |      .. versionadded:: 1.1
     |
     |  get_server(self)
     |      Return the `.ServerInterface` object associated with this channel and
     |      subsystem.
     |
     |  start_subsystem(self, name, transport, channel)
     |      Process an ssh subsystem in server mode.  This method is called on a
     |      new object (and in a new thread) for each subsystem request.  It is
     |      assumed that all subsystem logic will take place here, and when the
     |      subsystem is finished, this method will return.  After this method
     |      returns, the channel is closed.
     |
     |      The combination of ``transport`` and ``channel`` are unique; this
     |      handler corresponds to exactly one `.Channel` on one `.Transport`.
     |
     |      .. note::
     |          It is the responsibility of this method to exit if the underlying
     |          `.Transport` is closed.  This can be done by checking
     |          `.Transport.is_active` or noticing an EOF on the `.Channel`.  If
     |          this method loops forever without checking for this case, your
     |          Python interpreter may refuse to exit because this thread will
     |          still be running.
     |
     |      :param str name: name of the requested subsystem.
     |      :param .Transport transport: the server-mode `.Transport`.
     |      :param .Channel channel: the channel associated with this subsystem
     |          request.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.

DATA
    AUTH_FAILED = 2
    DEBUG = 10
    ERROR = 40
    OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED = 1

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\server.py

paramiko.sftp
Python Library Documentation: module paramiko.sftp in paramiko

NAME
    paramiko.sftp

DESCRIPTION
    # Copyright (C) 2003-2007  Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    builtins.Exception(builtins.BaseException)
        SFTPError
    builtins.int(builtins.object)
        int64
    builtins.object
        BaseSFTP

    class BaseSFTP(builtins.object)
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SFTPError(builtins.Exception)
     |  Method resolution order:
     |      SFTPError
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class int64(builtins.int)
     |  # TODO: rewrite SFTP file/server modules' overly-flexible "make a request with
     |  # xyz components" so we don't need this very silly method of signaling whether
     |  # a given Python integer should be 32- or 64-bit.
     |  # NOTE: this only became an issue when dropping Python 2 support; prior to
     |  # doing so, we had to support actual-longs, which served as that signal. This
     |  # is simply recreating that structure in a more tightly scoped fashion.
     |
     |  Method resolution order:
     |      int64
     |      builtins.int
     |      builtins.object
     |
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.int:
     |
     |  __abs__(self, /)
     |      abs(self)
     |
     |  __add__(self, value, /)
     |      Return self+value.
     |
     |  __and__(self, value, /)
     |      Return self&value.
     |
     |  __bool__(self, /)
     |      True if self else False
     |
     |  __ceil__(...)
     |      Ceiling of an Integral returns itself.
     |
     |  __divmod__(self, value, /)
     |      Return divmod(self, value).
     |
     |  __eq__(self, value, /)
     |      Return self==value.
     |
     |  __float__(self, /)
     |      float(self)
     |
     |  __floor__(...)
     |      Flooring an Integral returns itself.
     |
     |  __floordiv__(self, value, /)
     |      Return self//value.
     |
     |  __format__(self, format_spec, /)
     |      Convert to a string according to format_spec.
     |
     |  __ge__(self, value, /)
     |      Return self>=value.
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __getnewargs__(self, /)
     |
     |  __gt__(self, value, /)
     |      Return self>value.
     |
     |  __hash__(self, /)
     |      Return hash(self).
     |
     |  __index__(self, /)
     |      Return self converted to an integer, if self is suitable for use as an index into a list.
     |
     |  __int__(self, /)
     |      int(self)
     |
     |  __invert__(self, /)
     |      ~self
     |
     |  __le__(self, value, /)
     |      Return self<=value.
     |
     |  __lshift__(self, value, /)
     |      Return self<<value.
     |
     |  __lt__(self, value, /)
     |      Return self<value.
     |
     |  __mod__(self, value, /)
     |      Return self%value.
     |
     |  __mul__(self, value, /)
     |      Return self*value.
     |
     |  __ne__(self, value, /)
     |      Return self!=value.
     |
     |  __neg__(self, /)
     |      -self
     |
     |  __or__(self, value, /)
     |      Return self|value.
     |
     |  __pos__(self, /)
     |      +self
     |
     |  __pow__(self, value, mod=None, /)
     |      Return pow(self, value, mod).
     |
     |  __radd__(self, value, /)
     |      Return value+self.
     |
     |  __rand__(self, value, /)
     |      Return value&self.
     |
     |  __rdivmod__(self, value, /)
     |      Return divmod(value, self).
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __rfloordiv__(self, value, /)
     |      Return value//self.
     |
     |  __rlshift__(self, value, /)
     |      Return value<<self.
     |
     |  __rmod__(self, value, /)
     |      Return value%self.
     |
     |  __rmul__(self, value, /)
     |      Return value*self.
     |
     |  __ror__(self, value, /)
     |      Return value|self.
     |
     |  __round__(...)
     |      Rounding an Integral returns itself.
     |
     |      Rounding with an ndigits argument also returns an integer.
     |
     |  __rpow__(self, value, mod=None, /)
     |      Return pow(value, self, mod).
     |
     |  __rrshift__(self, value, /)
     |      Return value>>self.
     |
     |  __rshift__(self, value, /)
     |      Return self>>value.
     |
     |  __rsub__(self, value, /)
     |      Return value-self.
     |
     |  __rtruediv__(self, value, /)
     |      Return value/self.
     |
     |  __rxor__(self, value, /)
     |      Return value^self.
     |
     |  __sizeof__(self, /)
     |      Returns size in memory, in bytes.
     |
     |  __sub__(self, value, /)
     |      Return self-value.
     |
     |  __truediv__(self, value, /)
     |      Return self/value.
     |
     |  __trunc__(...)
     |      Truncating an Integral returns itself.
     |
     |  __xor__(self, value, /)
     |      Return self^value.
     |
     |  as_integer_ratio(self, /)
     |      Return a pair of integers, whose ratio is equal to the original int.
     |
     |      The ratio is in lowest terms and has a positive denominator.
     |
     |      >>> (10).as_integer_ratio()
     |      (10, 1)
     |      >>> (-10).as_integer_ratio()
     |      (-10, 1)
     |      >>> (0).as_integer_ratio()
     |      (0, 1)
     |
     |  bit_count(self, /)
     |      Number of ones in the binary representation of the absolute value of self.
     |
     |      Also known as the population count.
     |
     |      >>> bin(13)
     |      '0b1101'
     |      >>> (13).bit_count()
     |      3
     |
     |  bit_length(self, /)
     |      Number of bits necessary to represent self in binary.
     |
     |      >>> bin(37)
     |      '0b100101'
     |      >>> (37).bit_length()
     |      6
     |
     |  conjugate(...)
     |      Returns self, the complex conjugate of any int.
     |
     |  is_integer(self, /)
     |      Returns True. Exists for duck type compatibility with float.is_integer.
     |
     |  to_bytes(self, /, length=1, byteorder='big', *, signed=False)
     |      Return an array of bytes representing an integer.
     |
     |      length
     |        Length of bytes object to use.  An OverflowError is raised if the
     |        integer is not representable with the given number of bytes.  Default
     |        is length 1.
     |      byteorder
     |        The byte order used to represent the integer.  If byteorder is 'big',
     |        the most significant byte is at the beginning of the byte array.  If
     |        byteorder is 'little', the most significant byte is at the end of the
     |        byte array.  To request the native byte order of the host system, use
     |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
     |      signed
     |        Determines whether two's complement is used to represent the integer.
     |        If signed is False and a negative integer is given, an OverflowError
     |        is raised.
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from builtins.int:
     |
     |  from_bytes(bytes, byteorder='big', *, signed=False)
     |      Return the integer represented by the given array of bytes.
     |
     |      bytes
     |        Holds the array of bytes to convert.  The argument must either
     |        support the buffer protocol or be an iterable object producing bytes.
     |        Bytes and bytearray are examples of built-in objects that support the
     |        buffer protocol.
     |      byteorder
     |        The byte order used to represent the integer.  If byteorder is 'big',
     |        the most significant byte is at the beginning of the byte array.  If
     |        byteorder is 'little', the most significant byte is at the end of the
     |        byte array.  To request the native byte order of the host system, use
     |        `sys.byteorder' as the byte order value.  Default is to use 'big'.
     |      signed
     |        Indicates whether two's complement is used to represent the integer.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.int:
     |
     |  __new__(*args, **kwargs) class method of builtins.int
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.int:
     |
     |  denominator
     |      the denominator of a rational number in lowest terms
     |
     |  imag
     |      the imaginary part of a complex number
     |
     |  numerator
     |      the numerator of a rational number in lowest terms
     |
     |  real
     |      the real part of a complex number

DATA
    CMD_ATTRS = 105
    CMD_CLOSE = 4
    CMD_DATA = 103
    CMD_EXTENDED = 200
    CMD_EXTENDED_REPLY = 201
    CMD_FSETSTAT = 10
    CMD_FSTAT = 8
    CMD_HANDLE = 102
    CMD_INIT = 1
    CMD_LSTAT = 7
    CMD_MKDIR = 14
    CMD_NAME = 104
    CMD_NAMES = {1: 'init', 2: 'version', 3: 'open', 4: 'close', 5: 'read'...
    CMD_OPEN = 3
    CMD_OPENDIR = 11
    CMD_READ = 5
    CMD_READDIR = 12
    CMD_READLINK = 19
    CMD_REALPATH = 16
    CMD_REMOVE = 13
    CMD_RENAME = 18
    CMD_RMDIR = 15
    CMD_SETSTAT = 9
    CMD_STAT = 17
    CMD_STATUS = 101
    CMD_SYMLINK = 20
    CMD_VERSION = 2
    CMD_WRITE = 6
    DEBUG = 10
    SFTP_BAD_MESSAGE = 5
    SFTP_CONNECTION_LOST = 7
    SFTP_DESC = ['Success', 'End of file', 'No such file', 'Permission den...
    SFTP_EOF = 1
    SFTP_FAILURE = 4
    SFTP_FLAG_APPEND = 4
    SFTP_FLAG_CREATE = 8
    SFTP_FLAG_EXCL = 32
    SFTP_FLAG_READ = 1
    SFTP_FLAG_TRUNC = 16
    SFTP_FLAG_WRITE = 2
    SFTP_NO_CONNECTION = 6
    SFTP_NO_SUCH_FILE = 2
    SFTP_OK = 0
    SFTP_OP_UNSUPPORTED = 8
    SFTP_PERMISSION_DENIED = 3

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp.py

paramiko.sftp_attr
Python Library Documentation: module paramiko.sftp_attr in paramiko

NAME
    paramiko.sftp_attr

DESCRIPTION
    # Copyright (C) 2003-2006 Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    builtins.object
        SFTPAttributes

    class SFTPAttributes(builtins.object)
     |  Representation of the attributes of a file (or proxied file) for SFTP in
     |  client or server mode.  It attempts to mirror the object returned by
     |  `os.stat` as closely as possible, so it may have the following fields,
     |  with the same meanings as those returned by an `os.stat` object:
     |
     |      - ``st_size``
     |      - ``st_uid``
     |      - ``st_gid``
     |      - ``st_mode``
     |      - ``st_atime``
     |      - ``st_mtime``
     |
     |  Because SFTP allows flags to have other arbitrary named attributes, these
     |  are stored in a dict named ``attr``.  Occasionally, the filename is also
     |  stored, in ``filename``.
     |
     |  Methods defined here:
     |
     |  __init__(self)
     |      Create a new (empty) SFTPAttributes object.  All fields will be empty.
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  __str__(self)
     |      create a unix-style long description of the file (like ls -l)
     |
     |  asbytes(self)
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_stat(obj, filename=None)
     |      Create an `.SFTPAttributes` object from an existing ``stat`` object (an
     |      object returned by `os.stat`).
     |
     |      :param object obj: an object returned by `os.stat` (or equivalent).
     |      :param str filename: the filename associated with this file.
     |      :return: new `.SFTPAttributes` object with the same attribute fields.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  FLAG_AMTIME = 8
     |
     |  FLAG_EXTENDED = 2147483648
     |
     |  FLAG_PERMISSIONS = 4
     |
     |  FLAG_SIZE = 1
     |
     |  FLAG_UIDGID = 2

DATA
    o70 = 56
    o700 = 448
    x80000000 = 2147483648
    xffffffff = 4294967295

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_attr.py

paramiko.sftp_client
Python Library Documentation: module paramiko.sftp_client in paramiko

NAME
    paramiko.sftp_client

DESCRIPTION
    # Copyright (C) 2003-2007  Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of Paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    paramiko.sftp.BaseSFTP(builtins.object)
        SFTPClient(paramiko.sftp.BaseSFTP, paramiko.util.ClosingContextManager)
            SFTP
    paramiko.util.ClosingContextManager(builtins.object)
        SFTPClient(paramiko.sftp.BaseSFTP, paramiko.util.ClosingContextManager)
            SFTP

    class SFTP(SFTPClient)
     |  SFTP(sock)
     |
     |  An alias for `.SFTPClient` for backwards compatibility.
     |
     |  Method resolution order:
     |      SFTP
     |      SFTPClient
     |      paramiko.sftp.BaseSFTP
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods inherited from SFTPClient:
     |
     |  __init__(self, sock)
     |      Create an SFTP client from an existing `.Channel`.  The channel
     |      should already have requested the ``"sftp"`` subsystem.
     |
     |      An alternate way to create an SFTP client context is by using
     |      `from_transport`.
     |
     |      :param .Channel sock: an open `.Channel` using the ``"sftp"`` subsystem
     |
     |      :raises:
     |          `.SSHException` -- if there's an exception while negotiating sftp
     |
     |  chdir(self, path=None)
     |      Change the "current directory" of this SFTP session.  Since SFTP
     |      doesn't really have the concept of a current working directory, this is
     |      emulated by Paramiko.  Once you use this method to set a working
     |      directory, all operations on this `.SFTPClient` object will be relative
     |      to that path. You can pass in ``None`` to stop using a current working
     |      directory.
     |
     |      :param str path: new current working directory
     |
     |      :raises:
     |          ``IOError`` -- if the requested path doesn't exist on the server
     |
     |      .. versionadded:: 1.4
     |
     |  chmod(self, path, mode)
     |      Change the mode (permissions) of a file.  The permissions are
     |      unix-style and identical to those used by Python's `os.chmod`
     |      function.
     |
     |      :param str path: path of the file to change the permissions of
     |      :param int mode: new permissions
     |
     |  chown(self, path, uid, gid)
     |      Change the owner (``uid``) and group (``gid``) of a file.  As with
     |      Python's `os.chown` function, you must pass both arguments, so if you
     |      only want to change one, use `stat` first to retrieve the current
     |      owner and group.
     |
     |      :param str path: path of the file to change the owner and group of
     |      :param int uid: new owner's uid
     |      :param int gid: new group id
     |
     |  close(self)
     |      Close the SFTP session and its underlying channel.
     |
     |      .. versionadded:: 1.4
     |
     |  file = open(self, filename, mode='r', bufsize=-1)
     |
     |  get(self, remotepath, localpath, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
     |      Copy a remote file (``remotepath``) from the SFTP server to the local
     |      host as ``localpath``.  Any exception raised by operations will be
     |      passed through.  This method is primarily provided as a convenience.
     |
     |      :param str remotepath: the remote file to copy
     |      :param str localpath: the destination path on the local host
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool prefetch:
     |          controls whether prefetching is performed (default: True)
     |      :param int max_concurrent_prefetch_requests:
     |          The maximum number of concurrent read requests to prefetch.
     |          When this is ``None`` (the default), do not limit the number of
     |          concurrent prefetch requests. Note: OpenSSH's sftp internally
     |          imposes a limit of 64 concurrent requests, while Paramiko imposes
     |          no limit by default; consider setting a limit if a file can be
     |          successfully received with sftp but hangs with Paramiko.
     |
     |      .. versionadded:: 1.4
     |      .. versionchanged:: 1.7.4
     |          Added the ``callback`` param
     |      .. versionchanged:: 2.8
     |          Added the ``prefetch`` keyword argument.
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_prefetch_requests``.
     |
     |  get_channel(self)
     |      Return the underlying `.Channel` object for this SFTP session.  This
     |      might be useful for doing things like setting a timeout on the channel.
     |
     |      .. versionadded:: 1.7.1
     |
     |  getcwd(self)
     |      Return the "current working directory" for this SFTP session, as
     |      emulated by Paramiko.  If no directory has been set with `chdir`,
     |      this method will return ``None``.
     |
     |      .. versionadded:: 1.4
     |
     |  getfo(self, remotepath, fl, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
     |      Copy a remote file (``remotepath``) from the SFTP server and write to
     |      an open file or file-like object, ``fl``.  Any exception raised by
     |      operations will be passed through.  This method is primarily provided
     |      as a convenience.
     |
     |      :param object remotepath: opened file or file-like object to copy to
     |      :param str fl:
     |          the destination path on the local host or open file object
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool prefetch:
     |          controls whether prefetching is performed (default: True)
     |      :param int max_concurrent_prefetch_requests:
     |          The maximum number of concurrent read requests to prefetch. See
     |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
     |          for details.
     |      :return: the `number <int>` of bytes written to the opened file object
     |
     |      .. versionadded:: 1.10
     |      .. versionchanged:: 2.8
     |          Added the ``prefetch`` keyword argument.
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_prefetch_requests``.
     |
     |  listdir(self, path='.')
     |      Return a list containing the names of the entries in the given
     |      ``path``.
     |
     |      The list is in arbitrary order.  It does not include the special
     |      entries ``'.'`` and ``'..'`` even if they are present in the folder.
     |      This method is meant to mirror ``os.listdir`` as closely as possible.
     |      For a list of full `.SFTPAttributes` objects, see `listdir_attr`.
     |
     |      :param str path: path to list (defaults to ``'.'``)
     |
     |  listdir_attr(self, path='.')
     |      Return a list containing `.SFTPAttributes` objects corresponding to
     |      files in the given ``path``.  The list is in arbitrary order.  It does
     |      not include the special entries ``'.'`` and ``'..'`` even if they are
     |      present in the folder.
     |
     |      The returned `.SFTPAttributes` objects will each have an additional
     |      field: ``longname``, which may contain a formatted string of the file's
     |      attributes, in unix format.  The content of this string will probably
     |      depend on the SFTP server implementation.
     |
     |      :param str path: path to list (defaults to ``'.'``)
     |      :return: list of `.SFTPAttributes` objects
     |
     |      .. versionadded:: 1.2
     |
     |  listdir_iter(self, path='.', read_aheads=50)
     |      Generator version of `.listdir_attr`.
     |
     |      See the API docs for `.listdir_attr` for overall details.
     |
     |      This function adds one more kwarg on top of `.listdir_attr`:
     |      ``read_aheads``, an integer controlling how many
     |      ``SSH_FXP_READDIR`` requests are made to the server. The default of 50
     |      should suffice for most file listings as each request/response cycle
     |      may contain multiple files (dependent on server implementation.)
     |
     |      .. versionadded:: 1.15
     |
     |  lstat(self, path)
     |      Retrieve information about a file on the remote system, without
     |      following symbolic links (shortcuts).  This otherwise behaves exactly
     |      the same as `stat`.
     |
     |      :param str path: the filename to stat
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file
     |
     |  mkdir(self, path, mode=511)
     |      Create a folder (directory) named ``path`` with numeric mode ``mode``.
     |      The default mode is 0777 (octal).  On some systems, mode is ignored.
     |      Where it is used, the current umask value is first masked out.
     |
     |      :param str path: name of the folder to create
     |      :param int mode: permissions (posix-style) for the newly-created folder
     |
     |  normalize(self, path)
     |      Return the normalized path (on the server) of a given path.  This
     |      can be used to quickly resolve symbolic links or determine what the
     |      server is considering to be the "current folder" (by passing ``'.'``
     |      as ``path``).
     |
     |      :param str path: path to be normalized
     |      :return: normalized form of the given path (as a `str`)
     |
     |      :raises: ``IOError`` -- if the path can't be resolved on the server
     |
     |  open(self, filename, mode='r', bufsize=-1)
     |      Open a file on the remote server.  The arguments are the same as for
     |      Python's built-in `python:file` (aka `python:open`).  A file-like
     |      object is returned, which closely mimics the behavior of a normal
     |      Python file object, including the ability to be used as a context
     |      manager.
     |
     |      The mode indicates how the file is to be opened: ``'r'`` for reading,
     |      ``'w'`` for writing (truncating an existing file), ``'a'`` for
     |      appending, ``'r+'`` for reading/writing, ``'w+'`` for reading/writing
     |      (truncating an existing file), ``'a+'`` for reading/appending.  The
     |      Python ``'b'`` flag is ignored, since SSH treats all files as binary.
     |      The ``'U'`` flag is supported in a compatible way.
     |
     |      Since 1.5.2, an ``'x'`` flag indicates that the operation should only
     |      succeed if the file was created and did not previously exist.  This has
     |      no direct mapping to Python's file flags, but is commonly known as the
     |      ``O_EXCL`` flag in posix.
     |
     |      The file will be buffered in standard Python style by default, but
     |      can be altered with the ``bufsize`` parameter.  ``<=0`` turns off
     |      buffering, ``1`` uses line buffering, and any number greater than 1
     |      (``>1``) uses that specific buffer size.
     |
     |      :param str filename: name of the file to open
     |      :param str mode: mode (Python-style) to open in
     |      :param int bufsize: desired buffering (default: ``-1``)
     |      :return: an `.SFTPFile` object representing the open file
     |
     |      :raises: ``IOError`` -- if the file could not be opened.
     |
     |  posix_rename(self, oldpath, newpath)
     |      Rename a file or folder from ``oldpath`` to ``newpath``, following
     |      posix conventions.
     |
     |      :param str oldpath: existing name of the file or folder
     |      :param str newpath: new name for the file or folder, will be
     |          overwritten if it already exists
     |
     |      :raises:
     |          ``IOError`` -- if ``newpath`` is a folder, posix-rename is not
     |          supported by the server or something else goes wrong
     |
     |      :versionadded: 2.2
     |
     |  put(self, localpath, remotepath, callback=None, confirm=True)
     |      Copy a local file (``localpath``) to the SFTP server as ``remotepath``.
     |      Any exception raised by operations will be passed through.  This
     |      method is primarily provided as a convenience.
     |
     |      The SFTP operations use pipelining for speed.
     |
     |      :param str localpath: the local file to copy
     |      :param str remotepath: the destination path on the SFTP server. Note
     |          that the filename should be included. Only specifying a directory
     |          may result in an error.
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool confirm:
     |          whether to do a stat() on the file afterwards to confirm the file
     |          size
     |
     |      :return: an `.SFTPAttributes` object containing attributes about the
     |          given file
     |
     |      .. versionadded:: 1.4
     |      .. versionchanged:: 1.7.4
     |          ``callback`` and rich attribute return value added.
     |      .. versionchanged:: 1.7.7
     |          ``confirm`` param added.
     |
     |  putfo(self, fl, remotepath, file_size=0, callback=None, confirm=True)
     |      Copy the contents of an open file object (``fl``) to the SFTP server as
     |      ``remotepath``. Any exception raised by operations will be passed
     |      through.
     |
     |      The SFTP operations use pipelining for speed.
     |
     |      :param fl: opened file or file-like object to copy
     |      :param str remotepath: the destination path on the SFTP server
     |      :param int file_size:
     |          optional size parameter passed to callback. If none is specified,
     |          size defaults to 0
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |          (since 1.7.4)
     |      :param bool confirm:
     |          whether to do a stat() on the file afterwards to confirm the file
     |          size (since 1.7.7)
     |
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file.
     |
     |      .. versionadded:: 1.10
     |
     |  readlink(self, path)
     |      Return the target of a symbolic link (shortcut).  You can use
     |      `symlink` to create these.  The result may be either an absolute or
     |      relative pathname.
     |
     |      :param str path: path of the symbolic link file
     |      :return: target path, as a `str`
     |
     |  remove(self, path)
     |      Remove the file at the given path.  This only works on files; for
     |      removing folders (directories), use `rmdir`.
     |
     |      :param str path: path (absolute or relative) of the file to remove
     |
     |      :raises: ``IOError`` -- if the path refers to a folder (directory)
     |
     |  rename(self, oldpath, newpath)
     |      Rename a file or folder from ``oldpath`` to ``newpath``.
     |
     |      .. note::
     |          This method implements 'standard' SFTP ``RENAME`` behavior; those
     |          seeking the OpenSSH "POSIX rename" extension behavior should use
     |          `posix_rename`.
     |
     |      :param str oldpath:
     |          existing name of the file or folder
     |      :param str newpath:
     |          new name for the file or folder, must not exist already
     |
     |      :raises:
     |          ``IOError`` -- if ``newpath`` is a folder, or something else goes
     |          wrong
     |
     |  rmdir(self, path)
     |      Remove the folder named ``path``.
     |
     |      :param str path: name of the folder to remove
     |
     |  stat(self, path)
     |      Retrieve information about a file on the remote system.  The return
     |      value is an object whose attributes correspond to the attributes of
     |      Python's ``stat`` structure as returned by ``os.stat``, except that it
     |      contains fewer fields.  An SFTP server may return as much or as little
     |      info as it wants, so the results may vary from server to server.
     |
     |      Unlike a Python `python:stat` object, the result may not be accessed as
     |      a tuple.  This is mostly due to the author's slack factor.
     |
     |      The fields supported are: ``st_mode``, ``st_size``, ``st_uid``,
     |      ``st_gid``, ``st_atime``, and ``st_mtime``.
     |
     |      :param str path: the filename to stat
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file
     |
     |  symlink(self, source, dest)
     |      Create a symbolic link to the ``source`` path at ``destination``.
     |
     |      :param str source: path of the original file
     |      :param str dest: path of the newly created symlink
     |
     |  truncate(self, path, size)
     |      Change the size of the file specified by ``path``.  This usually
     |      extends or shrinks the size of the file, just like the `~file.truncate`
     |      method on Python file objects.
     |
     |      :param str path: path of the file to modify
     |      :param int size: the new size of the file
     |
     |  unlink = remove(self, path)
     |
     |  utime(self, path, times)
     |      Set the access and modified times of the file specified by ``path``.
     |      If ``times`` is ``None``, then the file's access and modified times
     |      are set to the current time.  Otherwise, ``times`` must be a 2-tuple
     |      of numbers, of the form ``(atime, mtime)``, which is used to set the
     |      access and modified times, respectively.  This bizarre API is mimicked
     |      from Python for the sake of consistency -- I apologize.
     |
     |      :param str path: path of the file to modify
     |      :param tuple times:
     |          ``None`` or a tuple of (access time, modified time) in standard
     |          internet epoch time (seconds since 01 January 1970 GMT)
     |
     |  ----------------------------------------------------------------------
     |  Class methods inherited from SFTPClient:
     |
     |  from_transport(t, window_size=None, max_packet_size=None)
     |      Create an SFTP client channel from an open `.Transport`.
     |
     |      Setting the window and packet sizes might affect the transfer speed.
     |      The default settings in the `.Transport` class are the same as in
     |      OpenSSH and should work adequately for both files transfers and
     |      interactive sessions.
     |
     |      :param .Transport t: an open `.Transport` which is already
     |          authenticated
     |      :param int window_size:
     |          optional window size for the `.SFTPClient` session.
     |      :param int max_packet_size:
     |          optional max packet size for the `.SFTPClient` session..
     |
     |      :return:
     |          a new `.SFTPClient` object, referring to an sftp session (channel)
     |          across the transport
     |
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)

    class SFTPClient(paramiko.sftp.BaseSFTP, paramiko.util.ClosingContextManager)
     |  SFTPClient(sock)
     |
     |  SFTP client object.
     |
     |  Used to open an SFTP session across an open SSH `.Transport` and perform
     |  remote file operations.
     |
     |  Instances of this class may be used as context managers.
     |
     |  Method resolution order:
     |      SFTPClient
     |      paramiko.sftp.BaseSFTP
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, sock)
     |      Create an SFTP client from an existing `.Channel`.  The channel
     |      should already have requested the ``"sftp"`` subsystem.
     |
     |      An alternate way to create an SFTP client context is by using
     |      `from_transport`.
     |
     |      :param .Channel sock: an open `.Channel` using the ``"sftp"`` subsystem
     |
     |      :raises:
     |          `.SSHException` -- if there's an exception while negotiating sftp
     |
     |  chdir(self, path=None)
     |      Change the "current directory" of this SFTP session.  Since SFTP
     |      doesn't really have the concept of a current working directory, this is
     |      emulated by Paramiko.  Once you use this method to set a working
     |      directory, all operations on this `.SFTPClient` object will be relative
     |      to that path. You can pass in ``None`` to stop using a current working
     |      directory.
     |
     |      :param str path: new current working directory
     |
     |      :raises:
     |          ``IOError`` -- if the requested path doesn't exist on the server
     |
     |      .. versionadded:: 1.4
     |
     |  chmod(self, path, mode)
     |      Change the mode (permissions) of a file.  The permissions are
     |      unix-style and identical to those used by Python's `os.chmod`
     |      function.
     |
     |      :param str path: path of the file to change the permissions of
     |      :param int mode: new permissions
     |
     |  chown(self, path, uid, gid)
     |      Change the owner (``uid``) and group (``gid``) of a file.  As with
     |      Python's `os.chown` function, you must pass both arguments, so if you
     |      only want to change one, use `stat` first to retrieve the current
     |      owner and group.
     |
     |      :param str path: path of the file to change the owner and group of
     |      :param int uid: new owner's uid
     |      :param int gid: new group id
     |
     |  close(self)
     |      Close the SFTP session and its underlying channel.
     |
     |      .. versionadded:: 1.4
     |
     |  file = open(self, filename, mode='r', bufsize=-1)
     |
     |  get(self, remotepath, localpath, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
     |      Copy a remote file (``remotepath``) from the SFTP server to the local
     |      host as ``localpath``.  Any exception raised by operations will be
     |      passed through.  This method is primarily provided as a convenience.
     |
     |      :param str remotepath: the remote file to copy
     |      :param str localpath: the destination path on the local host
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool prefetch:
     |          controls whether prefetching is performed (default: True)
     |      :param int max_concurrent_prefetch_requests:
     |          The maximum number of concurrent read requests to prefetch.
     |          When this is ``None`` (the default), do not limit the number of
     |          concurrent prefetch requests. Note: OpenSSH's sftp internally
     |          imposes a limit of 64 concurrent requests, while Paramiko imposes
     |          no limit by default; consider setting a limit if a file can be
     |          successfully received with sftp but hangs with Paramiko.
     |
     |      .. versionadded:: 1.4
     |      .. versionchanged:: 1.7.4
     |          Added the ``callback`` param
     |      .. versionchanged:: 2.8
     |          Added the ``prefetch`` keyword argument.
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_prefetch_requests``.
     |
     |  get_channel(self)
     |      Return the underlying `.Channel` object for this SFTP session.  This
     |      might be useful for doing things like setting a timeout on the channel.
     |
     |      .. versionadded:: 1.7.1
     |
     |  getcwd(self)
     |      Return the "current working directory" for this SFTP session, as
     |      emulated by Paramiko.  If no directory has been set with `chdir`,
     |      this method will return ``None``.
     |
     |      .. versionadded:: 1.4
     |
     |  getfo(self, remotepath, fl, callback=None, prefetch=True, max_concurrent_prefetch_requests=None)
     |      Copy a remote file (``remotepath``) from the SFTP server and write to
     |      an open file or file-like object, ``fl``.  Any exception raised by
     |      operations will be passed through.  This method is primarily provided
     |      as a convenience.
     |
     |      :param object remotepath: opened file or file-like object to copy to
     |      :param str fl:
     |          the destination path on the local host or open file object
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool prefetch:
     |          controls whether prefetching is performed (default: True)
     |      :param int max_concurrent_prefetch_requests:
     |          The maximum number of concurrent read requests to prefetch. See
     |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
     |          for details.
     |      :return: the `number <int>` of bytes written to the opened file object
     |
     |      .. versionadded:: 1.10
     |      .. versionchanged:: 2.8
     |          Added the ``prefetch`` keyword argument.
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_prefetch_requests``.
     |
     |  listdir(self, path='.')
     |      Return a list containing the names of the entries in the given
     |      ``path``.
     |
     |      The list is in arbitrary order.  It does not include the special
     |      entries ``'.'`` and ``'..'`` even if they are present in the folder.
     |      This method is meant to mirror ``os.listdir`` as closely as possible.
     |      For a list of full `.SFTPAttributes` objects, see `listdir_attr`.
     |
     |      :param str path: path to list (defaults to ``'.'``)
     |
     |  listdir_attr(self, path='.')
     |      Return a list containing `.SFTPAttributes` objects corresponding to
     |      files in the given ``path``.  The list is in arbitrary order.  It does
     |      not include the special entries ``'.'`` and ``'..'`` even if they are
     |      present in the folder.
     |
     |      The returned `.SFTPAttributes` objects will each have an additional
     |      field: ``longname``, which may contain a formatted string of the file's
     |      attributes, in unix format.  The content of this string will probably
     |      depend on the SFTP server implementation.
     |
     |      :param str path: path to list (defaults to ``'.'``)
     |      :return: list of `.SFTPAttributes` objects
     |
     |      .. versionadded:: 1.2
     |
     |  listdir_iter(self, path='.', read_aheads=50)
     |      Generator version of `.listdir_attr`.
     |
     |      See the API docs for `.listdir_attr` for overall details.
     |
     |      This function adds one more kwarg on top of `.listdir_attr`:
     |      ``read_aheads``, an integer controlling how many
     |      ``SSH_FXP_READDIR`` requests are made to the server. The default of 50
     |      should suffice for most file listings as each request/response cycle
     |      may contain multiple files (dependent on server implementation.)
     |
     |      .. versionadded:: 1.15
     |
     |  lstat(self, path)
     |      Retrieve information about a file on the remote system, without
     |      following symbolic links (shortcuts).  This otherwise behaves exactly
     |      the same as `stat`.
     |
     |      :param str path: the filename to stat
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file
     |
     |  mkdir(self, path, mode=511)
     |      Create a folder (directory) named ``path`` with numeric mode ``mode``.
     |      The default mode is 0777 (octal).  On some systems, mode is ignored.
     |      Where it is used, the current umask value is first masked out.
     |
     |      :param str path: name of the folder to create
     |      :param int mode: permissions (posix-style) for the newly-created folder
     |
     |  normalize(self, path)
     |      Return the normalized path (on the server) of a given path.  This
     |      can be used to quickly resolve symbolic links or determine what the
     |      server is considering to be the "current folder" (by passing ``'.'``
     |      as ``path``).
     |
     |      :param str path: path to be normalized
     |      :return: normalized form of the given path (as a `str`)
     |
     |      :raises: ``IOError`` -- if the path can't be resolved on the server
     |
     |  open(self, filename, mode='r', bufsize=-1)
     |      Open a file on the remote server.  The arguments are the same as for
     |      Python's built-in `python:file` (aka `python:open`).  A file-like
     |      object is returned, which closely mimics the behavior of a normal
     |      Python file object, including the ability to be used as a context
     |      manager.
     |
     |      The mode indicates how the file is to be opened: ``'r'`` for reading,
     |      ``'w'`` for writing (truncating an existing file), ``'a'`` for
     |      appending, ``'r+'`` for reading/writing, ``'w+'`` for reading/writing
     |      (truncating an existing file), ``'a+'`` for reading/appending.  The
     |      Python ``'b'`` flag is ignored, since SSH treats all files as binary.
     |      The ``'U'`` flag is supported in a compatible way.
     |
     |      Since 1.5.2, an ``'x'`` flag indicates that the operation should only
     |      succeed if the file was created and did not previously exist.  This has
     |      no direct mapping to Python's file flags, but is commonly known as the
     |      ``O_EXCL`` flag in posix.
     |
     |      The file will be buffered in standard Python style by default, but
     |      can be altered with the ``bufsize`` parameter.  ``<=0`` turns off
     |      buffering, ``1`` uses line buffering, and any number greater than 1
     |      (``>1``) uses that specific buffer size.
     |
     |      :param str filename: name of the file to open
     |      :param str mode: mode (Python-style) to open in
     |      :param int bufsize: desired buffering (default: ``-1``)
     |      :return: an `.SFTPFile` object representing the open file
     |
     |      :raises: ``IOError`` -- if the file could not be opened.
     |
     |  posix_rename(self, oldpath, newpath)
     |      Rename a file or folder from ``oldpath`` to ``newpath``, following
     |      posix conventions.
     |
     |      :param str oldpath: existing name of the file or folder
     |      :param str newpath: new name for the file or folder, will be
     |          overwritten if it already exists
     |
     |      :raises:
     |          ``IOError`` -- if ``newpath`` is a folder, posix-rename is not
     |          supported by the server or something else goes wrong
     |
     |      :versionadded: 2.2
     |
     |  put(self, localpath, remotepath, callback=None, confirm=True)
     |      Copy a local file (``localpath``) to the SFTP server as ``remotepath``.
     |      Any exception raised by operations will be passed through.  This
     |      method is primarily provided as a convenience.
     |
     |      The SFTP operations use pipelining for speed.
     |
     |      :param str localpath: the local file to copy
     |      :param str remotepath: the destination path on the SFTP server. Note
     |          that the filename should be included. Only specifying a directory
     |          may result in an error.
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |      :param bool confirm:
     |          whether to do a stat() on the file afterwards to confirm the file
     |          size
     |
     |      :return: an `.SFTPAttributes` object containing attributes about the
     |          given file
     |
     |      .. versionadded:: 1.4
     |      .. versionchanged:: 1.7.4
     |          ``callback`` and rich attribute return value added.
     |      .. versionchanged:: 1.7.7
     |          ``confirm`` param added.
     |
     |  putfo(self, fl, remotepath, file_size=0, callback=None, confirm=True)
     |      Copy the contents of an open file object (``fl``) to the SFTP server as
     |      ``remotepath``. Any exception raised by operations will be passed
     |      through.
     |
     |      The SFTP operations use pipelining for speed.
     |
     |      :param fl: opened file or file-like object to copy
     |      :param str remotepath: the destination path on the SFTP server
     |      :param int file_size:
     |          optional size parameter passed to callback. If none is specified,
     |          size defaults to 0
     |      :param callable callback:
     |          optional callback function (form: ``func(int, int)``) that accepts
     |          the bytes transferred so far and the total bytes to be transferred
     |          (since 1.7.4)
     |      :param bool confirm:
     |          whether to do a stat() on the file afterwards to confirm the file
     |          size (since 1.7.7)
     |
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file.
     |
     |      .. versionadded:: 1.10
     |
     |  readlink(self, path)
     |      Return the target of a symbolic link (shortcut).  You can use
     |      `symlink` to create these.  The result may be either an absolute or
     |      relative pathname.
     |
     |      :param str path: path of the symbolic link file
     |      :return: target path, as a `str`
     |
     |  remove(self, path)
     |      Remove the file at the given path.  This only works on files; for
     |      removing folders (directories), use `rmdir`.
     |
     |      :param str path: path (absolute or relative) of the file to remove
     |
     |      :raises: ``IOError`` -- if the path refers to a folder (directory)
     |
     |  rename(self, oldpath, newpath)
     |      Rename a file or folder from ``oldpath`` to ``newpath``.
     |
     |      .. note::
     |          This method implements 'standard' SFTP ``RENAME`` behavior; those
     |          seeking the OpenSSH "POSIX rename" extension behavior should use
     |          `posix_rename`.
     |
     |      :param str oldpath:
     |          existing name of the file or folder
     |      :param str newpath:
     |          new name for the file or folder, must not exist already
     |
     |      :raises:
     |          ``IOError`` -- if ``newpath`` is a folder, or something else goes
     |          wrong
     |
     |  rmdir(self, path)
     |      Remove the folder named ``path``.
     |
     |      :param str path: name of the folder to remove
     |
     |  stat(self, path)
     |      Retrieve information about a file on the remote system.  The return
     |      value is an object whose attributes correspond to the attributes of
     |      Python's ``stat`` structure as returned by ``os.stat``, except that it
     |      contains fewer fields.  An SFTP server may return as much or as little
     |      info as it wants, so the results may vary from server to server.
     |
     |      Unlike a Python `python:stat` object, the result may not be accessed as
     |      a tuple.  This is mostly due to the author's slack factor.
     |
     |      The fields supported are: ``st_mode``, ``st_size``, ``st_uid``,
     |      ``st_gid``, ``st_atime``, and ``st_mtime``.
     |
     |      :param str path: the filename to stat
     |      :return:
     |          an `.SFTPAttributes` object containing attributes about the given
     |          file
     |
     |  symlink(self, source, dest)
     |      Create a symbolic link to the ``source`` path at ``destination``.
     |
     |      :param str source: path of the original file
     |      :param str dest: path of the newly created symlink
     |
     |  truncate(self, path, size)
     |      Change the size of the file specified by ``path``.  This usually
     |      extends or shrinks the size of the file, just like the `~file.truncate`
     |      method on Python file objects.
     |
     |      :param str path: path of the file to modify
     |      :param int size: the new size of the file
     |
     |  unlink = remove(self, path)
     |
     |  utime(self, path, times)
     |      Set the access and modified times of the file specified by ``path``.
     |      If ``times`` is ``None``, then the file's access and modified times
     |      are set to the current time.  Otherwise, ``times`` must be a 2-tuple
     |      of numbers, of the form ``(atime, mtime)``, which is used to set the
     |      access and modified times, respectively.  This bizarre API is mimicked
     |      from Python for the sake of consistency -- I apologize.
     |
     |      :param str path: path of the file to modify
     |      :param tuple times:
     |          ``None`` or a tuple of (access time, modified time) in standard
     |          internet epoch time (seconds since 01 January 1970 GMT)
     |
     |  ----------------------------------------------------------------------
     |  Class methods defined here:
     |
     |  from_transport(t, window_size=None, max_packet_size=None)
     |      Create an SFTP client channel from an open `.Transport`.
     |
     |      Setting the window and packet sizes might affect the transfer speed.
     |      The default settings in the `.Transport` class are the same as in
     |      OpenSSH and should work adequately for both files transfers and
     |      interactive sessions.
     |
     |      :param .Transport t: an open `.Transport` which is already
     |          authenticated
     |      :param int window_size:
     |          optional window size for the `.SFTPClient` session.
     |      :param int max_packet_size:
     |          optional max packet size for the `.SFTPClient` session..
     |
     |      :return:
     |          a new `.SFTPClient` object, referring to an sftp session (channel)
     |          across the transport
     |
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)

FUNCTIONS
    hexlify(...)
        Hexadecimal representation of binary data.

          sep
            An optional single character or byte to separate hex bytes.
          bytes_per_sep
            How many bytes between separators.  Positive values count from the
            right, negative values count from the left.

        The return value is a bytes object.  This function is also
        available as "b2a_hex()".

DATA
    CMD_ATTRS = 105
    CMD_CLOSE = 4
    CMD_EXTENDED = 200
    CMD_HANDLE = 102
    CMD_LSTAT = 7
    CMD_MKDIR = 14
    CMD_NAME = 104
    CMD_OPEN = 3
    CMD_OPENDIR = 11
    CMD_READDIR = 12
    CMD_READLINK = 19
    CMD_REALPATH = 16
    CMD_REMOVE = 13
    CMD_RENAME = 18
    CMD_RMDIR = 15
    CMD_SETSTAT = 9
    CMD_STAT = 17
    CMD_STATUS = 101
    CMD_SYMLINK = 20
    DEBUG = 10
    INFO = 20
    SFTP_EOF = 1
    SFTP_FLAG_APPEND = 4
    SFTP_FLAG_CREATE = 8
    SFTP_FLAG_EXCL = 32
    SFTP_FLAG_READ = 1
    SFTP_FLAG_TRUNC = 16
    SFTP_FLAG_WRITE = 2
    SFTP_NO_SUCH_FILE = 2
    SFTP_OK = 0
    SFTP_PERMISSION_DENIED = 3
    b_slash = b'/'
    o777 = 511

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_client.py

paramiko.sftp_file
Python Library Documentation: module paramiko.sftp_file in paramiko

NAME
    paramiko.sftp_file - SFTP file object

CLASSES
    paramiko.file.BufferedFile(paramiko.util.ClosingContextManager)
        SFTPFile

    class SFTPFile(paramiko.file.BufferedFile)
     |  SFTPFile(sftp, handle, mode='r', bufsize=-1)
     |
     |  Proxy object for a file on the remote server, in client mode SFTP.
     |
     |  Instances of this class may be used as context managers in the same way
     |  that built-in Python file objects are.
     |
     |  Method resolution order:
     |      SFTPFile
     |      paramiko.file.BufferedFile
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __del__(self)
     |
     |  __init__(self, sftp, handle, mode='r', bufsize=-1)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  check(self, hash_algorithm, offset=0, length=0, block_size=0)
     |      Ask the server for a hash of a section of this file.  This can be used
     |      to verify a successful upload or download, or for various rsync-like
     |      operations.
     |
     |      The file is hashed from ``offset``, for ``length`` bytes.
     |      If ``length`` is 0, the remainder of the file is hashed.  Thus, if both
     |      ``offset`` and ``length`` are zero, the entire file is hashed.
     |
     |      Normally, ``block_size`` will be 0 (the default), and this method will
     |      return a byte string representing the requested hash (for example, a
     |      string of length 16 for MD5, or 20 for SHA-1).  If a non-zero
     |      ``block_size`` is given, each chunk of the file (from ``offset`` to
     |      ``offset + length``) of ``block_size`` bytes is computed as a separate
     |      hash.  The hash results are all concatenated and returned as a single
     |      string.
     |
     |      For example, ``check('sha1', 0, 1024, 512)`` will return a string of
     |      length 40.  The first 20 bytes will be the SHA-1 of the first 512 bytes
     |      of the file, and the last 20 bytes will be the SHA-1 of the next 512
     |      bytes.
     |
     |      :param str hash_algorithm:
     |          the name of the hash algorithm to use (normally ``"sha1"`` or
     |          ``"md5"``)
     |      :param offset:
     |          offset into the file to begin hashing (0 means to start from the
     |          beginning)
     |      :param length:
     |          number of bytes to hash (0 means continue to the end of the file)
     |      :param int block_size:
     |          number of bytes to hash per result (must not be less than 256; 0
     |          means to compute only one hash of the entire segment)
     |      :return:
     |          `str` of bytes representing the hash of each block, concatenated
     |          together
     |
     |      :raises:
     |          ``IOError`` -- if the server doesn't support the "check-file"
     |          extension, or possibly doesn't support the hash algorithm requested
     |
     |      .. note:: Many (most?) servers don't support this extension yet.
     |
     |      .. versionadded:: 1.4
     |
     |  chmod(self, mode)
     |      Change the mode (permissions) of this file.  The permissions are
     |      unix-style and identical to those used by Python's `os.chmod`
     |      function.
     |
     |      :param int mode: new permissions
     |
     |  chown(self, uid, gid)
     |      Change the owner (``uid``) and group (``gid``) of this file.  As with
     |      Python's `os.chown` function, you must pass both arguments, so if you
     |      only want to change one, use `stat` first to retrieve the current
     |      owner and group.
     |
     |      :param int uid: new owner's uid
     |      :param int gid: new group id
     |
     |  close(self)
     |      Close the file.
     |
     |  gettimeout(self)
     |      Returns the timeout in seconds (as a `float`) associated with the
     |      socket or ssh `.Channel` used for this file.
     |
     |      .. seealso:: `.Channel.gettimeout`
     |
     |  prefetch(self, file_size=None, max_concurrent_requests=None)
     |      Pre-fetch the remaining contents of this file in anticipation of future
     |      `.read` calls.  If reading the entire file, pre-fetching can
     |      dramatically improve the download speed by avoiding roundtrip latency.
     |      The file's contents are incrementally buffered in a background thread.
     |
     |      The prefetched data is stored in a buffer until read via the `.read`
     |      method.  Once data has been read, it's removed from the buffer.  The
     |      data may be read in a random order (using `.seek`); chunks of the
     |      buffer that haven't been read will continue to be buffered.
     |
     |      :param int file_size:
     |          When this is ``None`` (the default), this method calls `stat` to
     |          determine the remote file size. In some situations, doing so can
     |          cause exceptions or hangs (see `#562
     |          <https://github.com/paramiko/paramiko/pull/562>`_); as a
     |          workaround, one may call `stat` explicitly and pass its value in
     |          via this parameter.
     |      :param int max_concurrent_requests:
     |          The maximum number of concurrent read requests to prefetch. See
     |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
     |          for details.
     |
     |      .. versionadded:: 1.5.1
     |      .. versionchanged:: 1.16.0
     |          The ``file_size`` parameter was added (with no default value).
     |      .. versionchanged:: 1.16.1
     |          The ``file_size`` parameter was made optional for backwards
     |          compatibility.
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_requests``.
     |
     |  readv(self, chunks, max_concurrent_prefetch_requests=None)
     |      Read a set of blocks from the file by (offset, length).  This is more
     |      efficient than doing a series of `.seek` and `.read` calls, since the
     |      prefetch machinery is used to retrieve all the requested blocks at
     |      once.
     |
     |      :param chunks:
     |          a list of ``(offset, length)`` tuples indicating which sections of
     |          the file to read
     |      :param int max_concurrent_prefetch_requests:
     |          The maximum number of concurrent read requests to prefetch. See
     |          `.SFTPClient.get` (its ``max_concurrent_prefetch_requests`` param)
     |          for details.
     |      :return: a list of blocks read, in the same order as in ``chunks``
     |
     |      .. versionadded:: 1.5.4
     |      .. versionchanged:: 3.3
     |          Added ``max_concurrent_prefetch_requests``.
     |
     |  seek(self, offset, whence=0)
     |      Set the file's current position.
     |
     |      See `file.seek` for details.
     |
     |  seekable(self)
     |      Check if the file supports random access.
     |
     |      :return:
     |          `True` if the file supports random access. If `False`,
     |          :meth:`seek` will raise an exception
     |
     |  set_pipelined(self, pipelined=True)
     |      Turn on/off the pipelining of write operations to this file.  When
     |      pipelining is on, paramiko won't wait for the server response after
     |      each write operation.  Instead, they're collected as they come in. At
     |      the first non-write operation (including `.close`), all remaining
     |      server responses are collected.  This means that if there was an error
     |      with one of your later writes, an exception might be thrown from within
     |      `.close` instead of `.write`.
     |
     |      By default, files are not pipelined.
     |
     |      :param bool pipelined:
     |          ``True`` if pipelining should be turned on for this file; ``False``
     |          otherwise
     |
     |      .. versionadded:: 1.5
     |
     |  setblocking(self, blocking)
     |      Set blocking or non-blocking mode on the underiying socket or ssh
     |      `.Channel`.
     |
     |      :param int blocking:
     |          0 to set non-blocking mode; non-0 to set blocking mode.
     |
     |      .. seealso:: `.Channel.setblocking`
     |
     |  settimeout(self, timeout)
     |      Set a timeout on read/write operations on the underlying socket or
     |      ssh `.Channel`.
     |
     |      :param float timeout:
     |          seconds to wait for a pending read/write operation before raising
     |          ``socket.timeout``, or ``None`` for no timeout
     |
     |      .. seealso:: `.Channel.settimeout`
     |
     |  stat(self)
     |      Retrieve information about this file from the remote system.  This is
     |      exactly like `.SFTPClient.stat`, except that it operates on an
     |      already-open file.
     |
     |      :returns:
     |          an `.SFTPAttributes` object containing attributes about this file.
     |
     |  truncate(self, size)
     |      Change the size of this file.  This usually extends
     |      or shrinks the size of the file, just like the ``truncate()`` method on
     |      Python file objects.
     |
     |      :param size: the new size of the file
     |
     |  utime(self, times)
     |      Set the access and modified times of this file.  If
     |      ``times`` is ``None``, then the file's access and modified times are
     |      set to the current time.  Otherwise, ``times`` must be a 2-tuple of
     |      numbers, of the form ``(atime, mtime)``, which is used to set the
     |      access and modified times, respectively.  This bizarre API is mimicked
     |      from Python for the sake of consistency -- I apologize.
     |
     |      :param tuple times:
     |          ``None`` or a tuple of (access time, modified time) in standard
     |          internet epoch time (seconds since 01 January 1970 GMT)
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  MAX_REQUEST_SIZE = 32768
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.file.BufferedFile:
     |
     |  __iter__(self)
     |      Returns an iterator that can be used to iterate over the lines in this
     |      file.  This iterator happens to return the file itself, since a file is
     |      its own iterator.
     |
     |      :raises: ``ValueError`` -- if the file is closed.
     |
     |  __next__(self)
     |      Returns the next line from the input, or raises ``StopIteration``
     |      when EOF is hit.  Unlike python file objects, it's okay to mix
     |      calls to `.next` and `.readline`.
     |
     |      :raises: ``StopIteration`` -- when the end of the file is reached.
     |
     |      :returns:
     |          a line (`str`, or `bytes` if the file was opened in binary mode)
     |          read from the file.
     |
     |  flush(self)
     |      Write out any data in the write buffer.  This may do nothing if write
     |      buffering is not turned on.
     |
     |  read(self, size=None)
     |      Read at most ``size`` bytes from the file (less if we hit the end of
     |      the file first).  If the ``size`` argument is negative or omitted,
     |      read all the remaining data in the file.
     |
     |      .. note::
     |          ``'b'`` mode flag is ignored (``self.FLAG_BINARY`` in
     |          ``self._flags``), because SSH treats all files as binary, since we
     |          have no idea what encoding the file is in, or even if the file is
     |          text data.
     |
     |      :param int size: maximum number of bytes to read
     |      :returns:
     |          data read from the file (as bytes), or an empty string if EOF was
     |          encountered immediately
     |
     |  readable(self)
     |      Check if the file can be read from.
     |
     |      :returns:
     |          `True` if the file can be read from. If `False`, `read` will raise
     |          an exception.
     |
     |  readinto(self, buff)
     |      Read up to ``len(buff)`` bytes into ``bytearray`` *buff* and return the
     |      number of bytes read.
     |
     |      :returns:
     |          The number of bytes read.
     |
     |  readline(self, size=None)
     |      Read one entire line from the file.  A trailing newline character is
     |      kept in the string (but may be absent when a file ends with an
     |      incomplete line).  If the size argument is present and non-negative, it
     |      is a maximum byte count (including the trailing newline) and an
     |      incomplete line may be returned.  An empty string is returned only when
     |      EOF is encountered immediately.
     |
     |      .. note::
     |          Unlike stdio's ``fgets``, the returned string contains null
     |          characters (``'\0'``) if they occurred in the input.
     |
     |      :param int size: maximum length of returned string.
     |      :returns:
     |          next line of the file, or an empty string if the end of the
     |          file has been reached.
     |
     |          If the file was opened in binary (``'b'``) mode: bytes are returned
     |          Else: the encoding of the file is assumed to be UTF-8 and character
     |          strings (`str`) are returned
     |
     |  readlines(self, sizehint=None)
     |      Read all remaining lines using `readline` and return them as a list.
     |      If the optional ``sizehint`` argument is present, instead of reading up
     |      to EOF, whole lines totalling approximately sizehint bytes (possibly
     |      after rounding up to an internal buffer size) are read.
     |
     |      :param int sizehint: desired maximum number of bytes to read.
     |      :returns: list of lines read from the file.
     |
     |  tell(self)
     |      Return the file's current position.  This may not be accurate or
     |      useful if the underlying file doesn't support random access, or was
     |      opened in append mode.
     |
     |      :returns: file position (`number <int>` of bytes).
     |
     |  writable(self)
     |      Check if the file can be written to.
     |
     |      :returns:
     |          `True` if the file can be written to. If `False`, `write` will
     |          raise an exception.
     |
     |  write(self, data)
     |      Write data to the file.  If write buffering is on (``bufsize`` was
     |      specified and non-zero), some or all of the data may not actually be
     |      written yet.  (Use `flush` or `close` to force buffered data to be
     |      written out.)
     |
     |      :param data: ``str``/``bytes`` data to write
     |
     |  writelines(self, sequence)
     |      Write a sequence of strings to the file.  The sequence can be any
     |      iterable object producing strings, typically a list of strings.  (The
     |      name is intended to match `readlines`; `writelines` does not add line
     |      separators.)
     |
     |      :param sequence: an iterable sequence of strings.
     |
     |  xreadlines(self)
     |      Identical to ``iter(f)``.  This is a deprecated file interface that
     |      predates Python iterator support.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from paramiko.file.BufferedFile:
     |
     |  closed
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes inherited from paramiko.file.BufferedFile:
     |
     |  FLAG_APPEND = 4
     |
     |  FLAG_BINARY = 16
     |
     |  FLAG_BUFFERED = 32
     |
     |  FLAG_LINE_BUFFERED = 64
     |
     |  FLAG_READ = 1
     |
     |  FLAG_UNIVERSAL_NEWLINE = 128
     |
     |  FLAG_WRITE = 2
     |
     |  SEEK_CUR = 1
     |
     |  SEEK_END = 2
     |
     |  SEEK_SET = 0
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    hexlify(...)
        Hexadecimal representation of binary data.

          sep
            An optional single character or byte to separate hex bytes.
          bytes_per_sep
            How many bytes between separators.  Positive values count from the
            right, negative values count from the left.

        The return value is a bytes object.  This function is also
        available as "b2a_hex()".

DATA
    CMD_ATTRS = 105
    CMD_CLOSE = 4
    CMD_DATA = 103
    CMD_EXTENDED = 200
    CMD_FSETSTAT = 10
    CMD_FSTAT = 8
    CMD_READ = 5
    CMD_STATUS = 101
    CMD_WRITE = 6
    DEBUG = 10
    io_sleep = 0.01

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_file.py

paramiko.sftp_handle
Python Library Documentation: module paramiko.sftp_handle in paramiko

NAME
    paramiko.sftp_handle - Abstraction of an SFTP file handle (for server mode).

CLASSES
    paramiko.util.ClosingContextManager(builtins.object)
        SFTPHandle

    class SFTPHandle(paramiko.util.ClosingContextManager)
     |  SFTPHandle(flags=0)
     |
     |  Abstract object representing a handle to an open file (or folder) in an
     |  SFTP server implementation.  Each handle has a string representation used
     |  by the client to refer to the underlying file.
     |
     |  Server implementations can (and should) subclass SFTPHandle to implement
     |  features of a file handle, like `stat` or `chattr`.
     |
     |  Instances of this class may be used as context managers.
     |
     |  Method resolution order:
     |      SFTPHandle
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, flags=0)
     |      Create a new file handle representing a local file being served over
     |      SFTP.  If ``flags`` is passed in, it's used to determine if the file
     |      is open in append mode.
     |
     |      :param int flags: optional flags as passed to
     |          `.SFTPServerInterface.open`
     |
     |  chattr(self, attr)
     |      Change the attributes of this file.  The ``attr`` object will contain
     |      only those fields provided by the client in its request, so you should
     |      check for the presence of fields before using them.
     |
     |      :param .SFTPAttributes attr: the attributes to change on this file.
     |      :return: an `int` error code like ``SFTP_OK``.
     |
     |  close(self)
     |      When a client closes a file, this method is called on the handle.
     |      Normally you would use this method to close the underlying OS level
     |      file object(s).
     |
     |      The default implementation checks for attributes on ``self`` named
     |      ``readfile`` and/or ``writefile``, and if either or both are present,
     |      their ``close()`` methods are called.  This means that if you are
     |      using the default implementations of `read` and `write`, this
     |      method's default implementation should be fine also.
     |
     |  read(self, offset, length)
     |      Read up to ``length`` bytes from this file, starting at position
     |      ``offset``.  The offset may be a Python long, since SFTP allows it
     |      to be 64 bits.
     |
     |      If the end of the file has been reached, this method may return an
     |      empty string to signify EOF, or it may also return ``SFTP_EOF``.
     |
     |      The default implementation checks for an attribute on ``self`` named
     |      ``readfile``, and if present, performs the read operation on the Python
     |      file-like object found there.  (This is meant as a time saver for the
     |      common case where you are wrapping a Python file object.)
     |
     |      :param offset: position in the file to start reading from.
     |      :param int length: number of bytes to attempt to read.
     |      :return: the `bytes` read, or an error code `int`.
     |
     |  stat(self)
     |      Return an `.SFTPAttributes` object referring to this open file, or an
     |      error code.  This is equivalent to `.SFTPServerInterface.stat`, except
     |      it's called on an open file instead of a path.
     |
     |      :return:
     |          an attributes object for the given file, or an SFTP error code
     |          (like ``SFTP_PERMISSION_DENIED``).
     |      :rtype: `.SFTPAttributes` or error code
     |
     |  write(self, offset, data)
     |      Write ``data`` into this file at position ``offset``.  Extending the
     |      file past its original end is expected.  Unlike Python's normal
     |      ``write()`` methods, this method cannot do a partial write: it must
     |      write all of ``data`` or else return an error.
     |
     |      The default implementation checks for an attribute on ``self`` named
     |      ``writefile``, and if present, performs the write operation on the
     |      Python file-like object found there.  The attribute is named
     |      differently from ``readfile`` to make it easy to implement read-only
     |      (or write-only) files, but if both attributes are present, they should
     |      refer to the same file.
     |
     |      :param offset: position in the file to start reading from.
     |      :param bytes data: data to write into the file.
     |      :return: an SFTP error code like ``SFTP_OK``.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.util.ClosingContextManager:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

DATA
    SFTP_OK = 0
    SFTP_OP_UNSUPPORTED = 8

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_handle.py

paramiko.sftp_server
Python Library Documentation: module paramiko.sftp_server in paramiko

NAME
    paramiko.sftp_server - Server-mode SFTP support.

CLASSES
    paramiko.server.SubsystemHandler(threading.Thread)
        SFTPServer(paramiko.sftp.BaseSFTP, paramiko.server.SubsystemHandler)
    paramiko.sftp.BaseSFTP(builtins.object)
        SFTPServer(paramiko.sftp.BaseSFTP, paramiko.server.SubsystemHandler)

    class SFTPServer(paramiko.sftp.BaseSFTP, paramiko.server.SubsystemHandler)
     |  SFTPServer(channel, name, server, sftp_si=<class 'paramiko.sftp_si.SFTPServerInterface'>, *args, **kwargs)
     |
     |  Server-side SFTP subsystem support.  Since this is a `.SubsystemHandler`,
     |  it can be (and is meant to be) set as the handler for ``"sftp"`` requests.
     |  Use `.Transport.set_subsystem_handler` to activate this class.
     |
     |  Method resolution order:
     |      SFTPServer
     |      paramiko.sftp.BaseSFTP
     |      paramiko.server.SubsystemHandler
     |      threading.Thread
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, channel, name, server, sftp_si=<class 'paramiko.sftp_si.SFTPServerInterface'>, *args, **kwargs)
     |      The constructor for SFTPServer is meant to be called from within the
     |      `.Transport` as a subsystem handler.  ``server`` and any additional
     |      parameters or keyword parameters are passed from the original call to
     |      `.Transport.set_subsystem_handler`.
     |
     |      :param .Channel channel: channel passed from the `.Transport`.
     |      :param str name: name of the requested subsystem.
     |      :param .ServerInterface server:
     |          the server object associated with this channel and subsystem
     |      :param sftp_si:
     |          a subclass of `.SFTPServerInterface` to use for handling individual
     |          requests.
     |
     |  finish_subsystem(self)
     |      Perform any cleanup at the end of a subsystem.  The default
     |      implementation just closes the channel.
     |
     |      .. versionadded:: 1.1
     |
     |  start_subsystem(self, name, transport, channel)
     |      Process an ssh subsystem in server mode.  This method is called on a
     |      new object (and in a new thread) for each subsystem request.  It is
     |      assumed that all subsystem logic will take place here, and when the
     |      subsystem is finished, this method will return.  After this method
     |      returns, the channel is closed.
     |
     |      The combination of ``transport`` and ``channel`` are unique; this
     |      handler corresponds to exactly one `.Channel` on one `.Transport`.
     |
     |      .. note::
     |          It is the responsibility of this method to exit if the underlying
     |          `.Transport` is closed.  This can be done by checking
     |          `.Transport.is_active` or noticing an EOF on the `.Channel`.  If
     |          this method loops forever without checking for this case, your
     |          Python interpreter may refuse to exit because this thread will
     |          still be running.
     |
     |      :param str name: name of the requested subsystem.
     |      :param .Transport transport: the server-mode `.Transport`.
     |      :param .Channel channel: the channel associated with this subsystem
     |          request.
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  convert_errno(e)
     |      Convert an errno value (as from an ``OSError`` or ``IOError``) into a
     |      standard SFTP result code.  This is a convenience function for trapping
     |      exceptions in server code and returning an appropriate result.
     |
     |      :param int e: an errno code, as from ``OSError.errno``.
     |      :return: an `int` SFTP error code like ``SFTP_NO_SUCH_FILE``.
     |
     |  set_file_attr(filename, attr)
     |      Change a file's attributes on the local filesystem.  The contents of
     |      ``attr`` are used to change the permissions, owner, group ownership,
     |      and/or modification & access time of the file, depending on which
     |      attributes are present in ``attr``.
     |
     |      This is meant to be a handy helper function for translating SFTP file
     |      requests into local file operations.
     |
     |      :param str filename:
     |          name of the file to alter (should usually be an absolute path).
     |      :param .SFTPAttributes attr: attributes to change.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from paramiko.sftp.BaseSFTP:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.server.SubsystemHandler:
     |
     |  get_server(self)
     |      Return the `.ServerInterface` object associated with this channel and
     |      subsystem.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  __repr__(self)
     |      Return repr(self).
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.

FUNCTIONS
    md5 = openssl_md5(string=b'', *, usedforsecurity=True)
        Returns a md5 hash object; optionally initialized with a string

    sha1 = openssl_sha1(string=b'', *, usedforsecurity=True)
        Returns a sha1 hash object; optionally initialized with a string

DATA
    CMD_ATTRS = 105
    CMD_CLOSE = 4
    CMD_DATA = 103
    CMD_EXTENDED = 200
    CMD_EXTENDED_REPLY = 201
    CMD_FSETSTAT = 10
    CMD_FSTAT = 8
    CMD_HANDLE = 102
    CMD_LSTAT = 7
    CMD_MKDIR = 14
    CMD_NAME = 104
    CMD_NAMES = {1: 'init', 2: 'version', 3: 'open', 4: 'close', 5: 'read'...
    CMD_OPEN = 3
    CMD_OPENDIR = 11
    CMD_READ = 5
    CMD_READDIR = 12
    CMD_READLINK = 19
    CMD_REALPATH = 16
    CMD_REMOVE = 13
    CMD_RENAME = 18
    CMD_RMDIR = 15
    CMD_SETSTAT = 9
    CMD_STAT = 17
    CMD_STATUS = 101
    CMD_SYMLINK = 20
    CMD_WRITE = 6
    DEBUG = 10
    SFTP_BAD_MESSAGE = 5
    SFTP_DESC = ['Success', 'End of file', 'No such file', 'Permission den...
    SFTP_EOF = 1
    SFTP_FAILURE = 4
    SFTP_FLAG_APPEND = 4
    SFTP_FLAG_CREATE = 8
    SFTP_FLAG_EXCL = 32
    SFTP_FLAG_READ = 1
    SFTP_FLAG_TRUNC = 16
    SFTP_FLAG_WRITE = 2
    SFTP_NO_SUCH_FILE = 2
    SFTP_OK = 0
    SFTP_OP_UNSUPPORTED = 8
    SFTP_PERMISSION_DENIED = 3

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_server.py

paramiko.sftp_si
Python Library Documentation: module paramiko.sftp_si in paramiko

NAME
    paramiko.sftp_si - An interface to override for SFTP server support.

CLASSES
    builtins.object
        SFTPServerInterface

    class SFTPServerInterface(builtins.object)
     |  SFTPServerInterface(server, *args, **kwargs)
     |
     |  This class defines an interface for controlling the behavior of paramiko
     |  when using the `.SFTPServer` subsystem to provide an SFTP server.
     |
     |  Methods on this class are called from the SFTP session's thread, so you can
     |  block as long as necessary without affecting other sessions (even other
     |  SFTP sessions).  However, raising an exception will usually cause the SFTP
     |  session to abruptly end, so you will usually want to catch exceptions and
     |  return an appropriate error code.
     |
     |  All paths are in string form instead of unicode because not all SFTP
     |  clients & servers obey the requirement that paths be encoded in UTF-8.
     |
     |  Methods defined here:
     |
     |  __init__(self, server, *args, **kwargs)
     |      Create a new SFTPServerInterface object.  This method does nothing by
     |      default and is meant to be overridden by subclasses.
     |
     |      :param .ServerInterface server:
     |          the server object associated with this channel and SFTP subsystem
     |
     |  canonicalize(self, path)
     |      Return the canonical form of a path on the server.  For example,
     |      if the server's home folder is ``/home/foo``, the path
     |      ``"../betty"`` would be canonicalized to ``"/home/betty"``.  Note
     |      the obvious security issues: if you're serving files only from a
     |      specific folder, you probably don't want this method to reveal path
     |      names outside that folder.
     |
     |      You may find the Python methods in ``os.path`` useful, especially
     |      ``os.path.normpath`` and ``os.path.realpath``.
     |
     |      The default implementation returns ``os.path.normpath('/' + path)``.
     |
     |  chattr(self, path, attr)
     |      Change the attributes of a file.  The ``attr`` object will contain
     |      only those fields provided by the client in its request, so you
     |      should check for the presence of fields before using them.
     |
     |      :param str path:
     |          requested path (relative or absolute) of the file to change.
     |      :param attr:
     |          requested attributes to change on the file (an `.SFTPAttributes`
     |          object)
     |      :return: an error code `int` like ``SFTP_OK``.
     |
     |  list_folder(self, path)
     |      Return a list of files within a given folder.  The ``path`` will use
     |      posix notation (``"/"`` separates folder names) and may be an absolute
     |      or relative path.
     |
     |      The list of files is expected to be a list of `.SFTPAttributes`
     |      objects, which are similar in structure to the objects returned by
     |      ``os.stat``.  In addition, each object should have its ``filename``
     |      field filled in, since this is important to a directory listing and
     |      not normally present in ``os.stat`` results.  The method
     |      `.SFTPAttributes.from_stat` will usually do what you want.
     |
     |      In case of an error, you should return one of the ``SFTP_*`` error
     |      codes, such as ``SFTP_PERMISSION_DENIED``.
     |
     |      :param str path: the requested path (relative or absolute) to be
     |          listed.
     |      :return:
     |          a list of the files in the given folder, using `.SFTPAttributes`
     |          objects.
     |
     |      .. note::
     |          You should normalize the given ``path`` first (see the `os.path`
     |          module) and check appropriate permissions before returning the list
     |          of files.  Be careful of malicious clients attempting to use
     |          relative paths to escape restricted folders, if you're doing a
     |          direct translation from the SFTP server path to your local
     |          filesystem.
     |
     |  lstat(self, path)
     |      Return an `.SFTPAttributes` object for a path on the server, or an
     |      error code.  If your server supports symbolic links (also known as
     |      "aliases"), you should not follow them -- instead, you should
     |      return data on the symlink or alias itself.  (`stat` is the
     |      corresponding call that follows symlinks/aliases.)
     |
     |      :param str path:
     |          the requested path (relative or absolute) to fetch file statistics
     |          for.
     |      :type path: str
     |      :return:
     |          an `.SFTPAttributes` object for the given file, or an SFTP error
     |          code (like ``SFTP_PERMISSION_DENIED``).
     |
     |  mkdir(self, path, attr)
     |      Create a new directory with the given attributes.  The ``attr``
     |      object may be considered a "hint" and ignored.
     |
     |      The ``attr`` object will contain only those fields provided by the
     |      client in its request, so you should use ``hasattr`` to check for
     |      the presence of fields before using them.  In some cases, the ``attr``
     |      object may be completely empty.
     |
     |      :param str path:
     |          requested path (relative or absolute) of the new folder.
     |      :param .SFTPAttributes attr: requested attributes of the new folder.
     |      :return: an SFTP error code `int` like ``SFTP_OK``.
     |
     |  open(self, path, flags, attr)
     |      Open a file on the server and create a handle for future operations
     |      on that file.  On success, a new object subclassed from `.SFTPHandle`
     |      should be returned.  This handle will be used for future operations
     |      on the file (read, write, etc).  On failure, an error code such as
     |      ``SFTP_PERMISSION_DENIED`` should be returned.
     |
     |      ``flags`` contains the requested mode for opening (read-only,
     |      write-append, etc) as a bitset of flags from the ``os`` module:
     |
     |          - ``os.O_RDONLY``
     |          - ``os.O_WRONLY``
     |          - ``os.O_RDWR``
     |          - ``os.O_APPEND``
     |          - ``os.O_CREAT``
     |          - ``os.O_TRUNC``
     |          - ``os.O_EXCL``
     |
     |      (One of ``os.O_RDONLY``, ``os.O_WRONLY``, or ``os.O_RDWR`` will always
     |      be set.)
     |
     |      The ``attr`` object contains requested attributes of the file if it
     |      has to be created.  Some or all attribute fields may be missing if
     |      the client didn't specify them.
     |
     |      .. note:: The SFTP protocol defines all files to be in "binary" mode.
     |          There is no equivalent to Python's "text" mode.
     |
     |      :param str path:
     |          the requested path (relative or absolute) of the file to be opened.
     |      :param int flags:
     |          flags or'd together from the ``os`` module indicating the requested
     |          mode for opening the file.
     |      :param .SFTPAttributes attr:
     |          requested attributes of the file if it is newly created.
     |      :return: a new `.SFTPHandle` or error code.
     |
     |  posix_rename(self, oldpath, newpath)
     |      Rename (or move) a file, following posix conventions. If newpath
     |      already exists, it will be overwritten.
     |
     |      :param str oldpath:
     |          the requested path (relative or absolute) of the existing file.
     |      :param str newpath: the requested new path of the file.
     |      :return: an SFTP error code `int` like ``SFTP_OK``.
     |
     |      :versionadded: 2.2
     |
     |  readlink(self, path)
     |      Return the target of a symbolic link (or shortcut) on the server.
     |      If the specified path doesn't refer to a symbolic link, an error
     |      should be returned.
     |
     |      :param str path: path (relative or absolute) of the symbolic link.
     |      :return:
     |          the target `str` path of the symbolic link, or an error code like
     |          ``SFTP_NO_SUCH_FILE``.
     |
     |  remove(self, path)
     |      Delete a file, if possible.
     |
     |      :param str path:
     |          the requested path (relative or absolute) of the file to delete.
     |      :return: an SFTP error code `int` like ``SFTP_OK``.
     |
     |  rename(self, oldpath, newpath)
     |      Rename (or move) a file.  The SFTP specification implies that this
     |      method can be used to move an existing file into a different folder,
     |      and since there's no other (easy) way to move files via SFTP, it's
     |      probably a good idea to implement "move" in this method too, even for
     |      files that cross disk partition boundaries, if at all possible.
     |
     |      .. note:: You should return an error if a file with the same name as
     |          ``newpath`` already exists.  (The rename operation should be
     |          non-desctructive.)
     |
     |      .. note::
     |          This method implements 'standard' SFTP ``RENAME`` behavior; those
     |          seeking the OpenSSH "POSIX rename" extension behavior should use
     |          `posix_rename`.
     |
     |      :param str oldpath:
     |          the requested path (relative or absolute) of the existing file.
     |      :param str newpath: the requested new path of the file.
     |      :return: an SFTP error code `int` like ``SFTP_OK``.
     |
     |  rmdir(self, path)
     |      Remove a directory if it exists.  The ``path`` should refer to an
     |      existing, empty folder -- otherwise this method should return an
     |      error.
     |
     |      :param str path:
     |          requested path (relative or absolute) of the folder to remove.
     |      :return: an SFTP error code `int` like ``SFTP_OK``.
     |
     |  session_ended(self)
     |      The SFTP server session has just ended, either cleanly or via an
     |      exception.  This method is meant to be overridden to perform any
     |      necessary cleanup before this `.SFTPServerInterface` object is
     |      destroyed.
     |
     |  session_started(self)
     |      The SFTP server session has just started.  This method is meant to be
     |      overridden to perform any necessary setup before handling callbacks
     |      from SFTP operations.
     |
     |  stat(self, path)
     |      Return an `.SFTPAttributes` object for a path on the server, or an
     |      error code.  If your server supports symbolic links (also known as
     |      "aliases"), you should follow them.  (`lstat` is the corresponding
     |      call that doesn't follow symlinks/aliases.)
     |
     |      :param str path:
     |          the requested path (relative or absolute) to fetch file statistics
     |          for.
     |      :return:
     |          an `.SFTPAttributes` object for the given file, or an SFTP error
     |          code (like ``SFTP_PERMISSION_DENIED``).
     |
     |  symlink(self, target_path, path)
     |      Create a symbolic link on the server, as new pathname ``path``,
     |      with ``target_path`` as the target of the link.
     |
     |      :param str target_path:
     |          path (relative or absolute) of the target for this new symbolic
     |          link.
     |      :param str path:
     |          path (relative or absolute) of the symbolic link to create.
     |      :return: an error code `int` like ``SFTP_OK``.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

DATA
    SFTP_OP_UNSUPPORTED = 8

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\sftp_si.py

paramiko.ssh_exception
Python Library Documentation: module paramiko.ssh_exception in paramiko

NAME
    paramiko.ssh_exception

DESCRIPTION
    # Copyright (C) 2003-2007  Robey Pointer <robeypointer@gmail.com>
    #
    # This file is part of paramiko.
    #
    # Paramiko is free software; you can redistribute it and/or modify it under the
    # terms of the GNU Lesser General Public License as published by the Free
    # Software Foundation; either version 2.1 of the License, or (at your option)
    # any later version.
    #
    # Paramiko is distributed in the hope that it will be useful, but WITHOUT ANY
    # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
    # A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
    # details.
    #
    # You should have received a copy of the GNU Lesser General Public License
    # along with Paramiko; if not, write to the Free Software Foundation, Inc.,
    # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.

CLASSES
    builtins.Exception(builtins.BaseException)
        SSHException
            AuthenticationException
                BadAuthenticationType
                PartialAuthentication
                PasswordRequiredException
                UnableToAuthenticate
            BadHostKeyException
            ChannelException
            ConfigParseError
            CouldNotCanonicalize
            IncompatiblePeer
            MessageOrderError
            ProxyCommandFailure
    builtins.OSError(builtins.Exception)
        NoValidConnectionsError

    class AuthenticationException(SSHException)
     |  Exception raised when authentication failed for some reason.  It may be
     |  possible to retry with different credentials.  (Other classes specify more
     |  specific reasons.)
     |
     |  .. versionadded:: 1.6
     |
     |  Method resolution order:
     |      AuthenticationException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class BadAuthenticationType(AuthenticationException)
     |  BadAuthenticationType(explanation, types)
     |
     |  Exception raised when an authentication type (like password) is used, but
     |  the server isn't allowing that type.  (It may only allow public-key, for
     |  example.)
     |
     |  .. versionadded:: 1.1
     |
     |  Method resolution order:
     |      BadAuthenticationType
     |      AuthenticationException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, explanation, types)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  allowed_types = []
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class BadHostKeyException(SSHException)
     |  BadHostKeyException(hostname, got_key, expected_key)
     |
     |  The host key given by the SSH server did not match what we were expecting.
     |
     |  :param str hostname: the hostname of the SSH server
     |  :param PKey got_key: the host key presented by the server
     |  :param PKey expected_key: the host key expected
     |
     |  .. versionadded:: 1.6
     |
     |  Method resolution order:
     |      BadHostKeyException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, hostname, got_key, expected_key)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class ChannelException(SSHException)
     |  ChannelException(code, text)
     |
     |  Exception raised when an attempt to open a new `.Channel` fails.
     |
     |  :param int code: the error code returned by the server
     |
     |  .. versionadded:: 1.6
     |
     |  Method resolution order:
     |      ChannelException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, code, text)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class ConfigParseError(SSHException)
     |  A fatal error was encountered trying to parse SSH config data.
     |
     |  Typically this means a config file violated the ``ssh_config``
     |  specification in a manner that requires exiting immediately, such as not
     |  matching ``key = value`` syntax or misusing certain ``Match`` keywords.
     |
     |  .. versionadded:: 2.7
     |
     |  Method resolution order:
     |      ConfigParseError
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class CouldNotCanonicalize(SSHException)
     |  Raised when hostname canonicalization fails & fallback is disabled.
     |
     |  .. versionadded:: 2.7
     |
     |  Method resolution order:
     |      CouldNotCanonicalize
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class IncompatiblePeer(SSHException)
     |  A disagreement arose regarding an algorithm required for key exchange.
     |
     |  .. versionadded:: 2.9
     |
     |  Method resolution order:
     |      IncompatiblePeer
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class MessageOrderError(SSHException)
     |  Out-of-order protocol messages were received, violating "strict kex" mode.
     |
     |  .. versionadded:: 3.4
     |
     |  Method resolution order:
     |      MessageOrderError
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class NoValidConnectionsError(builtins.OSError)
     |  NoValidConnectionsError(errors)
     |
     |  Multiple connection attempts were made and no families succeeded.
     |
     |  This exception class wraps multiple "real" underlying connection errors,
     |  all of which represent failed connection attempts. Because these errors are
     |  not guaranteed to all be of the same error type (i.e. different errno,
     |  `socket.error` subclass, message, etc) we expose a single unified error
     |  message and a ``None`` errno so that instances of this class match most
     |  normal handling of `socket.error` objects.
     |
     |  To see the wrapped exception objects, access the ``errors`` attribute.
     |  ``errors`` is a dict whose keys are address tuples (e.g. ``('127.0.0.1',
     |  22)``) and whose values are the exception encountered trying to connect to
     |  that address.
     |
     |  It is implied/assumed that all the errors given to a single instance of
     |  this class are from connecting to the same hostname + port (and thus that
     |  the differences are in the resolution of the hostname - e.g. IPv4 vs v6).
     |
     |  .. versionadded:: 1.16
     |
     |  Method resolution order:
     |      NoValidConnectionsError
     |      builtins.OSError
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, errors)
     |      :param dict errors:
     |          The errors dict to store, as described by class docstring.
     |
     |  __reduce__(self)
     |      Helper for pickle.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.OSError:
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.OSError:
     |
     |  __new__(*args, **kwargs) class method of builtins.OSError
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.OSError:
     |
     |  characters_written
     |
     |  errno
     |      POSIX exception code
     |
     |  filename
     |      exception filename
     |
     |  filename2
     |      second exception filename
     |
     |  strerror
     |      exception strerror
     |
     |  winerror
     |      Win32 exception code
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class PartialAuthentication(AuthenticationException)
     |  PartialAuthentication(types)
     |
     |  An internal exception thrown in the case of partial authentication.
     |
     |  Method resolution order:
     |      PartialAuthentication
     |      AuthenticationException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, types)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data and other attributes defined here:
     |
     |  allowed_types = []
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class PasswordRequiredException(AuthenticationException)
     |  Exception raised when a password is needed to unlock a private key file.
     |
     |  Method resolution order:
     |      PasswordRequiredException
     |      AuthenticationException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class ProxyCommandFailure(SSHException)
     |  ProxyCommandFailure(command, error)
     |
     |  The "ProxyCommand" found in the .ssh/config file returned an error.
     |
     |  :param str command: The command line that is generating this exception.
     |  :param str error: The error captured from the proxy command output.
     |
     |  Method resolution order:
     |      ProxyCommandFailure
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, command, error)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __str__(self)
     |      Return str(self).
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class SSHException(builtins.Exception)
     |  Exception raised by failures in SSH2 protocol negotiation or logic errors.
     |
     |  Method resolution order:
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors defined here:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

    class UnableToAuthenticate(AuthenticationException)
     |  # TODO (backwards incompat): stop inheriting from SSHException, move to auth.py
     |
     |  Method resolution order:
     |      UnableToAuthenticate
     |      AuthenticationException
     |      SSHException
     |      builtins.Exception
     |      builtins.BaseException
     |      builtins.object
     |
     |  Data descriptors inherited from SSHException:
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.Exception:
     |
     |  __init__(self, /, *args, **kwargs)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from builtins.Exception:
     |
     |  __new__(*args, **kwargs) class method of builtins.Exception
     |      Create and return a new object.  See help(type) for accurate signature.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from builtins.BaseException:
     |
     |  __getattribute__(self, name, /)
     |      Return getattr(self, name).
     |
     |  __reduce__(...)
     |      Helper for pickle.
     |
     |  __repr__(self, /)
     |      Return repr(self).
     |
     |  __setstate__(...)
     |
     |  __str__(self, /)
     |      Return str(self).
     |
     |  add_note(...)
     |      Exception.add_note(note) --
     |      add a note to the exception
     |
     |  with_traceback(...)
     |      Exception.with_traceback(tb) --
     |      set self.__traceback__ to tb and return self.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from builtins.BaseException:
     |
     |  __cause__
     |      exception cause
     |
     |  __context__
     |      exception context
     |
     |  __dict__
     |
     |  __suppress_context__
     |
     |  __traceback__
     |
     |  args

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\ssh_exception.py

paramiko.transport
Python Library Documentation: module paramiko.transport in paramiko

NAME
    paramiko.transport - Core protocol implementation

CLASSES
    builtins.object
        ChannelMap
        SecurityOptions
    paramiko.util.ClosingContextManager(builtins.object)
        Transport(threading.Thread, paramiko.util.ClosingContextManager)
            ServiceRequestingTransport
    threading.Thread(builtins.object)
        Transport(threading.Thread, paramiko.util.ClosingContextManager)
            ServiceRequestingTransport

    class ChannelMap(builtins.object)
     |  Methods defined here:
     |
     |  __init__(self)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __len__(self)
     |
     |  delete(self, chanid)
     |
     |  get(self, chanid)
     |
     |  put(self, chanid, chan)
     |
     |  values(self)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class SecurityOptions(builtins.object)
     |  SecurityOptions(transport)
     |
     |  Simple object containing the security preferences of an ssh transport.
     |  These are tuples of acceptable ciphers, digests, key types, and key
     |  exchange algorithms, listed in order of preference.
     |
     |  Changing the contents and/or order of these fields affects the underlying
     |  `.Transport` (but only if you change them before starting the session).
     |  If you try to add an algorithm that paramiko doesn't recognize,
     |  ``ValueError`` will be raised.  If you try to assign something besides a
     |  tuple to one of the fields, ``TypeError`` will be raised.
     |
     |  Methods defined here:
     |
     |  __init__(self, transport)
     |      Initialize self.  See help(type(self)) for accurate signature.
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  ciphers
     |      Symmetric encryption ciphers
     |
     |  compression
     |      Compression algorithms
     |
     |  digests
     |      Digest (one-way hash) algorithms
     |
     |  kex
     |      Key exchange algorithms
     |
     |  key_types
     |      Public-key algorithms

    class ServiceRequestingTransport(Transport)
     |  ServiceRequestingTransport(*args, **kwargs)
     |
     |  Transport, but also handling service requests, like it oughtta!
     |
     |  .. versionadded:: 3.2
     |
     |  Method resolution order:
     |      ServiceRequestingTransport
     |      Transport
     |      threading.Thread
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, *args, **kwargs)
     |      Create a new SSH session over an existing socket, or socket-like
     |      object.  This only creates the `.Transport` object; it doesn't begin
     |      the SSH session yet.  Use `connect` or `start_client` to begin a client
     |      session, or `start_server` to begin a server session.
     |
     |      If the object is not actually a socket, it must have the following
     |      methods:
     |
     |      - ``send(bytes)``: Writes from 1 to ``len(bytes)`` bytes, and returns
     |        an int representing the number of bytes written.  Returns
     |        0 or raises ``EOFError`` if the stream has been closed.
     |      - ``recv(int)``: Reads from 1 to ``int`` bytes and returns them as a
     |        string.  Returns 0 or raises ``EOFError`` if the stream has been
     |        closed.
     |      - ``close()``: Closes the socket.
     |      - ``settimeout(n)``: Sets a (float) timeout on I/O operations.
     |
     |      For ease of use, you may also pass in an address (as a tuple) or a host
     |      string as the ``sock`` argument.  (A host string is a hostname with an
     |      optional port (separated by ``":"``) which will be converted into a
     |      tuple of ``(hostname, port)``.)  A socket will be connected to this
     |      address and used for communication.  Exceptions from the ``socket``
     |      call may be thrown in this case.
     |
     |      .. note::
     |          Modifying the the window and packet sizes might have adverse
     |          effects on your channels created from this transport. The default
     |          values are the same as in the OpenSSH code base and have been
     |          battle tested.
     |
     |      :param socket sock:
     |          a socket or socket-like object to create the session over.
     |      :param int default_window_size:
     |          sets the default window size on the transport. (defaults to
     |          2097152)
     |      :param int default_max_packet_size:
     |          sets the default max packet size on the transport. (defaults to
     |          32768)
     |      :param dict disabled_algorithms:
     |          If given, must be a dictionary mapping algorithm type to an
     |          iterable of algorithm identifiers, which will be disabled for the
     |          lifetime of the transport.
     |
     |          Keys should match the last word in the class' builtin algorithm
     |          tuple attributes, such as ``"ciphers"`` to disable names within
     |          ``_preferred_ciphers``; or ``"kex"`` to disable something defined
     |          inside ``_preferred_kex``. Values should exactly match members of
     |          the matching attribute.
     |
     |          For example, if you need to disable
     |          ``diffie-hellman-group16-sha512`` key exchange (perhaps because
     |          your code talks to a server which implements it differently from
     |          Paramiko), specify ``disabled_algorithms={"kex":
     |          ["diffie-hellman-group16-sha512"]}``.
     |      :param bool server_sig_algs:
     |          Whether to send an extra message to compatible clients, in server
     |          mode, with a list of supported pubkey algorithms. Default:
     |          ``True``.
     |      :param bool strict_kex:
     |          Whether to advertise (and implement, if client also advertises
     |          support for) a "strict kex" mode for safer handshaking. Default:
     |          ``True``.
     |      :param packetizer_class:
     |          Which class to use for instantiating the internal packet handler.
     |          Default: ``None`` (i.e.: use `Packetizer` as normal).
     |
     |      .. versionchanged:: 1.15
     |          Added the ``default_window_size`` and ``default_max_packet_size``
     |          arguments.
     |      .. versionchanged:: 2.6
     |          Added the ``disabled_algorithms`` kwarg.
     |      .. versionchanged:: 2.9
     |          Added the ``server_sig_algs`` kwarg.
     |      .. versionchanged:: 3.4
     |          Added the ``strict_kex`` kwarg.
     |      .. versionchanged:: 3.4
     |          Added the ``packetizer_class`` kwarg.
     |
     |  auth_interactive(self, username, handler, submethods='')
     |      Authenticate to the server interactively.  A handler is used to answer
     |      arbitrary questions from the server.  On many servers, this is just a
     |      dumb wrapper around PAM.
     |
     |      This method will block until the authentication succeeds or fails,
     |      periodically calling the handler asynchronously to get answers to
     |      authentication questions.  The handler may be called more than once
     |      if the server continues to ask questions.
     |
     |      The handler is expected to be a callable that will handle calls of the
     |      form: ``handler(title, instructions, prompt_list)``.  The ``title`` is
     |      meant to be a dialog-window title, and the ``instructions`` are user
     |      instructions (both are strings).  ``prompt_list`` will be a list of
     |      prompts, each prompt being a tuple of ``(str, bool)``.  The string is
     |      the prompt and the boolean indicates whether the user text should be
     |      echoed.
     |
     |      A sample call would thus be:
     |      ``handler('title', 'instructions', [('Password:', False)])``.
     |
     |      The handler should return a list or tuple of answers to the server's
     |      questions.
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param callable handler: a handler for responding to server questions
     |      :param str submethods: a string list of desired submethods (optional)
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty).
     |
     |      :raises: `.BadAuthenticationType` -- if public-key authentication isn't
     |          allowed by the server for this user
     |      :raises: `.AuthenticationException` -- if the authentication failed
     |      :raises: `.SSHException` -- if there was a network error
     |
     |      .. versionadded:: 1.5
     |
     |  auth_interactive_dumb(self, username, handler=None, submethods='')
     |      Authenticate to the server interactively but dumber.
     |      Just print the prompt and / or instructions to stdout and send back
     |      the response. This is good for situations where partial auth is
     |      achieved by key and then the user has to enter a 2fac token.
     |
     |  auth_none(self, username)
     |      Try to authenticate to the server using no authentication at all.
     |      This will almost always fail.  It may be useful for determining the
     |      list of authentication types supported by the server, by catching the
     |      `.BadAuthenticationType` exception raised.
     |
     |      :param str username: the username to authenticate as
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if "none" authentication isn't allowed
     |          by the server for this user
     |      :raises:
     |          `.SSHException` -- if the authentication failed due to a network
     |          error
     |
     |      .. versionadded:: 1.5
     |
     |  auth_password(self, username, password, fallback=True)
     |      Authenticate to the server using a password.  The username and password
     |      are sent over an encrypted link.
     |
     |      If an ``event`` is passed in, this method will return immediately, and
     |      the event will be triggered once authentication succeeds or fails.  On
     |      success, `is_authenticated` will return ``True``.  On failure, you may
     |      use `get_exception` to get more detailed error information.
     |
     |      Since 1.1, if no event is passed, this method will block until the
     |      authentication succeeds or fails.  On failure, an exception is raised.
     |      Otherwise, the method simply returns.
     |
     |      Since 1.5, if no event is passed and ``fallback`` is ``True`` (the
     |      default), if the server doesn't support plain password authentication
     |      but does support so-called "keyboard-interactive" mode, an attempt
     |      will be made to authenticate using this interactive mode.  If it fails,
     |      the normal exception will be thrown as if the attempt had never been
     |      made.  This is useful for some recent Gentoo and Debian distributions,
     |      which turn off plain password authentication in a misguided belief
     |      that interactive authentication is "more secure".  (It's not.)
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param basestring password: the password to authenticate with
     |      :param .threading.Event event:
     |          an event to trigger when the authentication attempt is complete
     |          (whether it was successful or not)
     |      :param bool fallback:
     |          ``True`` if an attempt at an automated "interactive" password auth
     |          should be made if the server doesn't support normal password auth
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if password authentication isn't
     |          allowed by the server for this user (and no event was passed in)
     |      :raises:
     |          `.AuthenticationException` -- if the authentication failed (and no
     |          event was passed in)
     |      :raises: `.SSHException` -- if there was a network error
     |
     |  auth_publickey(self, username, key)
     |      Authenticate to the server using a private key.  The key is used to
     |      sign data from the server, so it must include the private part.
     |
     |      If an ``event`` is passed in, this method will return immediately, and
     |      the event will be triggered once authentication succeeds or fails.  On
     |      success, `is_authenticated` will return ``True``.  On failure, you may
     |      use `get_exception` to get more detailed error information.
     |
     |      Since 1.1, if no event is passed, this method will block until the
     |      authentication succeeds or fails.  On failure, an exception is raised.
     |      Otherwise, the method simply returns.
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param .PKey key: the private key to authenticate with
     |      :param .threading.Event event:
     |          an event to trigger when the authentication attempt is complete
     |          (whether it was successful or not)
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if public-key authentication isn't
     |          allowed by the server for this user (and no event was passed in)
     |      :raises:
     |          `.AuthenticationException` -- if the authentication failed (and no
     |          event was passed in)
     |      :raises: `.SSHException` -- if there was a network error
     |
     |  ensure_session(self)
     |
     |  get_auth_handler(self)
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from Transport:
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  accept(self, timeout=None)
     |      Return the next channel opened by the client over this transport, in
     |      server mode.  If no channel is opened before the given timeout,
     |      ``None`` is returned.
     |
     |      :param int timeout:
     |          seconds to wait for a channel, or ``None`` to wait forever
     |      :return: a new `.Channel` opened by the client
     |
     |  add_server_key(self, key)
     |      Add a host key to the list of keys used for server mode.  When behaving
     |      as a server, the host key is used to sign certain packets during the
     |      SSH2 negotiation, so that the client can trust that we are who we say
     |      we are.  Because this is used for signing, the key must contain private
     |      key info, not just the public half.  Only one key of each type is kept.
     |
     |      :param .PKey key:
     |          the host key (instance of some subclass) to add
     |
     |  atfork(self)
     |      Terminate this Transport without closing the session.  On posix
     |      systems, if a Transport is open during process forking, both parent
     |      and child will share the underlying socket, but only one process can
     |      use the connection (without corrupting the session).  Use this method
     |      to clean up a Transport object without disrupting the other process.
     |
     |      .. versionadded:: 1.5.3
     |
     |  cancel_port_forward(self, address, port)
     |      Ask the server to cancel a previous port-forwarding request.  No more
     |      connections to the given address & port will be forwarded across this
     |      ssh connection.
     |
     |      :param str address: the address to stop forwarding
     |      :param int port: the port to stop forwarding
     |
     |  close(self)
     |      Close this session, and any open channels that are tied to it.
     |
     |  connect(self, hostkey=None, username='', password=None, pkey=None)
     |      Negotiate an SSH2 session, and optionally verify the server's host key
     |      and authenticate using a password or private key.  This is a shortcut
     |      for `start_client`, `get_remote_server_key`, and
     |      `Transport.auth_password` or `Transport.auth_publickey`.  Use those
     |      methods if you want more control.
     |
     |      You can use this method immediately after creating a Transport to
     |      negotiate encryption with a server.  If it fails, an exception will be
     |      thrown.  On success, the method will return cleanly, and an encrypted
     |      session exists.  You may immediately call `open_channel` or
     |      `open_session` to get a `.Channel` object, which is used for data
     |      transfer.
     |
     |      .. note::
     |          If you fail to supply a password or private key, this method may
     |          succeed, but a subsequent `open_channel` or `open_session` call may
     |          fail because you haven't authenticated yet.
     |
     |      :param .PKey hostkey:
     |          the host key expected from the server, or ``None`` if you don't
     |          want to do host key verification.
     |      :param str username: the username to authenticate as.
     |      :param str password:
     |          a password to use for authentication, if you want to use password
     |          authentication; otherwise ``None``.
     |      :param .PKey pkey:
     |          a private key to use for authentication, if you want to use private
     |          key authentication; otherwise ``None``.
     |
     |      :raises: `.SSHException` -- if the SSH2 negotiation fails, the host key
     |          supplied by the server is incorrect, or authentication fails.
     |
     |  get_banner(self)
     |      Return the banner supplied by the server upon connect. If no banner is
     |      supplied, this method returns ``None``.
     |
     |      :returns: server supplied banner (`str`), or ``None``.
     |
     |      .. versionadded:: 1.13
     |
     |  get_exception(self)
     |      Return any exception that happened during the last server request.
     |      This can be used to fetch more specific error information after using
     |      calls like `start_client`.  The exception (if any) is cleared after
     |      this call.
     |
     |      :return:
     |          an exception, or ``None`` if there is no stored exception.
     |
     |      .. versionadded:: 1.1
     |
     |  get_hexdump(self)
     |      Return ``True`` if the transport is currently logging hex dumps of
     |      protocol traffic.
     |
     |      :return: ``True`` if hex dumps are being logged, else ``False``.
     |
     |      .. versionadded:: 1.4
     |
     |  get_log_channel(self)
     |      Return the channel name used for this transport's logging.
     |
     |      :return: channel name as a `str`
     |
     |      .. versionadded:: 1.2
     |
     |  get_remote_server_key(self)
     |      Return the host key of the server (in client mode).
     |
     |      .. note::
     |          Previously this call returned a tuple of ``(key type, key
     |          string)``. You can get the same effect by calling `.PKey.get_name`
     |          for the key type, and ``str(key)`` for the key string.
     |
     |      :raises: `.SSHException` -- if no session is currently active.
     |
     |      :return: public key (`.PKey`) of the remote server
     |
     |  get_security_options(self)
     |      Return a `.SecurityOptions` object which can be used to tweak the
     |      encryption algorithms this transport will permit (for encryption,
     |      digest/hash operations, public keys, and key exchanges) and the order
     |      of preference for them.
     |
     |  get_server_key(self)
     |      Return the active host key, in server mode.  After negotiating with the
     |      client, this method will return the negotiated host key.  If only one
     |      type of host key was set with `add_server_key`, that's the only key
     |      that will ever be returned.  But in cases where you have set more than
     |      one type of host key, the key type will be negotiated by the client,
     |      and this method will return the key of the type agreed on.  If the host
     |      key has not been negotiated yet, ``None`` is returned.  In client mode,
     |      the behavior is undefined.
     |
     |      :return:
     |          host key (`.PKey`) of the type negotiated by the client, or
     |          ``None``.
     |
     |  get_username(self)
     |      Return the username this connection is authenticated for.  If the
     |      session is not authenticated (or authentication failed), this method
     |      returns ``None``.
     |
     |      :return: username that was authenticated (a `str`), or ``None``.
     |
     |  getpeername(self)
     |      Return the address of the remote side of this Transport, if possible.
     |
     |      This is effectively a wrapper around ``getpeername`` on the underlying
     |      socket.  If the socket-like object has no ``getpeername`` method, then
     |      ``("unknown", 0)`` is returned.
     |
     |      :return:
     |          the address of the remote host, if known, as a ``(str, int)``
     |          tuple.
     |
     |  global_request(self, kind, data=None, wait=True)
     |      Make a global request to the remote host.  These are normally
     |      extensions to the SSH2 protocol.
     |
     |      :param str kind: name of the request.
     |      :param tuple data:
     |          an optional tuple containing additional data to attach to the
     |          request.
     |      :param bool wait:
     |          ``True`` if this method should not return until a response is
     |          received; ``False`` otherwise.
     |      :return:
     |          a `.Message` containing possible additional data if the request was
     |          successful (or an empty `.Message` if ``wait`` was ``False``);
     |          ``None`` if the request was denied.
     |
     |  is_active(self)
     |      Return true if this session is active (open).
     |
     |      :return:
     |          True if the session is still active (open); False if the session is
     |          closed
     |
     |  is_authenticated(self)
     |      Return true if this session is active and authenticated.
     |
     |      :return:
     |          True if the session is still open and has been authenticated
     |          successfully; False if authentication failed and/or the session is
     |          closed.
     |
     |  open_channel(self, kind, dest_addr=None, src_addr=None, window_size=None, max_packet_size=None, timeout=None)
     |      Request a new channel to the server. `Channels <.Channel>` are
     |      socket-like objects used for the actual transfer of data across the
     |      session. You may only request a channel after negotiating encryption
     |      (using `connect` or `start_client`) and authenticating.
     |
     |      .. note:: Modifying the the window and packet sizes might have adverse
     |          effects on the channel created. The default values are the same
     |          as in the OpenSSH code base and have been battle tested.
     |
     |      :param str kind:
     |          the kind of channel requested (usually ``"session"``,
     |          ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``)
     |      :param tuple dest_addr:
     |          the destination address (address + port tuple) of this port
     |          forwarding, if ``kind`` is ``"forwarded-tcpip"`` or
     |          ``"direct-tcpip"`` (ignored for other channel types)
     |      :param src_addr: the source address of this port forwarding, if
     |          ``kind`` is ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``
     |      :param int window_size:
     |          optional window size for this session.
     |      :param int max_packet_size:
     |          optional max packet size for this session.
     |      :param float timeout:
     |          optional timeout opening a channel, default 3600s (1h)
     |
     |      :return: a new `.Channel` on success
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected, the session ends
     |          prematurely or there is a timeout opening a channel
     |
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  open_forward_agent_channel(self)
     |      Request a new channel to the client, of type
     |      ``"auth-agent@openssh.com"``.
     |
     |      This is just an alias for ``open_channel('auth-agent@openssh.com')``.
     |
     |      :return: a new `.Channel`
     |
     |      :raises: `.SSHException` --
     |          if the request is rejected or the session ends prematurely
     |
     |  open_forwarded_tcpip_channel(self, src_addr, dest_addr)
     |      Request a new channel back to the client, of type ``forwarded-tcpip``.
     |
     |      This is used after a client has requested port forwarding, for sending
     |      incoming connections back to the client.
     |
     |      :param src_addr: originator's address
     |      :param dest_addr: local (server) connected address
     |
     |  open_session(self, window_size=None, max_packet_size=None, timeout=None)
     |      Request a new channel to the server, of type ``"session"``.  This is
     |      just an alias for calling `open_channel` with an argument of
     |      ``"session"``.
     |
     |      .. note:: Modifying the the window and packet sizes might have adverse
     |          effects on the session created. The default values are the same
     |          as in the OpenSSH code base and have been battle tested.
     |
     |      :param int window_size:
     |          optional window size for this session.
     |      :param int max_packet_size:
     |          optional max packet size for this session.
     |
     |      :return: a new `.Channel`
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected or the session ends
     |          prematurely
     |
     |      .. versionchanged:: 1.13.4/1.14.3/1.15.3
     |          Added the ``timeout`` argument.
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  open_sftp_client(self)
     |      Create an SFTP client channel from an open transport.  On success, an
     |      SFTP session will be opened with the remote host, and a new
     |      `.SFTPClient` object will be returned.
     |
     |      :return:
     |          a new `.SFTPClient` referring to an sftp session (channel) across
     |          this transport
     |
     |  open_x11_channel(self, src_addr=None)
     |      Request a new channel to the client, of type ``"x11"``.  This
     |      is just an alias for ``open_channel('x11', src_addr=src_addr)``.
     |
     |      :param tuple src_addr:
     |          the source address (``(str, int)``) of the x11 server (port is the
     |          x11 port, ie. 6010)
     |      :return: a new `.Channel`
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected or the session ends
     |          prematurely
     |
     |  renegotiate_keys(self)
     |      Force this session to switch to new keys.  Normally this is done
     |      automatically after the session hits a certain number of packets or
     |      bytes sent or received, but this method gives you the option of forcing
     |      new keys whenever you want.  Negotiating new keys causes a pause in
     |      traffic both ways as the two sides swap keys and do computations.  This
     |      method returns when the session has switched to new keys.
     |
     |      :raises:
     |          `.SSHException` -- if the key renegotiation failed (which causes
     |          the session to end)
     |
     |  request_port_forward(self, address, port, handler=None)
     |      Ask the server to forward TCP connections from a listening port on
     |      the server, across this SSH session.
     |
     |      If a handler is given, that handler is called from a different thread
     |      whenever a forwarded connection arrives.  The handler parameters are::
     |
     |          handler(
     |              channel,
     |              (origin_addr, origin_port),
     |              (server_addr, server_port),
     |          )
     |
     |      where ``server_addr`` and ``server_port`` are the address and port that
     |      the server was listening on.
     |
     |      If no handler is set, the default behavior is to send new incoming
     |      forwarded connections into the accept queue, to be picked up via
     |      `accept`.
     |
     |      :param str address: the address to bind when forwarding
     |      :param int port:
     |          the port to forward, or 0 to ask the server to allocate any port
     |      :param callable handler:
     |          optional handler for incoming forwarded connections, of the form
     |          ``func(Channel, (str, int), (str, int))``.
     |
     |      :return: the port number (`int`) allocated by the server
     |
     |      :raises:
     |          `.SSHException` -- if the server refused the TCP forward request
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  send_ignore(self, byte_count=None)
     |      Send a junk packet across the encrypted link.  This is sometimes used
     |      to add "noise" to a connection to confuse would-be attackers.  It can
     |      also be used as a keep-alive for long lived connections traversing
     |      firewalls.
     |
     |      :param int byte_count:
     |          the number of random bytes to send in the payload of the ignored
     |          packet -- defaults to a random number from 10 to 41.
     |
     |  set_hexdump(self, hexdump)
     |      Turn on/off logging a hex dump of protocol traffic at DEBUG level in
     |      the logs.  Normally you would want this off (which is the default),
     |      but if you are debugging something, it may be useful.
     |
     |      :param bool hexdump:
     |          ``True`` to log protocol traffix (in hex) to the log; ``False``
     |          otherwise.
     |
     |  set_keepalive(self, interval)
     |      Turn on/off keepalive packets (default is off).  If this is set, after
     |      ``interval`` seconds without sending any data over the connection, a
     |      "keepalive" packet will be sent (and ignored by the remote host).  This
     |      can be useful to keep connections alive over a NAT, for example.
     |
     |      :param int interval:
     |          seconds to wait before sending a keepalive packet (or
     |          0 to disable keepalives).
     |
     |  set_log_channel(self, name)
     |      Set the channel for this transport's logging.  The default is
     |      ``"paramiko.transport"`` but it can be set to anything you want. (See
     |      the `.logging` module for more info.)  SSH Channels will log to a
     |      sub-channel of the one specified.
     |
     |      :param str name: new channel name for logging
     |
     |      .. versionadded:: 1.1
     |
     |  set_subsystem_handler(self, name, handler, *args, **kwargs)
     |      Set the handler class for a subsystem in server mode.  If a request
     |      for this subsystem is made on an open ssh channel later, this handler
     |      will be constructed and called -- see `.SubsystemHandler` for more
     |      detailed documentation.
     |
     |      Any extra parameters (including keyword arguments) are saved and
     |      passed to the `.SubsystemHandler` constructor later.
     |
     |      :param str name: name of the subsystem.
     |      :param handler:
     |          subclass of `.SubsystemHandler` that handles this subsystem.
     |
     |  start_client(self, event=None, timeout=None)
     |      Negotiate a new SSH2 session as a client.  This is the first step after
     |      creating a new `.Transport`.  A separate thread is created for protocol
     |      negotiation.
     |
     |      If an event is passed in, this method returns immediately.  When
     |      negotiation is done (successful or not), the given ``Event`` will
     |      be triggered.  On failure, `is_active` will return ``False``.
     |
     |      (Since 1.4) If ``event`` is ``None``, this method will not return until
     |      negotiation is done.  On success, the method returns normally.
     |      Otherwise an SSHException is raised.
     |
     |      After a successful negotiation, you will usually want to authenticate,
     |      calling `auth_password <Transport.auth_password>` or
     |      `auth_publickey <Transport.auth_publickey>`.
     |
     |      .. note:: `connect` is a simpler method for connecting as a client.
     |
     |      .. note::
     |          After calling this method (or `start_server` or `connect`), you
     |          should no longer directly read from or write to the original socket
     |          object.
     |
     |      :param .threading.Event event:
     |          an event to trigger when negotiation is complete (optional)
     |
     |      :param float timeout:
     |          a timeout, in seconds, for SSH2 session negotiation (optional)
     |
     |      :raises:
     |          `.SSHException` -- if negotiation fails (and no ``event`` was
     |          passed in)
     |
     |  start_server(self, event=None, server=None)
     |      Negotiate a new SSH2 session as a server.  This is the first step after
     |      creating a new `.Transport` and setting up your server host key(s).  A
     |      separate thread is created for protocol negotiation.
     |
     |      If an event is passed in, this method returns immediately.  When
     |      negotiation is done (successful or not), the given ``Event`` will
     |      be triggered.  On failure, `is_active` will return ``False``.
     |
     |      (Since 1.4) If ``event`` is ``None``, this method will not return until
     |      negotiation is done.  On success, the method returns normally.
     |      Otherwise an SSHException is raised.
     |
     |      After a successful negotiation, the client will need to authenticate.
     |      Override the methods `get_allowed_auths
     |      <.ServerInterface.get_allowed_auths>`, `check_auth_none
     |      <.ServerInterface.check_auth_none>`, `check_auth_password
     |      <.ServerInterface.check_auth_password>`, and `check_auth_publickey
     |      <.ServerInterface.check_auth_publickey>` in the given ``server`` object
     |      to control the authentication process.
     |
     |      After a successful authentication, the client should request to open a
     |      channel.  Override `check_channel_request
     |      <.ServerInterface.check_channel_request>` in the given ``server``
     |      object to allow channels to be opened.
     |
     |      .. note::
     |          After calling this method (or `start_client` or `connect`), you
     |          should no longer directly read from or write to the original socket
     |          object.
     |
     |      :param .threading.Event event:
     |          an event to trigger when negotiation is complete.
     |      :param .ServerInterface server:
     |          an object used to perform authentication and create `channels
     |          <.Channel>`
     |
     |      :raises:
     |          `.SSHException` -- if negotiation fails (and no ``event`` was
     |          passed in)
     |
     |  stop_thread(self)
     |
     |  use_compression(self, compress=True)
     |      Turn on/off compression.  This will only have an affect before starting
     |      the transport (ie before calling `connect`, etc).  By default,
     |      compression is off since it negatively affects interactive sessions.
     |
     |      :param bool compress:
     |          ``True`` to ask the remote client/server to compress traffic;
     |          ``False`` to refuse compression
     |
     |      .. versionadded:: 1.5.2
     |
     |  ----------------------------------------------------------------------
     |  Static methods inherited from Transport:
     |
     |  load_server_moduli(filename=None)
     |      (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 ``/etc/ssh/moduli``).
     |      If you call `load_server_moduli` and it returns ``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 str filename:
     |          optional path to the moduli file, if you happen to know that it's
     |          not in a standard location.
     |      :return:
     |          True if a moduli file was successfully loaded; False otherwise.
     |
     |      .. note:: This has no effect when used in client mode.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from Transport:
     |
     |  preferred_ciphers
     |
     |  preferred_compression
     |
     |  preferred_kex
     |
     |  preferred_keys
     |
     |  preferred_macs
     |
     |  preferred_pubkeys
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)

    class Transport(threading.Thread, paramiko.util.ClosingContextManager)
     |  Transport(sock, default_window_size=2097152, default_max_packet_size=32768, disabled_algorithms=None, server_sig_algs=True, strict_kex=True, packetizer_class=None)
     |
     |  An SSH Transport attaches to a stream (usually a socket), negotiates an
     |  encrypted session, authenticates, and then creates stream tunnels, called
     |  `channels <.Channel>`, across the session.  Multiple channels can be
     |  multiplexed across a single session (and often are, in the case of port
     |  forwardings).
     |
     |  Instances of this class may be used as context managers.
     |
     |  Method resolution order:
     |      Transport
     |      threading.Thread
     |      paramiko.util.ClosingContextManager
     |      builtins.object
     |
     |  Methods defined here:
     |
     |  __init__(self, sock, default_window_size=2097152, default_max_packet_size=32768, disabled_algorithms=None, server_sig_algs=True, strict_kex=True, packetizer_class=None)
     |      Create a new SSH session over an existing socket, or socket-like
     |      object.  This only creates the `.Transport` object; it doesn't begin
     |      the SSH session yet.  Use `connect` or `start_client` to begin a client
     |      session, or `start_server` to begin a server session.
     |
     |      If the object is not actually a socket, it must have the following
     |      methods:
     |
     |      - ``send(bytes)``: Writes from 1 to ``len(bytes)`` bytes, and returns
     |        an int representing the number of bytes written.  Returns
     |        0 or raises ``EOFError`` if the stream has been closed.
     |      - ``recv(int)``: Reads from 1 to ``int`` bytes and returns them as a
     |        string.  Returns 0 or raises ``EOFError`` if the stream has been
     |        closed.
     |      - ``close()``: Closes the socket.
     |      - ``settimeout(n)``: Sets a (float) timeout on I/O operations.
     |
     |      For ease of use, you may also pass in an address (as a tuple) or a host
     |      string as the ``sock`` argument.  (A host string is a hostname with an
     |      optional port (separated by ``":"``) which will be converted into a
     |      tuple of ``(hostname, port)``.)  A socket will be connected to this
     |      address and used for communication.  Exceptions from the ``socket``
     |      call may be thrown in this case.
     |
     |      .. note::
     |          Modifying the the window and packet sizes might have adverse
     |          effects on your channels created from this transport. The default
     |          values are the same as in the OpenSSH code base and have been
     |          battle tested.
     |
     |      :param socket sock:
     |          a socket or socket-like object to create the session over.
     |      :param int default_window_size:
     |          sets the default window size on the transport. (defaults to
     |          2097152)
     |      :param int default_max_packet_size:
     |          sets the default max packet size on the transport. (defaults to
     |          32768)
     |      :param dict disabled_algorithms:
     |          If given, must be a dictionary mapping algorithm type to an
     |          iterable of algorithm identifiers, which will be disabled for the
     |          lifetime of the transport.
     |
     |          Keys should match the last word in the class' builtin algorithm
     |          tuple attributes, such as ``"ciphers"`` to disable names within
     |          ``_preferred_ciphers``; or ``"kex"`` to disable something defined
     |          inside ``_preferred_kex``. Values should exactly match members of
     |          the matching attribute.
     |
     |          For example, if you need to disable
     |          ``diffie-hellman-group16-sha512`` key exchange (perhaps because
     |          your code talks to a server which implements it differently from
     |          Paramiko), specify ``disabled_algorithms={"kex":
     |          ["diffie-hellman-group16-sha512"]}``.
     |      :param bool server_sig_algs:
     |          Whether to send an extra message to compatible clients, in server
     |          mode, with a list of supported pubkey algorithms. Default:
     |          ``True``.
     |      :param bool strict_kex:
     |          Whether to advertise (and implement, if client also advertises
     |          support for) a "strict kex" mode for safer handshaking. Default:
     |          ``True``.
     |      :param packetizer_class:
     |          Which class to use for instantiating the internal packet handler.
     |          Default: ``None`` (i.e.: use `Packetizer` as normal).
     |
     |      .. versionchanged:: 1.15
     |          Added the ``default_window_size`` and ``default_max_packet_size``
     |          arguments.
     |      .. versionchanged:: 2.6
     |          Added the ``disabled_algorithms`` kwarg.
     |      .. versionchanged:: 2.9
     |          Added the ``server_sig_algs`` kwarg.
     |      .. versionchanged:: 3.4
     |          Added the ``strict_kex`` kwarg.
     |      .. versionchanged:: 3.4
     |          Added the ``packetizer_class`` kwarg.
     |
     |  __repr__(self)
     |      Returns a string representation of this object, for debugging.
     |
     |  accept(self, timeout=None)
     |      Return the next channel opened by the client over this transport, in
     |      server mode.  If no channel is opened before the given timeout,
     |      ``None`` is returned.
     |
     |      :param int timeout:
     |          seconds to wait for a channel, or ``None`` to wait forever
     |      :return: a new `.Channel` opened by the client
     |
     |  add_server_key(self, key)
     |      Add a host key to the list of keys used for server mode.  When behaving
     |      as a server, the host key is used to sign certain packets during the
     |      SSH2 negotiation, so that the client can trust that we are who we say
     |      we are.  Because this is used for signing, the key must contain private
     |      key info, not just the public half.  Only one key of each type is kept.
     |
     |      :param .PKey key:
     |          the host key (instance of some subclass) to add
     |
     |  atfork(self)
     |      Terminate this Transport without closing the session.  On posix
     |      systems, if a Transport is open during process forking, both parent
     |      and child will share the underlying socket, but only one process can
     |      use the connection (without corrupting the session).  Use this method
     |      to clean up a Transport object without disrupting the other process.
     |
     |      .. versionadded:: 1.5.3
     |
     |  auth_interactive(self, username, handler, submethods='')
     |      Authenticate to the server interactively.  A handler is used to answer
     |      arbitrary questions from the server.  On many servers, this is just a
     |      dumb wrapper around PAM.
     |
     |      This method will block until the authentication succeeds or fails,
     |      periodically calling the handler asynchronously to get answers to
     |      authentication questions.  The handler may be called more than once
     |      if the server continues to ask questions.
     |
     |      The handler is expected to be a callable that will handle calls of the
     |      form: ``handler(title, instructions, prompt_list)``.  The ``title`` is
     |      meant to be a dialog-window title, and the ``instructions`` are user
     |      instructions (both are strings).  ``prompt_list`` will be a list of
     |      prompts, each prompt being a tuple of ``(str, bool)``.  The string is
     |      the prompt and the boolean indicates whether the user text should be
     |      echoed.
     |
     |      A sample call would thus be:
     |      ``handler('title', 'instructions', [('Password:', False)])``.
     |
     |      The handler should return a list or tuple of answers to the server's
     |      questions.
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param callable handler: a handler for responding to server questions
     |      :param str submethods: a string list of desired submethods (optional)
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty).
     |
     |      :raises: `.BadAuthenticationType` -- if public-key authentication isn't
     |          allowed by the server for this user
     |      :raises: `.AuthenticationException` -- if the authentication failed
     |      :raises: `.SSHException` -- if there was a network error
     |
     |      .. versionadded:: 1.5
     |
     |  auth_interactive_dumb(self, username, handler=None, submethods='')
     |      Authenticate to the server interactively but dumber.
     |      Just print the prompt and / or instructions to stdout and send back
     |      the response. This is good for situations where partial auth is
     |      achieved by key and then the user has to enter a 2fac token.
     |
     |  auth_none(self, username)
     |      Try to authenticate to the server using no authentication at all.
     |      This will almost always fail.  It may be useful for determining the
     |      list of authentication types supported by the server, by catching the
     |      `.BadAuthenticationType` exception raised.
     |
     |      :param str username: the username to authenticate as
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if "none" authentication isn't allowed
     |          by the server for this user
     |      :raises:
     |          `.SSHException` -- if the authentication failed due to a network
     |          error
     |
     |      .. versionadded:: 1.5
     |
     |  auth_password(self, username, password, event=None, fallback=True)
     |      Authenticate to the server using a password.  The username and password
     |      are sent over an encrypted link.
     |
     |      If an ``event`` is passed in, this method will return immediately, and
     |      the event will be triggered once authentication succeeds or fails.  On
     |      success, `is_authenticated` will return ``True``.  On failure, you may
     |      use `get_exception` to get more detailed error information.
     |
     |      Since 1.1, if no event is passed, this method will block until the
     |      authentication succeeds or fails.  On failure, an exception is raised.
     |      Otherwise, the method simply returns.
     |
     |      Since 1.5, if no event is passed and ``fallback`` is ``True`` (the
     |      default), if the server doesn't support plain password authentication
     |      but does support so-called "keyboard-interactive" mode, an attempt
     |      will be made to authenticate using this interactive mode.  If it fails,
     |      the normal exception will be thrown as if the attempt had never been
     |      made.  This is useful for some recent Gentoo and Debian distributions,
     |      which turn off plain password authentication in a misguided belief
     |      that interactive authentication is "more secure".  (It's not.)
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param basestring password: the password to authenticate with
     |      :param .threading.Event event:
     |          an event to trigger when the authentication attempt is complete
     |          (whether it was successful or not)
     |      :param bool fallback:
     |          ``True`` if an attempt at an automated "interactive" password auth
     |          should be made if the server doesn't support normal password auth
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if password authentication isn't
     |          allowed by the server for this user (and no event was passed in)
     |      :raises:
     |          `.AuthenticationException` -- if the authentication failed (and no
     |          event was passed in)
     |      :raises: `.SSHException` -- if there was a network error
     |
     |  auth_publickey(self, username, key, event=None)
     |      Authenticate to the server using a private key.  The key is used to
     |      sign data from the server, so it must include the private part.
     |
     |      If an ``event`` is passed in, this method will return immediately, and
     |      the event will be triggered once authentication succeeds or fails.  On
     |      success, `is_authenticated` will return ``True``.  On failure, you may
     |      use `get_exception` to get more detailed error information.
     |
     |      Since 1.1, if no event is passed, this method will block until the
     |      authentication succeeds or fails.  On failure, an exception is raised.
     |      Otherwise, the method simply returns.
     |
     |      If the server requires multi-step authentication (which is very rare),
     |      this method will return a list of auth types permissible for the next
     |      step.  Otherwise, in the normal case, an empty list is returned.
     |
     |      :param str username: the username to authenticate as
     |      :param .PKey key: the private key to authenticate with
     |      :param .threading.Event event:
     |          an event to trigger when the authentication attempt is complete
     |          (whether it was successful or not)
     |      :return:
     |          list of auth types permissible for the next stage of
     |          authentication (normally empty)
     |
     |      :raises:
     |          `.BadAuthenticationType` -- if public-key authentication isn't
     |          allowed by the server for this user (and no event was passed in)
     |      :raises:
     |          `.AuthenticationException` -- if the authentication failed (and no
     |          event was passed in)
     |      :raises: `.SSHException` -- if there was a network error
     |
     |  cancel_port_forward(self, address, port)
     |      Ask the server to cancel a previous port-forwarding request.  No more
     |      connections to the given address & port will be forwarded across this
     |      ssh connection.
     |
     |      :param str address: the address to stop forwarding
     |      :param int port: the port to stop forwarding
     |
     |  close(self)
     |      Close this session, and any open channels that are tied to it.
     |
     |  connect(self, hostkey=None, username='', password=None, pkey=None)
     |      Negotiate an SSH2 session, and optionally verify the server's host key
     |      and authenticate using a password or private key.  This is a shortcut
     |      for `start_client`, `get_remote_server_key`, and
     |      `Transport.auth_password` or `Transport.auth_publickey`.  Use those
     |      methods if you want more control.
     |
     |      You can use this method immediately after creating a Transport to
     |      negotiate encryption with a server.  If it fails, an exception will be
     |      thrown.  On success, the method will return cleanly, and an encrypted
     |      session exists.  You may immediately call `open_channel` or
     |      `open_session` to get a `.Channel` object, which is used for data
     |      transfer.
     |
     |      .. note::
     |          If you fail to supply a password or private key, this method may
     |          succeed, but a subsequent `open_channel` or `open_session` call may
     |          fail because you haven't authenticated yet.
     |
     |      :param .PKey hostkey:
     |          the host key expected from the server, or ``None`` if you don't
     |          want to do host key verification.
     |      :param str username: the username to authenticate as.
     |      :param str password:
     |          a password to use for authentication, if you want to use password
     |          authentication; otherwise ``None``.
     |      :param .PKey pkey:
     |          a private key to use for authentication, if you want to use private
     |          key authentication; otherwise ``None``.
     |
     |      :raises: `.SSHException` -- if the SSH2 negotiation fails, the host key
     |          supplied by the server is incorrect, or authentication fails.
     |
     |  get_banner(self)
     |      Return the banner supplied by the server upon connect. If no banner is
     |      supplied, this method returns ``None``.
     |
     |      :returns: server supplied banner (`str`), or ``None``.
     |
     |      .. versionadded:: 1.13
     |
     |  get_exception(self)
     |      Return any exception that happened during the last server request.
     |      This can be used to fetch more specific error information after using
     |      calls like `start_client`.  The exception (if any) is cleared after
     |      this call.
     |
     |      :return:
     |          an exception, or ``None`` if there is no stored exception.
     |
     |      .. versionadded:: 1.1
     |
     |  get_hexdump(self)
     |      Return ``True`` if the transport is currently logging hex dumps of
     |      protocol traffic.
     |
     |      :return: ``True`` if hex dumps are being logged, else ``False``.
     |
     |      .. versionadded:: 1.4
     |
     |  get_log_channel(self)
     |      Return the channel name used for this transport's logging.
     |
     |      :return: channel name as a `str`
     |
     |      .. versionadded:: 1.2
     |
     |  get_remote_server_key(self)
     |      Return the host key of the server (in client mode).
     |
     |      .. note::
     |          Previously this call returned a tuple of ``(key type, key
     |          string)``. You can get the same effect by calling `.PKey.get_name`
     |          for the key type, and ``str(key)`` for the key string.
     |
     |      :raises: `.SSHException` -- if no session is currently active.
     |
     |      :return: public key (`.PKey`) of the remote server
     |
     |  get_security_options(self)
     |      Return a `.SecurityOptions` object which can be used to tweak the
     |      encryption algorithms this transport will permit (for encryption,
     |      digest/hash operations, public keys, and key exchanges) and the order
     |      of preference for them.
     |
     |  get_server_key(self)
     |      Return the active host key, in server mode.  After negotiating with the
     |      client, this method will return the negotiated host key.  If only one
     |      type of host key was set with `add_server_key`, that's the only key
     |      that will ever be returned.  But in cases where you have set more than
     |      one type of host key, the key type will be negotiated by the client,
     |      and this method will return the key of the type agreed on.  If the host
     |      key has not been negotiated yet, ``None`` is returned.  In client mode,
     |      the behavior is undefined.
     |
     |      :return:
     |          host key (`.PKey`) of the type negotiated by the client, or
     |          ``None``.
     |
     |  get_username(self)
     |      Return the username this connection is authenticated for.  If the
     |      session is not authenticated (or authentication failed), this method
     |      returns ``None``.
     |
     |      :return: username that was authenticated (a `str`), or ``None``.
     |
     |  getpeername(self)
     |      Return the address of the remote side of this Transport, if possible.
     |
     |      This is effectively a wrapper around ``getpeername`` on the underlying
     |      socket.  If the socket-like object has no ``getpeername`` method, then
     |      ``("unknown", 0)`` is returned.
     |
     |      :return:
     |          the address of the remote host, if known, as a ``(str, int)``
     |          tuple.
     |
     |  global_request(self, kind, data=None, wait=True)
     |      Make a global request to the remote host.  These are normally
     |      extensions to the SSH2 protocol.
     |
     |      :param str kind: name of the request.
     |      :param tuple data:
     |          an optional tuple containing additional data to attach to the
     |          request.
     |      :param bool wait:
     |          ``True`` if this method should not return until a response is
     |          received; ``False`` otherwise.
     |      :return:
     |          a `.Message` containing possible additional data if the request was
     |          successful (or an empty `.Message` if ``wait`` was ``False``);
     |          ``None`` if the request was denied.
     |
     |  is_active(self)
     |      Return true if this session is active (open).
     |
     |      :return:
     |          True if the session is still active (open); False if the session is
     |          closed
     |
     |  is_authenticated(self)
     |      Return true if this session is active and authenticated.
     |
     |      :return:
     |          True if the session is still open and has been authenticated
     |          successfully; False if authentication failed and/or the session is
     |          closed.
     |
     |  open_channel(self, kind, dest_addr=None, src_addr=None, window_size=None, max_packet_size=None, timeout=None)
     |      Request a new channel to the server. `Channels <.Channel>` are
     |      socket-like objects used for the actual transfer of data across the
     |      session. You may only request a channel after negotiating encryption
     |      (using `connect` or `start_client`) and authenticating.
     |
     |      .. note:: Modifying the the window and packet sizes might have adverse
     |          effects on the channel created. The default values are the same
     |          as in the OpenSSH code base and have been battle tested.
     |
     |      :param str kind:
     |          the kind of channel requested (usually ``"session"``,
     |          ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``)
     |      :param tuple dest_addr:
     |          the destination address (address + port tuple) of this port
     |          forwarding, if ``kind`` is ``"forwarded-tcpip"`` or
     |          ``"direct-tcpip"`` (ignored for other channel types)
     |      :param src_addr: the source address of this port forwarding, if
     |          ``kind`` is ``"forwarded-tcpip"``, ``"direct-tcpip"``, or ``"x11"``
     |      :param int window_size:
     |          optional window size for this session.
     |      :param int max_packet_size:
     |          optional max packet size for this session.
     |      :param float timeout:
     |          optional timeout opening a channel, default 3600s (1h)
     |
     |      :return: a new `.Channel` on success
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected, the session ends
     |          prematurely or there is a timeout opening a channel
     |
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  open_forward_agent_channel(self)
     |      Request a new channel to the client, of type
     |      ``"auth-agent@openssh.com"``.
     |
     |      This is just an alias for ``open_channel('auth-agent@openssh.com')``.
     |
     |      :return: a new `.Channel`
     |
     |      :raises: `.SSHException` --
     |          if the request is rejected or the session ends prematurely
     |
     |  open_forwarded_tcpip_channel(self, src_addr, dest_addr)
     |      Request a new channel back to the client, of type ``forwarded-tcpip``.
     |
     |      This is used after a client has requested port forwarding, for sending
     |      incoming connections back to the client.
     |
     |      :param src_addr: originator's address
     |      :param dest_addr: local (server) connected address
     |
     |  open_session(self, window_size=None, max_packet_size=None, timeout=None)
     |      Request a new channel to the server, of type ``"session"``.  This is
     |      just an alias for calling `open_channel` with an argument of
     |      ``"session"``.
     |
     |      .. note:: Modifying the the window and packet sizes might have adverse
     |          effects on the session created. The default values are the same
     |          as in the OpenSSH code base and have been battle tested.
     |
     |      :param int window_size:
     |          optional window size for this session.
     |      :param int max_packet_size:
     |          optional max packet size for this session.
     |
     |      :return: a new `.Channel`
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected or the session ends
     |          prematurely
     |
     |      .. versionchanged:: 1.13.4/1.14.3/1.15.3
     |          Added the ``timeout`` argument.
     |      .. versionchanged:: 1.15
     |          Added the ``window_size`` and ``max_packet_size`` arguments.
     |
     |  open_sftp_client(self)
     |      Create an SFTP client channel from an open transport.  On success, an
     |      SFTP session will be opened with the remote host, and a new
     |      `.SFTPClient` object will be returned.
     |
     |      :return:
     |          a new `.SFTPClient` referring to an sftp session (channel) across
     |          this transport
     |
     |  open_x11_channel(self, src_addr=None)
     |      Request a new channel to the client, of type ``"x11"``.  This
     |      is just an alias for ``open_channel('x11', src_addr=src_addr)``.
     |
     |      :param tuple src_addr:
     |          the source address (``(str, int)``) of the x11 server (port is the
     |          x11 port, ie. 6010)
     |      :return: a new `.Channel`
     |
     |      :raises:
     |          `.SSHException` -- if the request is rejected or the session ends
     |          prematurely
     |
     |  renegotiate_keys(self)
     |      Force this session to switch to new keys.  Normally this is done
     |      automatically after the session hits a certain number of packets or
     |      bytes sent or received, but this method gives you the option of forcing
     |      new keys whenever you want.  Negotiating new keys causes a pause in
     |      traffic both ways as the two sides swap keys and do computations.  This
     |      method returns when the session has switched to new keys.
     |
     |      :raises:
     |          `.SSHException` -- if the key renegotiation failed (which causes
     |          the session to end)
     |
     |  request_port_forward(self, address, port, handler=None)
     |      Ask the server to forward TCP connections from a listening port on
     |      the server, across this SSH session.
     |
     |      If a handler is given, that handler is called from a different thread
     |      whenever a forwarded connection arrives.  The handler parameters are::
     |
     |          handler(
     |              channel,
     |              (origin_addr, origin_port),
     |              (server_addr, server_port),
     |          )
     |
     |      where ``server_addr`` and ``server_port`` are the address and port that
     |      the server was listening on.
     |
     |      If no handler is set, the default behavior is to send new incoming
     |      forwarded connections into the accept queue, to be picked up via
     |      `accept`.
     |
     |      :param str address: the address to bind when forwarding
     |      :param int port:
     |          the port to forward, or 0 to ask the server to allocate any port
     |      :param callable handler:
     |          optional handler for incoming forwarded connections, of the form
     |          ``func(Channel, (str, int), (str, int))``.
     |
     |      :return: the port number (`int`) allocated by the server
     |
     |      :raises:
     |          `.SSHException` -- if the server refused the TCP forward request
     |
     |  run(self)
     |      Method representing the thread's activity.
     |
     |      You may override this method in a subclass. The standard run() method
     |      invokes the callable object passed to the object's constructor as the
     |      target argument, if any, with sequential and keyword arguments taken
     |      from the args and kwargs arguments, respectively.
     |
     |  send_ignore(self, byte_count=None)
     |      Send a junk packet across the encrypted link.  This is sometimes used
     |      to add "noise" to a connection to confuse would-be attackers.  It can
     |      also be used as a keep-alive for long lived connections traversing
     |      firewalls.
     |
     |      :param int byte_count:
     |          the number of random bytes to send in the payload of the ignored
     |          packet -- defaults to a random number from 10 to 41.
     |
     |  set_hexdump(self, hexdump)
     |      Turn on/off logging a hex dump of protocol traffic at DEBUG level in
     |      the logs.  Normally you would want this off (which is the default),
     |      but if you are debugging something, it may be useful.
     |
     |      :param bool hexdump:
     |          ``True`` to log protocol traffix (in hex) to the log; ``False``
     |          otherwise.
     |
     |  set_keepalive(self, interval)
     |      Turn on/off keepalive packets (default is off).  If this is set, after
     |      ``interval`` seconds without sending any data over the connection, a
     |      "keepalive" packet will be sent (and ignored by the remote host).  This
     |      can be useful to keep connections alive over a NAT, for example.
     |
     |      :param int interval:
     |          seconds to wait before sending a keepalive packet (or
     |          0 to disable keepalives).
     |
     |  set_log_channel(self, name)
     |      Set the channel for this transport's logging.  The default is
     |      ``"paramiko.transport"`` but it can be set to anything you want. (See
     |      the `.logging` module for more info.)  SSH Channels will log to a
     |      sub-channel of the one specified.
     |
     |      :param str name: new channel name for logging
     |
     |      .. versionadded:: 1.1
     |
     |  set_subsystem_handler(self, name, handler, *args, **kwargs)
     |      Set the handler class for a subsystem in server mode.  If a request
     |      for this subsystem is made on an open ssh channel later, this handler
     |      will be constructed and called -- see `.SubsystemHandler` for more
     |      detailed documentation.
     |
     |      Any extra parameters (including keyword arguments) are saved and
     |      passed to the `.SubsystemHandler` constructor later.
     |
     |      :param str name: name of the subsystem.
     |      :param handler:
     |          subclass of `.SubsystemHandler` that handles this subsystem.
     |
     |  start_client(self, event=None, timeout=None)
     |      Negotiate a new SSH2 session as a client.  This is the first step after
     |      creating a new `.Transport`.  A separate thread is created for protocol
     |      negotiation.
     |
     |      If an event is passed in, this method returns immediately.  When
     |      negotiation is done (successful or not), the given ``Event`` will
     |      be triggered.  On failure, `is_active` will return ``False``.
     |
     |      (Since 1.4) If ``event`` is ``None``, this method will not return until
     |      negotiation is done.  On success, the method returns normally.
     |      Otherwise an SSHException is raised.
     |
     |      After a successful negotiation, you will usually want to authenticate,
     |      calling `auth_password <Transport.auth_password>` or
     |      `auth_publickey <Transport.auth_publickey>`.
     |
     |      .. note:: `connect` is a simpler method for connecting as a client.
     |
     |      .. note::
     |          After calling this method (or `start_server` or `connect`), you
     |          should no longer directly read from or write to the original socket
     |          object.
     |
     |      :param .threading.Event event:
     |          an event to trigger when negotiation is complete (optional)
     |
     |      :param float timeout:
     |          a timeout, in seconds, for SSH2 session negotiation (optional)
     |
     |      :raises:
     |          `.SSHException` -- if negotiation fails (and no ``event`` was
     |          passed in)
     |
     |  start_server(self, event=None, server=None)
     |      Negotiate a new SSH2 session as a server.  This is the first step after
     |      creating a new `.Transport` and setting up your server host key(s).  A
     |      separate thread is created for protocol negotiation.
     |
     |      If an event is passed in, this method returns immediately.  When
     |      negotiation is done (successful or not), the given ``Event`` will
     |      be triggered.  On failure, `is_active` will return ``False``.
     |
     |      (Since 1.4) If ``event`` is ``None``, this method will not return until
     |      negotiation is done.  On success, the method returns normally.
     |      Otherwise an SSHException is raised.
     |
     |      After a successful negotiation, the client will need to authenticate.
     |      Override the methods `get_allowed_auths
     |      <.ServerInterface.get_allowed_auths>`, `check_auth_none
     |      <.ServerInterface.check_auth_none>`, `check_auth_password
     |      <.ServerInterface.check_auth_password>`, and `check_auth_publickey
     |      <.ServerInterface.check_auth_publickey>` in the given ``server`` object
     |      to control the authentication process.
     |
     |      After a successful authentication, the client should request to open a
     |      channel.  Override `check_channel_request
     |      <.ServerInterface.check_channel_request>` in the given ``server``
     |      object to allow channels to be opened.
     |
     |      .. note::
     |          After calling this method (or `start_client` or `connect`), you
     |          should no longer directly read from or write to the original socket
     |          object.
     |
     |      :param .threading.Event event:
     |          an event to trigger when negotiation is complete.
     |      :param .ServerInterface server:
     |          an object used to perform authentication and create `channels
     |          <.Channel>`
     |
     |      :raises:
     |          `.SSHException` -- if negotiation fails (and no ``event`` was
     |          passed in)
     |
     |  stop_thread(self)
     |
     |  use_compression(self, compress=True)
     |      Turn on/off compression.  This will only have an affect before starting
     |      the transport (ie before calling `connect`, etc).  By default,
     |      compression is off since it negatively affects interactive sessions.
     |
     |      :param bool compress:
     |          ``True`` to ask the remote client/server to compress traffic;
     |          ``False`` to refuse compression
     |
     |      .. versionadded:: 1.5.2
     |
     |  ----------------------------------------------------------------------
     |  Static methods defined here:
     |
     |  load_server_moduli(filename=None)
     |      (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 ``/etc/ssh/moduli``).
     |      If you call `load_server_moduli` and it returns ``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 str filename:
     |          optional path to the moduli file, if you happen to know that it's
     |          not in a standard location.
     |      :return:
     |          True if a moduli file was successfully loaded; False otherwise.
     |
     |      .. note:: This has no effect when used in client mode.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties defined here:
     |
     |  preferred_ciphers
     |
     |  preferred_compression
     |
     |  preferred_kex
     |
     |  preferred_keys
     |
     |  preferred_macs
     |
     |  preferred_pubkeys
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from threading.Thread:
     |
     |  getName(self)
     |      Return a string used for identification purposes only.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  isDaemon(self)
     |      Return whether this thread is a daemon.
     |
     |      This method is deprecated, use the daemon attribute instead.
     |
     |  is_alive(self)
     |      Return whether the thread is alive.
     |
     |      This method returns True just before the run() method starts until just
     |      after the run() method terminates. See also the module function
     |      enumerate().
     |
     |  join(self, timeout=None)
     |      Wait until the thread terminates.
     |
     |      This blocks the calling thread until the thread whose join() method is
     |      called terminates -- either normally or through an unhandled exception
     |      or until the optional timeout occurs.
     |
     |      When the timeout argument is present and not None, it should be a
     |      floating-point number specifying a timeout for the operation in seconds
     |      (or fractions thereof). As join() always returns None, you must call
     |      is_alive() after join() to decide whether a timeout happened -- if the
     |      thread is still alive, the join() call timed out.
     |
     |      When the timeout argument is not present or None, the operation will
     |      block until the thread terminates.
     |
     |      A thread can be join()ed many times.
     |
     |      join() raises a RuntimeError if an attempt is made to join the current
     |      thread as that would cause a deadlock. It is also an error to join() a
     |      thread before it has been started and attempts to do so raises the same
     |      exception.
     |
     |  setDaemon(self, daemonic)
     |      Set whether this thread is a daemon.
     |
     |      This method is deprecated, use the .daemon property instead.
     |
     |  setName(self, name)
     |      Set the name string for this thread.
     |
     |      This method is deprecated, use the name attribute instead.
     |
     |  start(self)
     |      Start the thread's activity.
     |
     |      It must be called at most once per thread object. It arranges for the
     |      object's run() method to be invoked in a separate thread of control.
     |
     |      This method will raise a RuntimeError if called more than once on the
     |      same thread object.
     |
     |  ----------------------------------------------------------------------
     |  Readonly properties inherited from threading.Thread:
     |
     |  ident
     |      Thread identifier of this thread or None if it has not been started.
     |
     |      This is a nonzero integer. See the get_ident() function. Thread
     |      identifiers may be recycled when a thread exits and another thread is
     |      created. The identifier is available even after the thread has exited.
     |
     |  native_id
     |      Native integral thread ID of this thread, or None if it has not been started.
     |
     |      This is a non-negative integer. See the get_native_id() function.
     |      This represents the Thread ID as reported by the kernel.
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors inherited from threading.Thread:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object
     |
     |  daemon
     |      A boolean value indicating whether this thread is a daemon thread.
     |
     |      This must be set before start() is called, otherwise RuntimeError is
     |      raised. Its initial value is inherited from the creating thread; the
     |      main thread is not a daemon thread and therefore all threads created in
     |      the main thread default to daemon = False.
     |
     |      The entire Python program exits when only daemon threads are left.
     |
     |  name
     |      A string used for identification purposes only.
     |
     |      It has no semantics. Multiple threads may be given the same name. The
     |      initial name is set by the constructor.
     |
     |  ----------------------------------------------------------------------
     |  Methods inherited from paramiko.util.ClosingContextManager:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)

FUNCTIONS
    md5 = openssl_md5(string=b'', *, usedforsecurity=True)
        Returns a md5 hash object; optionally initialized with a string

    sha1 = openssl_sha1(string=b'', *, usedforsecurity=True)
        Returns a sha1 hash object; optionally initialized with a string

    sha256 = openssl_sha256(string=b'', *, usedforsecurity=True)
        Returns a sha256 hash object; optionally initialized with a string

    sha512 = openssl_sha512(string=b'', *, usedforsecurity=True)
        Returns a sha512 hash object; optionally initialized with a string

DATA
    CONNECTION_FAILED_CODE = {1: 'Administratively prohibited', 2: 'Connec...
    DEBUG = 10
    DEFAULT_MAX_PACKET_SIZE = 32768
    DEFAULT_WINDOW_SIZE = 2097152
    ERROR = 40
    HIGHEST_USERAUTH_MESSAGE_ID = 79
    INFO = 20
    MAX_WINDOW_SIZE = 4294967295
    MIN_PACKET_SIZE = 4096
    MIN_WINDOW_SIZE = 32768
    MSG_CHANNEL_CLOSE = 97
    MSG_CHANNEL_DATA = 94
    MSG_CHANNEL_EOF = 96
    MSG_CHANNEL_EXTENDED_DATA = 95
    MSG_CHANNEL_FAILURE = 100
    MSG_CHANNEL_OPEN = 90
    MSG_CHANNEL_OPEN_FAILURE = 92
    MSG_CHANNEL_OPEN_SUCCESS = 91
    MSG_CHANNEL_REQUEST = 98
    MSG_CHANNEL_SUCCESS = 99
    MSG_CHANNEL_WINDOW_ADJUST = 93
    MSG_DEBUG = 4
    MSG_DISCONNECT = 1
    MSG_EXT_INFO = 7
    MSG_GLOBAL_REQUEST = 80
    MSG_IGNORE = 2
    MSG_KEXINIT = 20
    MSG_NAMES = {1: 'disconnect', 2: 'ignore', 3: 'unimplemented', 4: 'deb...
    MSG_NEWKEYS = 21
    MSG_REQUEST_FAILURE = 82
    MSG_REQUEST_SUCCESS = 81
    MSG_SERVICE_ACCEPT = 6
    MSG_UNIMPLEMENTED = 3
    OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED = 1
    OPEN_SUCCEEDED = 0
    WARNING = 30
    cMSG_CHANNEL_OPEN = b'Z'
    cMSG_CHANNEL_OPEN_FAILURE = b'\\'
    cMSG_CHANNEL_OPEN_SUCCESS = b'['
    cMSG_EXT_INFO = b'\x07'
    cMSG_GLOBAL_REQUEST = b'P'
    cMSG_IGNORE = b'\x02'
    cMSG_KEXINIT = b'\x14'
    cMSG_NEWKEYS = b'\x15'
    cMSG_REQUEST_FAILURE = b'R'
    cMSG_REQUEST_SUCCESS = b'Q'
    cMSG_SERVICE_REQUEST = b'\x05'
    cMSG_UNIMPLEMENTED = b'\x03'
    xffffffff = 4294967295

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\transport.py

paramiko.util
Python Library Documentation: module paramiko.util in paramiko

NAME
    paramiko.util

DESCRIPTION
    The dreaded ``utils.py`` - clearinghouse for commonly used functions or data
    that don't belong anywhere else.

CLASSES
    builtins.object
        ClosingContextManager
        PFilter

    class ClosingContextManager(builtins.object)
     |  Methods defined here:
     |
     |  __enter__(self)
     |
     |  __exit__(self, type, value, traceback)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

    class PFilter(builtins.object)
     |  # make only one filter object, so it doesn't get applied more than once
     |
     |  Methods defined here:
     |
     |  filter(self, record)
     |
     |  ----------------------------------------------------------------------
     |  Data descriptors defined here:
     |
     |  __dict__
     |      dictionary for instance variables
     |
     |  __weakref__
     |      list of weak references to the object

FUNCTIONS
    asbytes(s)
        Coerce to bytes if possible or return unchanged.

    b(s, encoding='utf8')
        cast unicode or bytes to bytes

    bit_length(n)

    clamp_value(minimum, val, maximum)

    constant_time_bytes_eq(a, b)

    deflate_long(n, add_sign_padding=True)
        turns a long-int into a normalized byte string
        (adapted from Crypto.Util.number)

    format_binary(data, prefix='')

    format_binary_line(data)

    generate_key_bytes(hash_alg, salt, key, nbytes)
        Given a password, passphrase, or other human-source key, scramble it
        through a secure hash into some keyworthy bytes.  This specific algorithm
        is used for encrypting/decrypting private key files.

        :param function hash_alg: A function which creates a new hash object, such
            as ``hashlib.sha256``.
        :param salt: data to salt the hash with.
        :type bytes salt: Hash salt bytes.
        :param str key: human-entered password or passphrase.
        :param int nbytes: number of bytes to generate.
        :return: Key data, as `bytes`.

    get_logger(name)

    get_thread_id()

    inflate_long(s, always_positive=False)
        turns a normalized byte string into a long-int
        (adapted from Crypto.Util.number)

    load_host_keys(filename)
        Read a file of known SSH host keys, in the format used by openssh, and
        return a compound dict of ``hostname -> keytype ->`` `PKey
        <paramiko.pkey.PKey>`. The hostname may be an IP address or DNS name.

        This type of file unfortunately doesn't exist on Windows, but on posix,
        it will usually be stored in ``os.path.expanduser("~/.ssh/known_hosts")``.

        Since 1.5.3, this is just a wrapper around `.HostKeys`.

        :param str filename: name of the file to read host keys from
        :return:
            nested dict of `.PKey` objects, indexed by hostname and then keytype

    log_to_file(filename, level=10)
        send paramiko logs to a logfile,
        if they're not already going somewhere

    lookup_ssh_host_config(hostname, config)
        Provided only as a backward-compatible wrapper around `.SSHConfig`.

    mod_inverse(x, m)

    parse_ssh_config(file_obj)
        Provided only as a backward-compatible wrapper around `.SSHConfig`.

        .. deprecated:: 2.7
            Use `SSHConfig.from_file` instead.

    safe_string(s)

    tb_strings()

    u(s, encoding='utf8')
        cast bytes or unicode to unicode

DATA
    DEBUG = 10
    max_byte = b'\xff'
    xffffffff = 4294967295
    zero_byte = b'\x00'

FILE
    c:\users\youse\appdata\local\programs\python\python312\lib\site-packages\paramiko\util.py