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__/libusb0.cpython-36.opt-1.pyc
3

>A%W�\�
@s�ddlTddlZddlZddlZddlZddlmZddlm	Z	ddl
jZddlZddl
ZdZdgZejd�Zejjd�dBks�ejjd
�dCks�ejjd�dDks�ejjd�dEkr�d
Zn&ejdks�ejdkr�dZnejdd�ZGdd�de�Zejdk�sejdk�rd	e_Gdd�de�ZGdd�de�ZGdd�dee�ZGdd�dee�ZGdd�dee�ZGdd �d ee�ZGd!d"�d"ee�Z Gd#d$�d$ee�Z!Gd%d&�d&ee�Z"d'e#e!�fd(e#e!�fd)e$ed	fd*e#e"�fd+e fd,e#e�fd-e%fd.e&fd/e'fd0e#e#e!��fg
e!_(d'e#e"�fd(e#e"�fd1e)ed	fd2e#e!�fd3e*fd4e#e!�fge"_(e%Z+Gd5d6�d6�Z,da-dFd7d8�Z.d9d:�Z/d;d<�Z0d=d>�Z1Gd?d@�d@ej2j3�Z4dGdAd�Z5dS)H�)�*N)�USBError)�methodtracezWander Lairson Costa�get_backendzusb.backend.libusb0Zbsd�Zmac�darwinZsunos5iZwin32�cygwini��.�PC_PATH_MAXc@seZdZdS)�_PackPolicyN)�__name__�
__module__�__qualname__�rr�/usr/lib/python3.6/libusb0.pyr<src@s eZdZdZdefdefgZdS)�_usb_descriptor_headerrZblength�bDescriptorTypeN)rr
r�_pack_�c_uint8�_fields_rrrrrDsrc@s&eZdZdZdefdefdefgZdS)�_usb_string_descriptorr�bLengthrZwDataN)rr
rrr�c_uint16rrrrrrIsrc@sPeZdZdefdefdefdefdefdefdefdefd	ee�fd
efg
ZdS)�_usb_endpoint_descriptorrrZbEndpointAddress�bmAttributesZwMaxPacketSizeZ	bIntervalZbRefreshZ
bSynchAddress�extra�extralenN)rr
rrr�POINTER�c_intrrrrrrOs
rc
@s`eZdZdefdefdefdefdefdefdefdefd	efd
ee�fdee�fdefgZd
S)�_usb_interface_descriptorrrZbInterfaceNumberZbAlternateSetting�
bNumEndpointsZbInterfaceClassZbInterfaceSubClassZbInterfaceProtocolZ
iInterface�endpointrrN)rr
rrrrrrrrrrr[s

rc@s eZdZdee�fdefgZdS)�_usb_interface�
altsetting�num_altsettingN)rr
rrrrrrrrrr"is
r"c@sZeZdZdefdefdefdefdefdefdefdefd	ee�fd
ee�fdefgZdS)
�_usb_config_descriptorrrZwTotalLength�bNumInterfacesZbConfigurationValueZiConfigurationrZ	bMaxPower�	interfacerrN)	rr
rrrrr"rrrrrrr%ms

r%c@sheZdZdZdefdefdefdefdefdefdefd	efd
efdefdefd
efdefdefgZdS)�_usb_device_descriptorrrr�bcdUSB�bDeviceClass�bDeviceSubClass�bDeviceProtocol�bMaxPacketSize0�idVendor�	idProduct�	bcdDevice�
iManufacturer�iProduct�
iSerialNumber�bNumConfigurationsN)rr
rrrrrrrrrr(zsr(c@seZdZdS)�_usb_deviceN)rr
rrrrrr5�sr5c@seZdZdS)�_usb_busN)rr
rrrrrr6�sr6�next�prev�filename�bus�
descriptor�config�dev�devnumZnum_childrenZchildren�dirname�devices�locationZroot_devc@seZdZdd�ZdS)�_DeviceDescriptorcCs�|j}|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j	|_	|j
|_
|j|_|j|_|j
|_
|j|_|j|_|jdj|_d|_d|_d|_dS)Nr)r;rrr)r*r+r,r-r.r/r0r1r2r3r4r>�addressr:rAZport_numberZport_numbersZspeed)�selfr=Zdescrrr�__init__�s(z_DeviceDescriptor.__init__N)rr
rrErrrrrB�srBcCstjjddd|d�S)N�usb-0.1�usb�libusb0zcygusb0.dllzLibusb 0)�find_library)rFrGrH)rG�	libloaderZload_locate_library)rIrrr�
_load_library�srKcCsHtt�g|j_t|j_tg|j_ttttt	g|j
_tttt	g|j_ttttt
tg|j_tttt
tg|j_tttttg|j_tttttg|j_tttttg|j_tttttg|j_ttttttttg|j_ttg|j_ttg|j_ttg|j_ttg|j_ttg|j_ttg|j_tg|j_g|j_t|j_tg|j_tg|j_tt�|j_tt�|j _t!|d��rnttg|j"_t!|d��r�ttt
�t#tg|j$_t!|d��r�ttt
�t#g|j%_t!|d��r�ttt
�t#g|j&_t!|d��r�t
ttg|j'_t!|d��r�t
tg|j(_t!|d��rt
tg|j)_t!|d��r*t
g|j*_t!|d	��rDtt
�g|j+_dS)
N�usb_detach_kernel_driver_np�usb_isochronous_setup_async�usb_bulk_setup_async�usb_interrupt_setup_async�usb_submit_async�usb_reap_async�usb_reap_async_nocancel�usb_cancel_async�usb_free_async),rr5�usb_openZargtypes�_usb_dev_handleZrestype�	usb_closer�c_char_pZc_size_tZusb_get_stringZusb_get_string_simple�c_ubyte�c_void_pZusb_get_descriptor_by_endpointZusb_get_descriptor�usb_bulk_write�
usb_bulk_read�usb_interrupt_write�usb_interrupt_read�usb_control_msg�usb_set_configuration�usb_claim_interface�usb_release_interface�usb_set_altinterfaceZusb_resetep�usb_clear_halt�	usb_reset�usb_strerrorZ
usb_set_debugZ
usb_devicer6�usb_get_busses�hasattrrLrrMrNrOrPrQrRrSrT)�librrr�_setup_prototypes�s�




	
	
	
	
	





rjcCs^|dkrtj�}n>t|d�r"|j}|dkrLtj�}|j�dkrPtj|�}n|St||��dS)N�valuerzno error)�_librfrhrk�lower�os�strerrorr)�ret�errmsgrrr�_check�s

rrcCs
ttd�S)NrM)rhrlrrrr�_has_iso_transfer�srsc@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&��Zee�d'd(��Zee�d)d*��Zee�d+d,��Zd-d.�Zd/d0�Zd1d2�Zd3S)4�_LibUSBccshttj��ttj��tj�}xBt|�rb|dj}x t|�rT|dV|dj}q6W|dj}q"WdS)Nr)rrrlZusb_find_bussesZusb_find_devicesrg�boolr@r7)rDr:r=rrr�enumerate_devices�s



z_LibUSB.enumerate_devicescCst|�S)N)rB)rDr=rrr�get_device_descriptor�sz_LibUSB.get_device_descriptorcCs<||jjkrtdt|���|j|}|jd|j�|_|S)NzInvalid configuration index )r;r4�
IndexError�strr<rr�extra_descriptors)rDr=r<Zconfig_descrrr�get_configuration_descriptor�s

z$_LibUSB.get_configuration_descriptorcCsj|j||�}||jkr&tdt|���|j|}||jkrJtdt|���|j|}|jd|j�|_	|S)NzInvalid interface index z Invalid alternate setting index )
r{r&rxryr'r$r#rrrz)rDr=�intf�altr<Zcfgdescr'Z	intf_descrrr�get_interface_descriptor�s



z _LibUSB.get_interface_descriptorcCsJ|j||||�}||jkr*tdt|���|j|}|jd|j�|_|S)NzInvalid endpoint index )r~r rxryr!rrrz)rDr=�epr|r}r<r'Zep_descrrr�get_endpoint_descriptor�s

z_LibUSB.get_endpoint_descriptorcCsttj|��S)N)rrrlrU)rDr=rrr�open_device�sz_LibUSB.open_devicecCsttj|��dS)N)rrrlrW)rD�
dev_handlerrr�close_device�sz_LibUSB.close_devicecCsttj||��dS)N)rrrlr`)rDr�Zconfig_valuerrr�set_configuration�sz_LibUSB.set_configurationcCsFtjjtjjtjjtjj�}tjjd�}|j||ddd|d�}|dS)Nr�r�d)rG�utilZbuild_request_typeZCTRL_INZCTRL_TYPE_STANDARDZCTRL_RECIPIENT_DEVICEZ
create_buffer�
ctrl_transfer)rDr��
bmRequestType�buffrprrr�get_configuration�s
z_LibUSB.get_configurationcCsttj||��dS)N)rrrlrc)rDr�r|r#rrr�set_interface_altsettingsz _LibUSB.set_interface_altsettingcCsttj||��dS)N)rrrlra)rDr�r|rrr�claim_interfacesz_LibUSB.claim_interfacecCsttj||��dS)N)rrrlrb)rDr�r|rrr�release_interfacesz_LibUSB.release_interfacecCs|jtj|||||�S)N)�_LibUSB__writerlr[)rDr�rr|�data�timeoutrrr�
bulk_writes
z_LibUSB.bulk_writecCs|jtj|||||�S)N)�
_LibUSB__readrlr\)rDr�rr|r�r�rrr�	bulk_readsz_LibUSB.bulk_readcCs|jtj|||||�S)N)r�rlr])rDr�rr|r�r�rrr�
intr_write sz_LibUSB.intr_writecCs|jtj|||||�S)N)r�rlr^)rDr�rr|r�r�rrr�	intr_read)sz_LibUSB.intr_readcCs0t�stjjj||||||�S|j|||||�S)N)rsrG�backend�IBackend�	iso_write�_LibUSB__iso_transfer)rDr�rr|r�r�rrrr�2sz_LibUSB.iso_writecCs0t�stjjj||||||�S|j|||||�S)N)rsrGr�r��iso_readr�)rDr�rr|r�r�rrrr�8sz_LibUSB.iso_readc

