HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //proc/self/root/lib/python3.6/site-packages/usb/backend/__pycache__/openusb.cpython-36.opt-1.pyc
3

�~�Vrm�@@s\ddlTddlZddlZddlmZddlZddlZddlZddl	j
Z
ddljZddlj
Z
ddlZddlmZdZdgZejd�ZdZdWZdXZdYZdZZd[Zd\Zd]Zd^Zd_Zd`ZdaZ dbZ!dcZ"ddZ#deZ$dfZ%dgZ&dhZ'diZ(djZ)dkZ*dlZ+dmZ,dnZ-doZ.dpZ/dqZ0drZ1dsZ2dtZ3ededeej4j5d&d�edeej4j5d'd�eej4j5d(d�eej4j5d)d�eej4j5d*d�eej4j5d+d�eej4j5d,d�ede ej4j5d-d�e!ej4j5d+d�e"de#de$de%de&ej4j5d(d�e'ej4j5d(d�e(ej4j5d(d�e)ej4j5d.d�e*de+ej4j5d/d�e,ej4j5d0d�e-de.ej4j5d0d�e/de0de1de2ej4j5d1d�e3ej4j5d2d�iZ6Gd3d4�d4e7�Z8Gd5d6�d6e7�Z9Gd7d8�d8e7�Z:Gd9d:�d:e7�Z;Gd;d<�d<e7�Z<Gd=d>�d>e7�Z=Gd?d@�d@e7�Z>GdAdB�dBe7�Z?GdCdD�dDe7�Z@GdEdF�dFe7�ZAeBZCeBZDeBZEeBZFdaGdaHdudGdH�ZIdIdJ�ZJdKdL�ZKGdMdN�dNejL�ZMGdOdP�dPejL�ZNGdQdR�dRejL�ZOGdSdT�dTejPjQ�ZRdvdUdV�ZSdS)w�)�*N)�methodtrace)�USBErrorzWander Lairson CostaA�get_backendOPENUSB_SUCCESSOPENUSB_PLATFORM_FAILUREOPENUSB_NO_RESOURCESOPENUSB_NO_BANDWIDTHOPENUSB_NOT_SUPPORTEDOPENUSB_HC_HARDWARE_ERROROPENUSB_INVALID_PERMOPENUSB_BUSYOPENUSB_BADARGOPENUSB_NOACCESSOPENUSB_PARSE_ERROROPENUSB_UNKNOWN_DEVICEOPENUSB_INVALID_HANDLEOPENUSB_SYS_FUNC_FAILUREOPENUSB_NULL_LISTOPENUSB_CB_CONTINUEOPENUSB_CB_TERMINATEOPENUSB_IO_STALLOPENUSB_IO_CRC_ERROROPENUSB_IO_DEVICE_HUNGOPENUSB_IO_REQ_TOO_BIGOPENUSB_IO_BIT_STUFFINGOPENUSB_IO_UNEXPECTED_PIDOPENUSB_IO_DATA_OVERRUNOPENUSB_IO_DATA_UNDERRUNOPENUSB_IO_BUFFER_OVERRUNOPENUSB_IO_BUFFER_UNDERRUNOPENUSB_IO_PID_CHECK_FAILUREOPENUSB_IO_DATA_TOGGLE_MISMATCHOPENUSB_IO_TIMEOUTOPENUSB_IO_CANCELEDzusb.backend.openusb���������	�
���
����2�3�4�5�6�7�8�9�:�;�<�=�>�?ZENOMEMZENOSYSZEIOZEBADFZEBUSYZEINVALZEACCESZENODEVZE2BIGZESRCHZ	EOVERFLOWZ	ETIMEDOUTZEINTRc	@s@eZdZdefdefdefdefdefdefdefdefgZd	S)
�_usb_endpoint_desc�bLength�bDescriptorTypeZbEndpointAddress�bmAttributesZwMaxPacketSizeZ	bIntervalZbRefreshZ
bSynchAddressN)�__name__�
__module__�__qualname__�c_uint8�c_uint16�_fields_�r-r-�/usr/lib/python3.6/openusb.pyr#�sr#c
@sFeZdZdefdefdefdefdefdefdefdefd	efg	Zd
S)�_usb_interface_descr$r%ZbInterfaceNumberZbAlternateSettingZ
bNumEndpointsZbInterfaceClassZbInterfaceSubClassZbInterfaceProtocolZ
iInterfaceN)r'r(r)r*r,r-r-r-r.r/�sr/c	@s@eZdZdefdefdefdefdefdefdefdefgZd	S)
�_usb_config_descr$r%ZwTotalLengthZbNumInterfacesZbConfigurationValueZiConfigurationr&Z	bMaxPowerN)r'r(r)r*r+r,r-r-r-r.r0�sr0c@sdeZdZdefdefdefdefdefdefdefdefd	efd
efdefdefd
efdefgZdS)�_usb_device_descr$r%ZbcdUSBZbDeviceClassZbDeviceSubClassZbDeviceProtocolZbMaxPacketSize0ZidVendorZ	idProductZ	bcdDeviceZ
iManufacturerZiProductZ
iSerialNumberZbNumConfigurationsN)r'r(r)r*r+r,r-r-r-r.r1�sr1c@seZdZdefdefgZdS)�_openusb_request_result�status�transferred_bytesN)r'r(r)�c_int32�c_uint32r,r-r-r-r.r2�sr2cs^eZdZ�fdd�ZGdd�de�Zdefdee�fdefdefd	efd
e	fde
fgZ�ZS)�_openusb_ctrl_requestcs`tt|�j�d|j_d|j_d|j_d|j_d|_d|_	d|_
d|_d|j_
d|j_d|_dS)Nr)�superr7�__init__�setup�
bmRequestType�bRequest�wValue�wIndex�payload�length�timeout�flags�resultr3r4�next)�self)�	__class__r-r.r9�sz_openusb_ctrl_request.__init__c@s(eZdZdefdefdefdefgZdS)z)_openusb_ctrl_request._openusb_ctrl_setupr;r<r=r>N)r'r(r)r*r+r,r-r-r-r.�_openusb_ctrl_setup�srGr:r?r@rArBrCrD)
r'r(r)r9�	StructurerG�POINTERr*r6r2�c_void_pr,�
__classcell__r-r-)rFr.r7�s
r7c@s>eZdZdefdee�fdefdefdefdefdefgZ	dS)	�_openusb_intr_requestZintervalr?r@rArBrCrDN)
r'r(r)r+rIr*r6r2rJr,r-r-r-r.rL�s
rLc@s8eZdZdee�fdefdefdefdefdefgZdS)�_openusb_bulk_requestr?r@rArBrCrDN)	r'r(r)rIr*r6r2rJr,r-r-r-r.rM�s
rMc@s0eZdZGdd�de�Zdefdee�fgZdS)�_openusb_isoc_pktsc@s eZdZdee�fdefgZdS)z'_openusb_isoc_pkts._openusb_isoc_packetr?r@N)r'r(r)rIr*r6r,r-r-r-r.�_openusb_isoc_packet�s
rOZnum_packetsZpacketsN)r'r(r)rHrOr6rIr,r-r-r-r.rN�srNc@s8eZdZdefdefdefdee�fdefdefgZ	dS)�_openusb_isoc_requestZstart_framerBZpktsZisoc_resultsZisoc_statusrDN)
r'r(r)r6rNrIr2r5rJr,r-r-r-r.rP�s
rPcCstjjddd|d�S)N�openusbzOpenUSB library)�find_library)rQ)�usb�	libloaderZload_locate_library)rRr-r-r.�
_load_library
srUc
CsFttt�g|j_t|j_tg|j_tttt��tt�g|j	_tt�g|j
_ttttt��tt�g|j_t|j_tt�g|j
_ttttt�g|j_t|j_tg|j_t|j_ttg|j_t|j_ttt�g|j_t|j_tttg|j_t|j_ttg|j_t|j_tttg|j_t|j_tg|j_t|j_tttt�ttt�g|j_t|j_tttt�tttt�g|j_t|j_tttt�tttttt�g|j_t|j_tttt�ttttttt �g	|j!_t|j_tg|j"_t#|j"_ttttt$�g|j%_t|j%_ttttt&�g|j'_t|j(_ttttt)�g|j(_t|j(_ttttt*�g|j+_t|j+_dS)N),r6rI�_openusb_handle�openusb_initZargtypesr5Zrestype�openusb_fini�_openusb_busid�openusb_get_busid_list�openusb_free_busid_list�_openusb_devid�openusb_get_devids_by_bus�openusb_free_devid_list�_openusb_dev_handle�openusb_open_device�openusb_close_devicer*�openusb_set_configuration�openusb_get_configurationZc_int�openusb_claim_interface�openusb_release_interface�openusb_set_altsetting�
openusb_resetr+r1�openusb_parse_device_descr0�openusb_parse_config_descr/�openusb_parse_interface_descr#�openusb_parse_endpoint_desc�openusb_strerrorZc_char_pr7�openusb_ctrl_xferrL�openusb_intr_xfer�openusb_bulk_xferrMrPZopenusb_isoc_xfer)�libr-r-r.�_setup_prototypess�







	
rqcCs2t|d�r|j}|dkr.ttj|�|t|��|S)N�valuer)�hasattrrrr�_librl�_openusb_errno)�retr-r-r.�_check�s

