OwlCyberSecurity - MANAGER
Edit File: transports.cpython-36.pyc
3 �U�f�|������������������@���sZ��d�dl�Z�d�dlZd�dlZd�dlmZ�d�dlmZmZ�d�dlm Z �d�dl mZ�y d�dlZd�dl mZmZmZ�W�n*�ek r����d�dljZeZeZeZY�nX�dZdZG�d d ��d e�ZG�dd��dej�ZG�d d��de�ZG�dd��de�ZG�dd��de�ZG�dd��d�Zd%dd�Z d&dd�Z!G�dd��d�Z"G�dd��d�Z#d'dd �Z$d(d!d"�Z%e#Z&G�d#d$��d$�Z'dS�))�����N)�connections)�sstr�bstr)�SmartIO)�UserDictCase)�IntType� StringType�ListTypezI2.8.62.8.6-8.module_el8.10.0+6858+3ddf28328.module_el8.10.0+6858+3ddf2832����c���������������@���s���e�Zd�ZdS�)�NotProcessedN)�__name__� __module__�__qualname__��r���r���� /usr/lib/python3.6/transports.pyr���$���s���r���c���������������@���s����e�Zd�Zde�Zd'dd�Zd(dd�Zd d ��Zdd��Zd d��Z d)dd�Z dd��Zdd��Zdd��Z dd��Zdd��Zdd��Zd*dd�Zdd ��Zd!d"��Zd#d$��Zd%d&��ZdS�)+� Transportzrhn.rpclib.py/%sr���Nc�������������C���sz���d|�_�ddd�|�_|�j||d��t��|�_d|�_d�|�_d|�_d�|�_||�_ ||�_ d|�_d�|�_d�|�_ d�|�_d�|�_||�_||�_d�S�)NFr���)�transfer�encoding�POSTi�@��)Z_use_builtin_types�_transport_flags�set_transport_flagsr����_headers�verbose� connection�method�_lang�refreshCallback�progressCallback� bufferSize� headers_in�response_status�response_reason�_redirectedZ _use_datetime�timeout)�selfr���r���r���r���Zuse_datetimer#���r���r���r����__init__*���s"����zTransport.__init__��@��c�������������C���s���||�_�||�_d�S�)N)r���r���)r$���r���r���r���r���r����set_progress_callback?���s����zTransport.set_progress_callbackc�������������C���s ���||�_�d�S�)N)r���)r$���r���r���r���r����set_refresh_callbackD���s����zTransport.set_refresh_callbackc�������������C���s���|d�krd}||�_�d�S�)Ni�@��)r���)r$���r���r���r���r����set_buffer_sizeJ���s����zTransport.set_buffer_sizec�������������C���s���|dkrt�d|���||�_d�S�)N�GETr���zUnknown request method %s)r*���r���)�IOErrorr���)r$���r���r���r���r���� set_methodR���s����zTransport.set_methodc�������������K���s<���|�j�j|��|d�k r||�j�d<�|d�k r0||�j�d<�|�j���d�S�)Nr���r���)r����update�validate_transport_flags)r$���r���r����kwargsr���r���r���r���X���s���� zTransport.set_transport_flagsc�������������C���s ���|�j�j��S�)N)r����copy)r$���r���r���r����get_transport_flagsc���s����zTransport.get_transport_flagsc�������������C���sH���|�j�jd�}t|dd�}||�j�d<�|�j�jd�}t|dd�}||�j�d<�d�S�)Nr�������)�strictr���)r����get�lookupTransfer�lookupEncoding)r$���r���r���r���r���r���r.���f���s���� z"Transport.validate_transport_flagsc�������������C���s@���t�|�t�g��t�f��gkr.dd��|D��|�j|<�nt|�|�j|<�d�S�)Nc�������������S���s���g�|�]}t�|��qS�r���)�str)�.0�ar���r���r���� <listcomp>t���s����z(Transport.set_header.<locals>.<listcomp>)�typer���r7���)r$����name�argr���r���r���� set_headerq���s����zTransport.set_headerc�������������C���sF���||�j�kr&|�j�|�}t|t�s4|g}ng��}|�j�|<�|jt|���d�S�)N)r���� isinstancer ����appendr7���)r$���r<���r=���Zvlistr���r���r���� add_headerx���s���� zTransport.add_headerc�������������C���s���|�j�j���d�S�)N)r����clear)r$���r���r���r���� clear_headers����s����zTransport.clear_headersc�������������C���s8���|�j�rtd|f���|�jr*tj||�jd�S�tj|�S�d�S�)NzConnecting via http to %s)r#���)r����printr#���r����HTTPConnection)r$����hostr���r���r����get_connection����s ����zTransport.get_connectionc�������������C���sX��||�_�|�j|�\}}}|sg�}|�j|�}|j|�j��|�j�rJ|j|�j�d���t||�jd�}|jf�|�j ��|j d|�j��x*t|�jj ���|�D�]\} } |j | | ��q�W�|j dd��|j|��xd D�]}|j|��q�W�|j||�\}} |�j��rtd��x$|j ��D�]\} } td | | f���q�W�| jdk�r6|d�|�_| j|�_d�S�||�_| j|�_| j|�_|�j| |�S�)Nr2���)r���r���z User-AgentzContent-Typeztext/xml�Content-Length�HostzIncoming headers:z %s : %s�-���.��ZLocation)rH���rI���)rJ���rK���)r���� get_host_inforG���Zset_user_agent� user_agentZset_debuglevel�Outputr���r���r���r>����listr����items�process�clear_header� send_httprD����statusr"���r ���r����reasonr!����_process_response)r$���rF����handlerZrequest_bodyr���� extra_headers�x509r���Zreq�header�value�h�headers�fdr���r���r����request����s<���� zTransport.requestc�������������C���sb���t�|�j|�j|�jd�}|j|�}t|t�rPt|j|j |j |�j|�jd�}|j|_|S�|j���|�j|�S�)N)r���r���)r���r���) �Inputr���r���r����decoder?����InputStream�Filer^����lengthr<����close�parse_response)r$���r^���r���Zresp�fr���r���r���rV�������s���� zTransport._process_responsec�������������C���s���|�j�S�)N)r"���)r$���r���r���r���� redirected����s����zTransport.redirectedc�������������C���sf���|�j���\}}x@|jd�}|sP�|�jr,|�j���|�jr@tdt|���|j|��qW�|j���|j���|j��S�)Ni���zbody:)Z getparser�readr���r���rD����reprZfeedre���)r$���rg����p�u�responser���r���r���rf�������s���� zTransport.parse_responsec�������������C���s ���||�_�d�S�)N)r���)r$����langr���r���r����setlang����s����zTransport.setlang)r���r���NNNN)r&���)NN)r���)r���r ���r����__version__rM���r%���r'���r(���r)���r,���r���r1���r.���r>���rA���rC���rG���r_���rV���rh���rf���ro���r���r���r���r���r���'���s&���� 8r���c���������������@���s&���e�Zd�Zd dd�Zdd��Zdd��ZdS�) � SafeTransportr���Nc�������������C���s<���t�j|�|||||d��g�|�_x|p$g�D�]}|�j|��q&W�d�S�)N)r���r���r#���)r���r%���� trusted_certs�add_trusted_cert)r$���r���r���r���r���rr���r#����certfiler���r���r���r%�������s���� zSafeTransport.__init__c�������������C���s*���t�j|t�j�std|���|�jj|��d�S�)Nz%Certificate file %s is not accessible)�os�access�R_OK� ValueErrorrr���r@���)r$���rt���r���r���r���rs�����s����zSafeTransport.add_trusted_certc�������������C���sR���|�j�|�\}}}|�jr$td|f���|�jr>tj||�j|�jd�S�tj||�jd�S�d�S�)NzConnecting via https to %s)rr���r#���)rr���)rL���r���rD���r#���r���ZHTTPSConnectionrr���)r$���rF���rX���rY���r���r���r���rG�����s����zSafeTransport.get_connection)r���r���NNNN)r���r ���r���r%���rs���rG���r���r���r���r���rq�������s���� rq���c���������������@���s���e�Zd�Zddd�Zdd��ZdS�)�ProxyTransportNr���c ������� ������C���s,���t�j|�|||||d��||�_||�_||�_d�S�)N)r���r���r#���)r���r%����_proxy�_proxy_username�_proxy_password) r$����proxy� proxyUsername� proxyPasswordr���r���r���r���r#���r���r���r���r%�����s���� zProxyTransport.__init__c�������������C���s^���|�j�r td||�j|�j|�jf���|�jrBtj|�j||�j|�j|�jd�S�tj|�j||�j|�jd�S�d�S�)Nz8Connecting via http to %s proxy %s, username %s, pass %s)�username�passwordr#���)r����r����)r���rD���rz���r{���r|���r#���r���ZHTTPProxyConnection)r$���rF���r���r���r���rG���#��s���� zProxyTransport.get_connection)NNr���r���NNN)r���r ���r���r%���rG���r���r���r���r���ry�����s����� ry���c���������������@���s&���e�Zd�Zd dd�Zdd��Zdd��ZdS�) �SafeProxyTransportNr���c �������������C���sB���t�j|�|||||||| d� �g�|�_x|p*g�D�]} |�j| ��q,W�d�S�)N)r~���r���r���r���r���r���r#���)ry���r%���rr���rs���)r$���r}���r~���r���r���r���r���r���rr���r#���rt���r���r���r���r%���0��s����zSafeProxyTransport.__init__c�������������C���s*���t�j|t�j�std|���|�jj|��d�S�)Nz%Certificate file %s is not accessible)ru���rv���rw���rx���rr���r@���)r$���rt���r���r���r���rs���=��s����z#SafeProxyTransport.add_trusted_certc�������������C���sf���|�j�r td||�j|�j|�jf���|�jrFtj|�j||�j|�j|�j|�jd�S�tj|�j||�j|�j|�jd�S�d�S�)Nz9Connecting via https to %s proxy %s, username %s, pass %s)r����r����rr���r#���)r����r����rr���) r���rD���rz���r{���r|���r#���r���ZHTTPSProxyConnectionrr���)r$���rF���r���r���r���rG���B��s���� z!SafeProxyTransport.get_connection)NNr���r���NNNN)r���r ���r���r%���rs���rG���r���r���r���r���r����/��s ����� r����c���������������@���s:���e�Zd�Zddd�Zejfdd�Zejfdd �Zd d��ZdS�) r`���N������@��c�������������C���s���d�|�_�d�|�_d�|�_d|�_d|�_d|�_||�_||�_||�_|s�dt j krTt j d�j��|�_�dt j krnt j d�j��|�_dt j kr�t j d�j��|�_dt j kr�tt j d��|�_dt j kr�t j d�|�_d t j kr�t j d �|�_n�x�|j ��D�]�}||�}|j��}|d k�r&yt|�|�_W�n�tk �r"���d|�_Y�nX�q�|dk�r<|j��|�_�q�|dk�rR|j��|�_q�|d k�rh|j��|�_q�|dk�r~|j��|�_q�|dkr�||�_q�W�d�|�_d�S�)Nr����C��ZHTTP_CONTENT_TRANSFER_ENCODINGZHTTP_CONTENT_ENCODINGzCONTENT-TYPEZCONTENT_LENGTHZHTTP_ACCEPT_LANGUAGEZHTTP_X_PACKAGE_FILENAMEzcontent-lengthzcontent-transfer-encodingzcontent-encodingzcontent-typezaccept-languagezx-package-filename)r���r���r;���rd���rn���r<���r���r����max_mem_sizeru����environ�lower�int�keysrx����io)r$���r]���r���r���r����rZ���r[���r\���r���r���r���r%���h��sR���� zInput.__init__c�������������C���s����|�j�dkrd�S�|�jr2t||�j|�j|�j|�jd�|�_n t|�|�_|�j�sN|�jdkrRd�S�|�jdkr�dd�l }|�j}|j dd��t|�jd�|�_|j||�j��n t |�j��d�S�)Nzapplication/octet-stream)r���r���r�����binary�base64r���)r����)r;���rd����_smart_readr���r���r����r�����_smart_total_readr���r�����seekr���ra����NotImplementedError)r$���r^���r����Zold_ior���r���r���ri������s"���� z Input.readc�������������C���s^��|�j�dkr t||�j|�j|jd�S�|�js0|�j|��t|d�rB|j���|�j�sT|�jdkrVn�|�jdkr�dd�l }|j ��}|�jjdd��|j|�jj���|j ���}~t|�|�_t|�jd�|�_|�jj|��n�|�jdk�r dd�l}|�jjdd��|jdt|�jd�}|j��}t|�|�_t|�jd�|�_|�jj|��n*|�jd k�r<t|�j|�j��nt|�j|�j��|�jjdd��|�jS�)Nzapplication/octet-stream)re���re����__plain�x-zlib�deflater���)r�����x-gzip�gzip�rb)�mode� compresslevel�fileobjzx-gpg)r����r����)r����r����)r;���rb���rd���r<���re���r����ri����hasattrr����zlibZ decompressobjr����Z decompress�flush�lenr���r�����writer�����GzipFile�COMPRESS_LEVELr����r���)r$���r^���r�����obj�datar�����gzr���r���r���ra������s>���� zInput.decodec�������������C���s���|�j�S�)N)rn���)r$���r���r���r����getlang���s����z Input.getlang)NNr����r����) r���r ���r���r%����sys�stdinri���ra���r����r���r���r���r���r`���g��s ���� 70r`���������@��c�������������C���s.���t�|d�}x|�j|�}|sP�|j|��qW�|S�)z� Tries to read data from the supplied stream, and puts the results into a StmartIO object. The data will be in memory or in a temporary file, depending on how much it's been read Returns a SmartIO object )r����)r���ri���r����)r^���r���r����r�����chunkr���r���r���r�������s���� r����c�������������C���s����t�j���}|}t|d�}|}x�|dkr�t�j���} t||�} |�j| �}t|�} | sNP�|| �}|j|��|d�krjq| |�dks~|dkr| }t||��}|| |�d��} |dkr�d}n|| �}|||| |��qW�|jdd��|S�)N)r����r���r2���g���ư>)�timer����minri���r����r�����floatr����)r^����amtr���r���r����Z startTimeZlastTime�bufZorigsizeZcurTime�lr����Z bytesReadZspeedZsecsr���r���r���r�������s2���� r����c���������������@���s���e�Zd�Zddd�Zdd��ZdS�)rb���� <unknown>Nc�������������C���s ���||�_�t|�|�_||�_||�_d�S�)N)r^���r����rd���r<���re���)r$���r^���rd���r<���re���r���r���r���r%���=��s���� zInputStream.__init__c�������������C���s���d|�j�|�jf�S�)Nz0Input data is a stream of %d bytes for file %s. )rd���r<���)r$���r���r���r����__repr__C��s����zInputStream.__repr__)r����N)r���r ���r���r%���r����r���r���r���r���rb���<��s��� rb���c���������������@���s����e�Zd�ZdZdZdZdZdZdZdZ ddgddgd d gdggZ ddd gZd dd�Zdd��Z dd��Zdd��Zd!dd�Zd"dd�Zdd��Zdd��ZdS�)#� BaseOutputr���r2�����������Nr����zx-gzipr����zx-zlibr����zx-gpgr����r����r���c�������������C���s����|rt�|tj�std��||�_||�_d�|�_t��|�_d|�_ d|�_ i�|�_d�|�_d�|�_ d�|�_d�|�_d�|�_d�|�_|�j||d��d|�_d�S�)Nz&Expected an HTTPConnection type objectr���)r���r���)r?���r���rE���� Exceptionr����_connectionr����r���r]���r���r����transport_flagsr����r�����_hostZ_handlerZ _http_typeZ _protocolr����_BaseOutput__processed)r$���r���r���r���r���r���r���r���r%���c��s$����zBaseOutput.__init__c�������������C���sB���t�|�t�g��t�f��gkr0djtt|��|�j|<�nt|�|�j|<�d�S�)N�,)r;����join�mapr7���r]���)r$���r<���r=���r���r���r���r>������s����zBaseOutput.set_headerc�������������C���s���||�j�kr|�j�|=�d�S�)N)r]���)r$���r<���r���r���r���rR������s���� zBaseOutput.clear_headerc�������������C���s���||�_�|�j|�jkr�dd�l}|�j|�j�d�}|�jd|��tdd�}|jdt|d�}t j d�dkrn|jt|���n|jt |���|j���|j��|�_�|j���n�|�j|�jkr�dd�l}|�j|�j�d�}|�jd|��|jt�}|j|�|j���|�_�n8|�j|�jk�r t|�j|�j��|�j|�j�d�}|�jd|��|�j|�jk�rT|�j|�j�}|�jd|��|�jd d ��nH|�j|�jk�r�dd�l} |�j|�j�}|�jd|��|�jd d��| j|�j��|�_�|�jdt|�j����t} ttj���dk�r�tj��d�} |�jd d| ���d|�_ d�S�)Nr���zContent-Encodingr2���)Z force_mem�wb)r����r����r����r����zContent-Transfer-EncodingzContent-Typezapplication/binaryztext/base64zContent-LengthzX-Transport-Infoz=Extended Capabilities Transport (C) Red Hat, Inc (version %s))!r����r����ENCODE_GZIPr����� encodingsr>���r���r����r����r�����version_infor����r���r���re����getvalue�ENCODE_ZLIBr����Zcompressobj�compressr����� ENCODE_GPGr����r����TRANSFER_BINARY� transfers�TRANSFER_BASE64r����Zencodestringr����rp����splitr����)r$���r����r����Z encoding_namerg���r����r����r����Z transfer_namer����Zrpc_versionr���r���r���rQ������sT���� zBaseOutput.processc�������������K���s���||�_�||�_|�jj|��d�S�)N)r���r���r����r-���)r$���r���r���r/���r���r���r���r������s����zBaseOutput.set_transport_flags�/RPC2c�������������C���s����|�j�s t�||�_|�jd�kr"td��|�jj���|�jj|�j|t|�j �|�j d��|�jj��}|�j|�s~t jd|�j|f�|j|j|j��|j|fS�)NzNo connection object found)Zbodyr]���z%s %s)r����r���r����r����r����Zconnectr_���r���r���r����r]���Zgetresponse�response_acceptable� xmlrpclibZ ProtocolErrorrT���rU����msg)r$���rF���rW���rm���r���r���r���rS������s���� zBaseOutput.send_httpc�������������C���sP���|j�dkrdS�|j�d krdS�|j�dkr*dS�|�jjd�s:dS�|jd�d krLdS�dS�)z*Returns true if the response is acceptable�����r2����-���.�������r���Zallow_partial_contentzContent-Typezapplication/octet-stream)r����r����)rT���r����r4���r����)r$���rm���r���r���r���r�������s���� zBaseOutput.response_acceptablec�������������C���s���|�j�r|�j�j���d�|�_�d�S�)N)r����re���)r$���r���r���r���re������s���� zBaseOutput.close)r���r���Nr���)r���r���)r����)r���r ���r���ZENCODE_NONEr����r����r����Z TRANSFER_NONEr����r����r����r����r%���r>���rR���rQ���r���rS���r����re���r���r���r���r���r����I��s,��� 8 r����c�������������C���s����|�dkrdS�t�|�t�r8d|���ko.ttj�k�n��r8|�S�t�|�t�rpx,tttj��D�]}tj|�|�j��krR|S�qRW�|r�td|����dS�)zTGiven a string or numeric representation of a transfer, return the transfer codeNr���zUnsupported transfer %s) r?���r���r����rN���r����r����ranger����rx���)r���r3����ir���r���r���r5������s����( r5���c�������������C���s����|�dkrdS�t�|�t�r8d|���ko.ttj�k�n��r8|�S�t�|�t�rpx,tttj��D�]}|�j��tj|�krR|S�qRW�|r�td|����dS�)zUGiven a string or numeric representation of an encoding, return the encoding codeNr���zUnsupported encoding %s) r?���r���r����rN���r����r���r����r����rx���)r���r3���r����r���r���r���r6�����s����( r6���c���������������@���s@���e�Zd�Zddd�Zdd��Zddd �Zd d��Zdd ��Zdd��ZdS�)rc���r���N��@��c�������������C���sF���||�_�||�_|j|�_||�_d|�_|r<||jd�d�d���|�_||�_d�S�)Nr�����/r2���)rd����file_objre���r���r<����rfindr���)r$���r����rd���r<���r���r���r���r���r���r%���&��s����z File.__init__c�������������C���s���|�j�S�)N)rd���)r$���r���r���r����__len__1��s����zFile.__len__c�������������C���s$���|d�kr|�j���}|j��S�|�jj|�S�)N)� _get_fileri���r����)r$���r����r^���r���r���r���ri���4��s����z File.readc�������������C���sP���|�j���}xB|j|�j�}|sP�tjd�dkr:|jt|���q |jt|���q W�|S�)zHCopies the contents of this File object into another file objectr���r����)r����ri���r���r����r����r����r���r���)r$����filer^���r����r���r���r����read_to_file<��s����zFile.read_to_filec�������������C���sL���|�j�r,t|�j|�j�|�j|�jd�}|jdd��nt|�j|�jd�}|jdd��|S�)z�Read everything into a temporary file and call the progress callbacks if the file length is defined, or just reads till EOF)r���r���r���)r���)rd���r����r����r���r���r����r����)r$���r����r���r���r���r����J��s���� zFile._get_filec�������������C���s���|�j�r|�j����d�|�_�d�S�)N)re���)r$���r���r���r����__del__X��s����zFile.__del__)r���NNr����)N) r���r ���r���r%���r����ri���r����r����r����r���r���r���r���rc���%��s���� rc���)r����r����)r����Nr����)r���)r���)(ru���r����r����Zrhnr���Zrhn.i18nr���r���Zrhn.SmartIOr���Zrhn.UserDictCaser���r�����typesr���r���r ����ImportErrorZ xmlrpc.clientZclientr�����bytesrO���rp���r����r����r���r���rq���ry���r����r`���r����r����rb���r����r5���r6���rN���rc���r���r���r���r����<module> ���sD��� �V8� � ; �8