
    ohG                        d dl Z d dlZd dlZd dlmZ d dlmZmZmZ d dl	m
Z
  edd      \  ZZZZZZZZZZZZZZZZZZZZ edd      \  Z Z!Z"Z#Z$ ed	d
      \  Z%Z&d Z' edd      \  Z(Z)Z*Z+Z,Z-Z.Z/g dZ0dZ1dZ2dZ3dZ4dZ5dZ6dZ7i edededededededededededededed ed!ed"ed#ed$ed%ed&e d'e!d(e"d)e#d*e$d+e%d,e&d-i
Z8 G d. d/e9      Z: G d0 d1e;      Z< G d2 d3      Z=y)4    N)util)DEBUGbyte_chrbyte_ord)Message      e   j         	   )	SuccesszEnd of filezNo such filezPermission deniedFailurezBad messagezNo connectionzConnection lostzOperation unsupported                   initversionopenclosereadwritelstatfstatsetstatfsetstatopendirreaddirremovemkdirrmdirrealpathstatrenamereadlinksymlinkstatushandledatanameattrsextendedextended_replyc                       e Zd Zy)int64N__name__
__module____qualname__     _/var/www/pru.catia.catastroantioquia-mas.com/tasa/lib/python3.12/site-packages/paramiko/sftp.pyr3   r3   }       r9   r3   c                       e Zd Zy)	SFTPErrorNr4   r8   r9   r:   r=   r=      r;   r9   r=   c                   <    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
y	)
BaseSFTPc                 T    t        j                  d      | _        d | _        d| _        y )Nzparamiko.sftpF)r   
get_loggerloggersockultra_debug)selfs    r:   __init__zBaseSFTP.__init__   s!    ooo6	 r9   c                     t               }|j                  t               | j                  t        |       | j                         \  }}|t        k7  rt        d      t        j                  d|d d       d   }|S )NIncompatible sftp protocol>Ir   r   )
r   add_int_VERSION_send_packetCMD_INIT_read_packetCMD_VERSIONr=   structunpack)rE   mtr-   r   s        r:   _send_versionzBaseSFTP._send_version   sm    I			((A&##%4899--d2Ah/2 r9   c                    | j                         \  }}|t        k7  rt        d      t        j                  d|d d       d   }ddg}t               }|j                  t                |j                  |  | j                  t        |       |S )NrH   rI   r   r   z
check-filezmd5,sha1)rN   rM   r=   rP   rQ   r   rJ   rK   addrL   rO   )rE   rS   r-   r   extension_pairsmsgs         r:   _send_server_versionzBaseSFTP._send_server_version   s     ##%4=899--d2Ah/2'4iH!+s+r9   c                 @     | j                   j                  ||g|  y )N)rB   log)rE   levelrX   argss       r:   _logzBaseSFTP._log   s    s*T*r9   c                     t        |      dkD  rM| j                  j                  |      }|dk  r
t               |t        |      k(  ry ||d  }t        |      dkD  rMy )Nr   )lenrC   sendEOFError)rE   outns      r:   
_write_allzBaseSFTP._write_all   sY    #hl		s#AAvj CH}ab'C #hl 	r9   c                    t               }|dkD  rt        | j                  t        j                        rS	 t	        j                  | j                  gg g d      \  }}}t        |      dkD  r| j                  j                  |      }nR| j                  j                  |      }t        |      dk(  r
t               ||z  }|t        |      z  }|dkD  r|S )Nr   g?)bytes
isinstancerC   socketselectr`   recvrb   )rE   rd   rc   r   r   errxs          r:   	_read_allzBaseSFTP._read_all   s    g!e$))V]]3 '-}}dii["b#'N$D%4y1} IINN1-	  IINN1%1v{j 1HCQKA% !e& 
r9   c                    |j                         }t        j                  dt        |      dz         t	        |      z   |z   }| j
                  r*| j                  t        t        j                  |d             | j                  |       y )NrI   r   zOUT: )asbytesrP   packr`   r   rD   r^   r   r   format_binaryre   )rE   rS   packetrc   s       r:   rL   zBaseSFTP._send_packet   sd    !kk$Fa08A;>GIIeT//W=>r9   c                 b   | j                  d      }t        |d         rt        d      t        j                  d|      d   }| j                  |      }| j
                  r*| j                  t        t        j                  |d             |dkD  rt        |d         }||dd  fS dt               fS )Nr   r   zGarbage packet receivedrI   zIN: r   )rn   r   r=   rP   rQ   rD   r^   r   r   rr   rg   )rE   rm   sizer-   rS   s        r:   rN   zBaseSFTP._read_packet   s    NN1 AaD>566}}T1%a(~~d#IIeT//f=>!8a!Ad12h;%'zr9   N)r5   r6   r7   rF   rT   rY   r^   re   rn   rL   rN   r8   r9   r:   r?   r?      s*    !
+.r9   r?   )>rj   ri   rP   paramikor   paramiko.commonr   r   r   paramiko.messager   rangerM   rO   CMD_OPEN	CMD_CLOSECMD_READ	CMD_WRITE	CMD_LSTAT	CMD_FSTATCMD_SETSTATCMD_FSETSTATCMD_OPENDIRCMD_READDIR
CMD_REMOVE	CMD_MKDIR	CMD_RMDIRCMD_REALPATHCMD_STAT
CMD_RENAMECMD_READLINKCMD_SYMLINK
CMD_STATUS
CMD_HANDLECMD_DATACMD_NAME	CMD_ATTRSCMD_EXTENDEDCMD_EXTENDED_REPLYSFTP_OKSFTP_EOFSFTP_NO_SUCH_FILESFTP_PERMISSION_DENIEDSFTP_FAILURESFTP_BAD_MESSAGESFTP_NO_CONNECTIONSFTP_CONNECTION_LOSTSFTP_OP_UNSUPPORTED	SFTP_DESCSFTP_FLAG_READSFTP_FLAG_WRITESFTP_FLAG_APPENDSFTP_FLAG_CREATESFTP_FLAG_TRUNCSFTP_FLAG_EXCLrK   	CMD_NAMESintr3   	Exceptionr=   r?   r8   r9   r:   <module>r      s  &     5 5 $0 
!RL+:?S/ 7Z8Y%*3_ "!
 
!QK	
	   f f w	
 f w w w  *    w w  *!" f#$ *ffw*(7	J	C 			 	[ [r9   