Cs8|j�\}}	|	|j9}	ttj|||||t|t�|	|��S)N)�buffer_info�itemsizerrrlr_�castrX)
rDr�r�ZbRequestZwValueZwIndexr�r�rC�lengthrrrr�>s	
z_LibUSB.ctrl_transfercCsttj||��dS)N)rrrlrd)rDr�rrrr�
clear_haltTsz_LibUSB.clear_haltcCsttj|��dS)N)rrrlre)rDr�rrr�reset_deviceXsz_LibUSB.reset_devicecCsttj||��dS)N)rrrlrL)rDr�r|rrr�detach_kernel_driver\sz_LibUSB.detach_kernel_driverc	Cs4|j�\}}||j9}tt|||t|t�||���S)N)r�r��intrrr�rX)	rD�fnr�rr|r�r�rCr�rrrZ__write`s
z_LibUSB.__writec
Cs8|j�\}}||j9}tt|||t|t�||���}	|	S)N)r�r�r�rrr�rX)
rDr�r�rr|r�r�rCr�rprrrZ__readks

z_LibUSB.__readcCs�t�}|j�\}}||j9}ttj|t|�|d��d}	zjyRxL|	|kr�ttj|t||	t	�||	��ttj
||��}
|
s~|	S|	|
7}	q>WWn|	s��YnXWdttjt|���X|	S)Nr)rZr�r�rrrlrMZbyrefrPr�rXrQrT)rDr�rr|r�r��contextr�r�ZtransmittedrprrrZ__iso_transferws0

z_LibUSB.__iso_transferN)rr
rr�_loggerrvrwr{r~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrt�s2				rtcCsry&tdkr"t|�att�tj�t�Stjjk
rLtj	ddd�dSt
k
rltj	ddd�dSXdS)Nz Error loading libusb 0.1 backendF)�exc_infoT)rlrKrjZusb_initrtrGrJZLibaryExceptionr��error�	Exception)rIrrrr�s���r�r�r�)N)N)6ZctypesrnZusb.backendrGZusb.util�sysZusb.corerZ
usb._debugrZusb._interopZ_interopZloggingZ
usb.libloader�
__author__�__all__Z	getLoggerr��platform�findZ	_PATH_MAX�pathconf�objectrrZ	Structurerrrrr"r%r(r5r6rZc_int8rZrrYrZc_charZc_uint32rVrBrlrKrjrrrsr�r�rtrrrrr�<module>sr

  








Yd