
    a(                         d Z ddlZddlmZmZmZmZ  edd      \  ZZ	Z
ZZZ edd      \  ZZ edd	      \  ZZZZd
Z ed
d      \  ZZ ed
d      \  ZZ edd      \  ZZZZdZ edd      \  ZZZ  edd      \  Z!Z"Z#Z$Z%Z&Z'Z(Z)Z*Z+ ee      Z, ee	      Z- ee
      Z. ee      Z/ ee      Z0 ee      Z1 ee      Z2 ee      Z3 ee      Z4 ee      Z5 ee      Z6 ee      Z7 ee      Z8 ee      Z9 ee      Z: ee      Z; ee      Z< ee      Z= ee      Z> ee      Z? ee      Z@ ee      ZA ee      ZB ee       ZC ee!      ZD ee"      ZE ee#      ZF ee$      ZG ee%      ZH ee&      ZI ee'      ZJ ee(      ZK ee)      ZL ee*      ZM ee+      ZNi ede	de
dedededededdddddd d!d"d#d$d%d&d'd(ed)ed*i ed+ed,ed-ed.ed/ed0e d1e!d2e"d3e#d4e$d5e%d6e&d7e'd8e(d9e)d:e*d;e+d<ed=ed>ed?ed@edAedBiZO edC      \  ZPZQZR eddD      \  ZSZTZUZVZWdEdFdGdHdIZXdJ\  ZYZZZ[ ed      Z\ ed      Z] edK      Z^ edL      Z_ edM      Z` edN      Zae`eaz   Zbere`ZceaZdndMZcdNZddO Ze edP      Zf edQ      ZgdRZhdSZidTZjdUZkdVZldWZmdXZnej                  Zoej                  Zpej                  Zqej                  Zrej                  ZsdYZtdZZud[Zvd[Zwd\ZxdPZyy)]z(
Common constants and global variables.
    N)byte_chrPY2longb            2   6   <   >   ?   C   O   P   S   Z   e   
disconnectignoreunimplementeddebugzservice-requestzservice-acceptkexinitnewkeys   kex30   kex31    kex32!   kex33"   kex34(   kex40)   kex41zuserauth-requestzuserauth-failurezuserauth-successzuserauth--bannerzuserauth-60(pk-ok/info-request)zuserauth-info-responsezglobal-requestzrequest-successzrequest-failurezchannel-openzchannel-open-successzchannel-open-failurezchannel-window-adjustzchannel-datazchannel-extended-datazchannel-eofzchannel-closezchannel-requestzchannel-successzchannel-failurezuserauth-gssapi-responsezuserauth-gssapi-tokenz!userauth-gssapi-exchange-completezuserauth-gssapi-errorzuserauth-gssapi-error-tokenzuserauth-gssapi-mic      zAdministratively prohibitedzConnect failedzUnknown channel typezResource shortage)r      r*      )r         r-      r.   
   c                     	 t        |       S # t        $ r' 	 | j                         cY S # t        $ r | cY cY S w xY ww xY w)z:
    Coerce to bytes if possible or return unchanged.
    )r   	TypeErrorasbytesAttributeError)ss    /lib/python3.12/site-packages/paramiko/common.pyr4   r4      sJ     t 		 99; 	 H			s    
 	=)=9=9=l    l        i  i  i  i  i  i  8   g{Gz?i    i   i   )z__doc__loggingparamiko.py3compatr   r   r   r   rangeMSG_DISCONNECT