rwc@seZdZdd�Zdd�ZdS)�_ContextcCs"t�|_ttjdt|j���dS)Nr)rV�handlerwrtrW�byref)rEr-r-r.r9�sz_Context.__init__cCstj|j�dS)N)rtrXry)rEr-r-r.�_finalize_objectsz_Context._finalize_objectN)r'r(r)r9r{r-r-r-r.rx�srxc@s$eZdZdd�Zdd�Zdd�ZdS)�_BusIteratorcCs<tt��|_t�}ttjtjt	|j�t	|���|j
|_dS)N)rIrY�buslistr6rwrtrZ�_ctxryrzrr�
num_busids)rErr-r-r.r9s
z_BusIterator.__init__ccs$xt|j�D]}|j|VqWdS)N)�rangerr})rE�ir-r-r.�__iter__
sz_BusIterator.__iter__cCstj|j�dS)N)rtr[r})rEr-r-r.r{sz_BusIterator._finalize_objectN)r'r(r)r9r�r{r-r-r-r.r|sr|c@s$eZdZdd�Zdd�Zdd�ZdS)�_DevIteratorcCs>tt��|_t�}ttjtj|t	|j�t	|���|j
|_dS)N)rIr\�devlistr6rwrtr]r~ryrzrr�
num_devids)rEZbusidr�r-r-r.r9s
z_DevIterator.__init__ccs$xt|j�D]}|j|VqWdS)N)r�r�r�)rEr�r-r-r.r�sz_DevIterator.__iter__cCstj|j�dS)N)rtr^r�)rEr-r-r.r{sz_DevIterator._finalize_objectN)r'r(r)r9r�r{r-r-r-r.r�sr�c@s<eZdZee�dd��Zee�dd��Zee�dd��Zee�dd��Zee�d	d
��Z	ee�dd��Z
ee�d
d��Zee�dd��Zee�dd��Z
ee�dd��Zee�dd��Zee�dd��Zee�dd��Zee�dd��Zee�dd��Zee�dd ��Zee�d!d"��Zee�d#d$��Zee�d%d&��Zd'S)(�_OpenUSBccs,x&t�D]}xt|�D]
}|VqWqWdS)N)r|r�)rE�busZdevidr-r-r.�enumerate_devices#sz_OpenUSB.enumerate_devicescCsDt�}ttjtj|ddt|���d|_d|_d|_	d|_
d|_|S)Nr)r1rwrtrhr~ryrzr�ZaddressZport_numberZport_numbersZspeed)rE�dev�descr-r-r.�get_device_descriptor)s
z_OpenUSB.get_device_descriptorc	Cs.t�}ttjtj|dd|t|���d|_|S)Nr)r0rwrtrir~ryrz�extra_descriptors)rEr��configr�r-r-r.�get_configuration_descriptor8s
z%_OpenUSB.get_configuration_descriptorcCs2t�}ttjtj|dd|||t|���d|_|S)Nr)r/rwrtrjr~ryrzr�)rEr��intf�altr�r�r-r-r.�get_interface_descriptorDs
z!_OpenUSB.get_interface_descriptorcCs4t�}ttjtj|dd||||t|��	�d|_|S)Nr)r#rwrtrkr~ryrzr�)rEr��epr�r�r�r�r-r-r.�get_endpoint_descriptorRs
z _OpenUSB.get_endpoint_descriptorcCs$t�}ttjtj|dt|���|S)Nr)r_rwrtr`r~ryrz)rEr�ryr-r-r.�open_deviceasz_OpenUSB.open_devicecCstj|�dS)N)rtra)rE�
dev_handler-r-r.�close_devicegsz_OpenUSB.close_devicecCsttj||��dS)N)rwrtrb)rEr�Zconfig_valuer-r-r.�set_configurationksz_OpenUSB.set_configurationcCs t�}ttj|t|���|jS)N)r*rwrtrcrzrr)rEr�r�r-r-r.�get_configurationosz_OpenUSB.get_configurationcCsttj|||��dS)N)rwrtrf)rEr�r�Z
altsettingr-r-r.�set_interface_altsettingusz!_OpenUSB.set_interface_altsettingcCsttj||d��dS)Nr)rwrtrd)rEr�r�r-r-r.�claim_interfaceysz_OpenUSB.claim_interfacecCstj||�dS)N)rtre)rEr�r�r-r-r.�release_interface}sz_OpenUSB.release_interfacecCs^t�}tt|�dt|��|j�\}|_t|tt��|_	||_
ttj
|||t|���|jjS)Nr)rM�memsetrz�sizeof�buffer_infor@�castrIr*r?rArwrtrorCr4)rEr�r�r��datarA�requestr?r-r-r.�
bulk_write�sz_OpenUSB.bulk_writecCs^t�}tt|�dt|��|j�\}|_t|tt��|_	||_
ttj
|||t|���|jjS)Nr)rMr�rzr�r�r@r�rIr*r?rArwrtrorCr4)rEr�r�r��buffrAr�r?r-r-r.�	bulk_read�sz_OpenUSB.bulk_readcCs^t�}tt|�dt|��|j�\}|_t|tt��|_	||_
ttj
|||t|���|jjS)Nr)rLr�rzr�r�r@r�rIr*r?rArwrtrnrCr4)rEr�r�r�r�rAr�r?r-r-r.�
intr_write�sz_OpenUSB.intr_writecCs^t�}tt|�dt|��|j�\}|_t|tt��|_	||_
ttj
|||t|���|jjS)Nr)rLr�rzr�r�r@r�rIr*r?rArwrtrnrCr4)rEr�r�r�r�rAr�r?r-r-r.�	intr_read�sz_OpenUSB.intr_readcCs�t�}||j_||j_|jj|jj||_tjj	|�}	|j
�\}
|_|j|j9_t
|
tt��|_ttj|ddt|���|jjS)Nr)r7r:r;r<r=r>rArS�utilZctrl_directionr�r@�itemsizer�rIr*r?rwrtrmrzrCr4)rEr�r;r<r=r>r�rAr��	directionr?r-r-r.�
ctrl_transfer�s	z_OpenUSB.ctrl_transfercCsttj|��dS)N)rwrtrg)rEr�r-r-r.�reset_device�sz_OpenUSB.reset_devicecCs2tjtjtjtj�}|j||dd|tj�d�dS)Nrri�)r�Zbuild_request_typeZCTRL_OUTZCTRL_TYPE_STANDARDZCTRL_RECIPIENT_ENDPOINTr��_interopZas_array)rEr�r�r;r-r-r.�
clear_halt�sz_OpenUSB.clear_haltN)r'r(r)r�_loggerr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r-r-r-r.r�"s&


r�cCspy$tdkr t|�att�t�at�Stjjk
rJt	j
ddd�dStk
rjt	j
ddd�dSXdS)NzError loading OpenUSB backendF)�exc_infoT)rtrUrqrxr~r�rSrTZLibaryExceptionr��error�	Exception)rRr-r-r.�get_backend�sr����������������i����i����i����i����i����i����i�i�i�i��i��i���i���i���i���i���i���i���i���i���i���i���i���i���i����)N)N)TZctypesZctypes.utilZusb.utilrSZ
usb._debugrZlogging�errno�sysZusb._interopr�Zusb._objfinalizerZ
_objfinalizerr�Z
usb.libloaderZusb.corer�
__author__�__all__Z	getLoggerr�ZOPENUSB_SUCCESSZOPENUSB_PLATFORM_FAILUREZOPENUSB_NO_RESOURCESZOPENUSB_NO_BANDWIDTHZOPENUSB_NOT_SUPPORTEDZOPENUSB_HC_HARDWARE_ERRORZOPENUSB_INVALID_PERMZOPENUSB_BUSYZOPENUSB_BADARGZOPENUSB_NOACCESSZOPENUSB_PARSE_ERRORZOPENUSB_UNKNOWN_DEVICEZOPENUSB_INVALID_HANDLEZOPENUSB_SYS_FUNC_FAILUREZOPENUSB_NULL_LISTZOPENUSB_CB_CONTINUEZOPENUSB_CB_TERMINATEZOPENUSB_IO_STALLZOPENUSB_IO_CRC_ERRORZOPENUSB_IO_DEVICE_HUNGZOPENUSB_IO_REQ_TOO_BIGZOPENUSB_IO_BIT_STUFFINGZOPENUSB_IO_UNEXPECTED_PIDZOPENUSB_IO_DATA_OVERRUNZOPENUSB_IO_DATA_UNDERRUNZOPENUSB_IO_BUFFER_OVERRUNZOPENUSB_IO_BUFFER_UNDERRUNZOPENUSB_IO_PID_CHECK_FAILUREZOPENUSB_IO_DATA_TOGGLE_MISMATCHZOPENUSB_IO_TIMEOUTZOPENUSB_IO_CANCELED�__dict__�getrurHr#r/r0r1r2r7rLrMrNrPZc_uint64r\rYrVr_rtr~rUrqrwZAutoFinalizedObjectrxr|r�ZbackendZIBackendr�r�r-r-r-r.�<module>s�


"


	
e>