+
     h  c                  s  a  0 t $ ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
t
HtHtHtHtHt ^RIHtHt ]P&                  ! ]4      tRt^t^t^tRt^@t ! R R]
4      t ! R	 R
]4      tR tR t] ! 4       t!R]"R&   R t#R# )i    )annotationsN)	Structurec_charc_intc_uint8c_uint16c_uint32)FileCtapHidConnectionHidDescriptoripUBz	/dev/fidoc                  s    ] tR t^-tR]3R]3R]],          3R]],          3R]^,          3R]3R]3R]3R	]3R
]3R]3R]3R]3R]3R]3R]]	,          ]
,          3R]^,          3R]],          3.tRtR# )UsbDeviceInfoZudi_busZudi_addrudi_productZ
udi_vendorZudi_releaseudi_productNoudi_vendorNoZudi_releaseNoZ	udi_classZudi_subclassZudi_protocolZ
udi_configZ	udi_speedZ	udi_powerZ
udi_nportsZudi_devnamesZ	udi_ports
udi_serial N)__name__
__module____qualname____firstlineno__r   r   USB_MAX_STRING_LENr   r   USB_MAX_DEVNAMELENUSB_MAX_DEVNAMESr   Z_fields___static_attributes__r       6/usr/lib/python3.14/site-packages/fido2/hid/openbsd.pyr	   r	   -   s    	G	W	!334	v 223	
#	(#	"	(#	g	!	!	w	g	e	u	"447GGH	hm$	v 223%Hr   r	   c                  s.   a  ] tR t^DtV 3R ltR tRtV ;t# )OpenBsdCtapHidConnectionc                	s   < \         SV `  V4        V P                  4        R #   \         d    T P	                  4        h i ; iN)Zsuper__init___terrible_ping_kludge	Exceptionclose)self
descriptor	__class__s   &&r   r   Z!OpenBsdCtapHidConnection.__init__E   s<    $	&&( 	JJL	s	   $ Ac                	sX   \        ^4       F  pRP                  V P                  P                  R4      p\        P
                  ! 4       pVP                  V P                  \        P                  4       V P                  V4       VP                  ^d4       V P                  4       pK  	  R# )i   s    s    N)ZrangeZljustr    Zreport_size_outselectpollZregisterZhandleZPOLLINZwrite_packetZread_packet)r   Z_Zdatar#   s   &   r   r   Z.OpenBsdCtapHidConnection._terrible_ping_kludgeM   s{     qA.44//D ;;=DMM$++v}}5d#IIcN##%D r   r   )r   r   r   r   r   r   r   Z__classcell__)r!      @r   r   r   D   s    & &r   r   c                s    \        V 4      # r   )r   )r    s   &r   open_connectionr%   _   s    #J//r   c           	     s   \         P                  ! V \         P                  4      p\        4       p \        P
                  ! V\        V4       \         P                  ! V4       \        VP                  4      p\        VP                  4      pVP                  P                  R 4      ;'       g    RpVP                  P                  R 4      ;'       g    Rp\        WV\        \        WV4      #   \         P                  ! T4       i ; i)zutf-8N)osZopenZO_RDONLYr	   fcntlZioctlUSB_GET_DEVICEINFOr   Zintr   r   r
   Zdecoder   r   MAX_U2F_HIDLEN)pathZfZdev_infoZvidZpidZnameZserials   &      r   get_descriptorr+   c   s    
bkk"AHA)84

h##
$C
h$$
%C&&w/774D  ''088DFCVV 	s   C. .Dzset[str]_failed_cachec                 s   \        \        4      p . p\        P                  ! \        4       FS  p\        P
                  P                  \        V4      pV P                  V4        VP                  \        V4      4       KU  	  V#   \         d@    T\        9  d1   \        P                  R TRR7       \        P                  T4        K   K  i ; i)zFailed opening FIDO device %sT)Zexc_info)setr,   r&   Zlistdir	FIDO_DEVSr*   ZjoinZdiscardZappendr+   r   loggerZdebugZadd)ZstaleZdescriptorsZdevr*   s       r   list_descriptorsr0   y   s    EKzz)$ww||Is+d	(~d34	 % 	  	(=(<dTR!!$' )	(s   %BACC)$__conditional_annotations__Z
__future__r    r'   Zloggingr&   Zos.pathr"   ZsysZctypesr   r   r   r   r   r   Zbaser   r   Z	getLoggerr   r/   r(   r   r   r   r.   r)   r	   r   r%   r+   r-   r,   Z__annotations__r0   )r1   r$   r   <module>r2      s   $ # "   	   
 H H 6
 
		8	$      	I .&4 &60W& %x r   