MSG_IGNOREMSG_UNIMPLEMENTED	MSG_DEBUGMSG_SERVICE_REQUESTMSG_SERVICE_ACCEPTMSG_KEXINITMSG_NEWKEYSMSG_USERAUTH_REQUESTMSG_USERAUTH_FAILUREMSG_USERAUTH_SUCCESSMSG_USERAUTH_BANNERMSG_USERAUTH_PK_OKMSG_USERAUTH_INFO_REQUESTMSG_USERAUTH_INFO_RESPONSEMSG_USERAUTH_GSSAPI_RESPONSEMSG_USERAUTH_GSSAPI_TOKEN%MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETEMSG_USERAUTH_GSSAPI_ERRORMSG_USERAUTH_GSSAPI_ERRTOKMSG_USERAUTH_GSSAPI_MICHIGHEST_USERAUTH_MESSAGE_IDMSG_GLOBAL_REQUESTMSG_REQUEST_SUCCESSMSG_REQUEST_FAILUREMSG_CHANNEL_OPENMSG_CHANNEL_OPEN_SUCCESSMSG_CHANNEL_OPEN_FAILUREMSG_CHANNEL_WINDOW_ADJUSTMSG_CHANNEL_DATAMSG_CHANNEL_EXTENDED_DATAMSG_CHANNEL_EOFMSG_CHANNEL_CLOSEMSG_CHANNEL_REQUESTMSG_CHANNEL_SUCCESSMSG_CHANNEL_FAILUREcMSG_DISCONNECTcMSG_IGNOREcMSG_UNIMPLEMENTED
cMSG_DEBUGcMSG_SERVICE_REQUESTcMSG_SERVICE_ACCEPTcMSG_KEXINITcMSG_NEWKEYScMSG_USERAUTH_REQUESTcMSG_USERAUTH_FAILUREcMSG_USERAUTH_SUCCESScMSG_USERAUTH_BANNERcMSG_USERAUTH_PK_OKcMSG_USERAUTH_INFO_REQUESTcMSG_USERAUTH_INFO_RESPONSEcMSG_USERAUTH_GSSAPI_RESPONSEcMSG_USERAUTH_GSSAPI_TOKEN&cMSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETEcMSG_USERAUTH_GSSAPI_ERRORcMSG_USERAUTH_GSSAPI_ERRTOKcMSG_USERAUTH_GSSAPI_MICcMSG_GLOBAL_REQUESTcMSG_REQUEST_SUCCESScMSG_REQUEST_FAILUREcMSG_CHANNEL_OPENcMSG_CHANNEL_OPEN_SUCCESScMSG_CHANNEL_OPEN_FAILUREcMSG_CHANNEL_WINDOW_ADJUSTcMSG_CHANNEL_DATAcMSG_CHANNEL_EXTENDED_DATAcMSG_CHANNEL_EOFcMSG_CHANNEL_CLOSEcMSG_CHANNEL_REQUESTcMSG_CHANNEL_SUCCESScMSG_CHANNEL_FAILURE	MSG_NAMESAUTH_SUCCESSFULAUTH_PARTIALLY_SUCCESSFULAUTH_FAILEDOPEN_SUCCEEDED'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITEDOPEN_FAILED_CONNECT_FAILED OPEN_FAILED_UNKNOWN_CHANNEL_TYPEOPEN_FAILED_RESOURCE_SHORTAGECONNECTION_FAILED_CODE DISCONNECT_SERVICE_NOT_AVAILABLE!DISCONNECT_AUTH_CANCELLED_BY_USER)DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE	zero_byteone_byte	four_bytemax_bytecr_bytelinefeed_bytecrlfcr_byte_valuelinefeed_byte_valuer4   	xffffffff	x80000000o666o660o644o600o777o700o70DEBUGINFOWARNINGERRORCRITICALio_sleepDEFAULT_WINDOW_SIZEDEFAULT_MAX_PACKET_SIZEMIN_WINDOW_SIZEMIN_PACKET_SIZEMAX_WINDOW_SIZE     r7   <module>r      s  &  5 5 
!QK"2r] k 
"bM :?B- 76<A"bM 98 
"bM)  AFr2 >(*= 
"cN >*z"/0 i 
 34 12 $$ !56  !56  !56  34 12 %&?@ &'AB  ()E F %&?@ )1)* & &&?@ &'AB #$;< 12  34  34 -. $%=> $%=> %&?@ -. %&?@ O, /0  34  34  34 *L** * w	*
 ** (* * * * * * * * * *  ,!*" ,#*$ ,%*& +'*( 9)**  8+*, (-*. */*0 *1*2 n3*4 45*6 47*8 69*: n;*< 6=*> ]?*@ A*B *C*D *E*F * "<6)+N6 =2S*	\ ;@( 7*K 
!QK+$!
 %	  	$%- QK	A;QK	D>
2,M'M* 		





||
// " ! 
   r   