o
    9Bi                     @  sN   d Z ddlmZ ddlmZmZ ddlmZ erddlm	Z	 G dd dZ
dS )	z
The parent class for all the SSH services.  Currently implemented services
are ssh-userauth and ssh-connection.

Maintainer: Paul Swartz
    )annotations)TYPE_CHECKINGDict)Logger)SSHTransportBasec                   @  sX   e Zd ZU dZded< i Zded< dZded< e Zdd	 Z	d
d Z
dd Zdd ZdS )
SSHServiceNbytesnamezDict[int, str]protocolMessageszSSHTransportBase | None	transportc                 C     dS )zE
        called when the service is active on the transport.
        N selfr   r   Y/var/www/html/Trade-python/venv/lib/python3.10/site-packages/twisted/conch/ssh/service.pyserviceStarted       zSSHService.serviceStartedc                 C  r   )z
        called when the service is stopped, either by the connection ending
        or by another service being started
        Nr   r   r   r   r   serviceStopped"   r   zSSHService.serviceStoppedc                 C  s   d | j| jj S )NzSSHService {!r} on {})formatr	   r   	logPrefixr   r   r   r   r   (   s   zSSHService.logPrefixc                 C  s\   || j v r| j | }t| d|dd  d}|dur||S | jjd||d | j  dS )zB
        called when we receive a packet on the transport
        zssh_%s   Nz'couldn't handle {messageNum} {packet!r})
messageNumpacket)r
   getattr_loginfor   sendUnimplemented)r   r   r   messageTypefr   r   r   packetReceived-   s   

zSSHService.packetReceived)__name__
__module____qualname__r	   __annotations__r
   r   r   r   r   r   r   r   r   r   r   r   r      s   
 r   N)__doc__
__future__r   typingr   r   twisted.loggerr   twisted.conch.ssh.transportr   r   r   r   r   r   <module>   s   