+
    8ie0                    8   R t ^ RIHt ^ RIt^ RIt^ RIt^ RIHtHt ^ RI	H
t
HtHtHtHtHt ^ RIt^ RIHt ^ RIHt ^ RIHtHtHtHtHtHtHtHtHt ^ RIH t H!t! ^ R	I"H#t# ^ R
I$H%t%H&t& ]
'       d   ^ RI'H(t( ^ RI)H*t* Rt+R R lt,] ! R R4      4       t-R R lt.R# )z$MONGODB-OIDC Authentication helpers.)annotationsN)	dataclassfield)TYPE_CHECKINGAnyMappingMutableMappingOptionalUnion)Binary)	remaining)	CALLBACK_VERSIONHUMAN_CALLBACK_TIMEOUT_SECONDS MACHINE_CALLBACK_TIMEOUT_SECONDSTIME_BETWEEN_CALLS_SECONDSOIDCCallbackOIDCCallbackContextOIDCCallbackResultOIDCIdPInfo_OIDCProperties)ConfigurationErrorOperationFailure)_AUTHENTICATION_FAILURE_CODE)Lock_async_create_lock)AsyncConnection)MongoCredentialFc               $    V ^8  d   QhRRRRRR/# )   credentialsr   addressztuple[str, int]return_OIDCAuthenticator )formats   "\/var/www/html/photoedit/myenv/lib/python3.14/site-packages/pymongo/asynchronous/auth_oidc.py__annotate__r&   1   s$     " " "+:""    c                (   V P                   P                  '       d   V P                   P                  # V P                  pV P                  pVP                  e   RpVP
                  pV FV  pWa^ ,          8X  d   RpK  VP                  R4      '       g   K-  V^ ,          P                  VR,          4      '       g   KT  RpKX  	  V'       g   \        RV^ ,           RV 24      h\        W#R7      V P                   n        V P                   P                  # )NFTz*.:   NNzRefusing to connect to z(, which is not in authOIDCAllowedHosts: )username
properties)
cachedatar*   mechanism_propertieshuman_callbackallowed_hosts
startswithendswithr   r"   )r   r    principal_namer+   foundr0   patts   &&     r%   _get_authenticatorr6   1   s       %%% !))N11J   ,"00!Dqz!&&71:+>+>tBx+H+H	 "
 $)'!*5]^k]lm 
 0_K!!!r'   c                    a  ] tR t^Nt0 o $ R]R&   R]R&   ]! RR7      tR]R&   ]! RR7      tR]R	&   ]! RR7      tR
]R&   ]! ^ R7      t	R]R&   ]
'       g   ]! ]R7      tR]R&   M]! ]R7      tR]R&   ]! ^ R7      tR]R&   R R ltR R ltR R ltR R ltR R ltR R ltR  R! ltR" R# ltR$ R% ltR& R' ltR( R) ltR* R+ ltR, R- ltR.tR# )/r"   strr*   r   r+   N)defaultOptional[str]refresh_tokenaccess_tokenzOptional[OIDCIdPInfo]idp_infointtoken_gen_id)default_factoryr   lockzthreading.Lockfloatlast_call_timec                    V ^8  d   QhRRRR/# r   connr   r!   Optional[Mapping[str, Any]]r#   )r$   s   "r%   r&   _OIDCAuthenticator.__annotate__]   s     4 4 4=X 4r'   c                   "   V P                  V4       V P                  P                  '       d   V P                  V4      G Rj  xL
 # V P	                  V4      G Rj  xL
 #  L L5i)z(Handle a reauthenticate from the server.N)_invalidater+   callback_authenticate_machine_authenticate_human)selfrF   s   &&r%   reauthenticate!_OIDCAuthenticator.reauthenticate]   sU      	??###33D999--d333 :3s$   AA&A"A&A$A&$A&c                    V ^8  d   QhRRRR/# rE   r#   )r$   s   "r%   r&   rH   f   s     4 4 4;V 4r'   c                n  "   VP                   pV'       dM   VP                  4       '       d7   VP                  pV'       d#   VR,          '       d   V P                  Vn        V# V P
                  P                  '       d   V P                  V4      G Rj  xL
 # V P                  V4      G Rj  xL
 #  L L5i)z'Handle an initial authenticate request.doneN)	auth_ctxspeculate_succeededspeculative_authenticater?   oidc_token_gen_idr+   rK   rL   rM   )rN   rF   ctxresps   &&  r%   authenticate_OIDCAuthenticator.authenticatef   s      mm3**,,//DV)-):):&
 ??###33D999--d333 :3s:   *B5B5B5.B5?B5B1B5,B3-B53B5c                   V ^8  d   QhRR/# )r   r!   z"Optional[MutableMapping[str, Any]]r#   )r$   s   "r%   r&   rH   x   s     C C#E Cr'   c                d    V P                   '       g   R# V P                  RV P                   /4      # )z-Get the appropriate speculative auth command.Njwt)r<   _get_start_command)rN   s   &r%   get_spec_auth_cmd$_OIDCAuthenticator.get_spec_auth_cmdx   s-       &&t/@/@'ABBr'   c                    V ^8  d   QhRRRR/# r   rF   r   r!   Mapping[str, Any]r#   )r$   s   "r%   r&   rH   ~   s     0 0 0DU 0r'   c                	0  "   V P                   '       d    V P                  V4      G R j  xL
 # V P                  V4      G R j  xL
 #  L  \         d=   pT P                  T4      '       d    T P	                  T4      G R j  xL 
 u R p?# h R p?ii ; i LP5iN)r<   _sasl_start_jwtr   _is_auth_errorrL   )rN   rF   es   && r%   rL   (_OIDCAuthenticator._authenticate_machine~   s     
 !11$777
 ))$/// 8# &&q))!%!;!;D!AAAA 0sa   BA
 AA
 BBBA
 
B+B BBBBBBBc                    V ^8  d   QhRRRR/# rE   r#   )r$   s   "r%   r&   rH      s     ? ?o ?B] ?r'   c                	  "   V P                   '       d    V P                  V4      G R j  xL
 # V P
                  '       d    V P                  V4      G R j  xL
 # V P                  R 4      pV P                  W4      G R j  xL
 pV P                  W4      G R j  xL
 #  Ls  \         d=   pT P                  T4      '       d    T P	                  T4      G R j  xL 
 u R p?# h R p?ii ; i L  \         dD   pT P                  T4      '       d'   R T n        T P	                  T4      G R j  xL 
 u R p?# h R p?ii ; i L L5irf   )	r<   rg   r   rh   rM   r;   r_   _run_command_sasl_continue_jwt)rN   rF   ri   cmd
start_resps   &&   r%   rM   &_OIDCAuthenticator._authenticate_human   s    
 !11$777 !11$777 %%d+,,T77
,,T>>>1 8# &&q))!%!9!9$!???? 8# &&q)))-D&!%!9!9$!????	 8>s   EB  BB  EC, C*C, &E D=ED?EB   C'++C"CC"C'E!C""C''E*C, ,D:72D5)D,*D5.D:/E4D55D::E?Ec                   V ^8  d   QhRR/# )r   r!   r:   r#   )r$   s   "r%   r&   rH      s     ;! ;! ;!r'   c           
     	  "   V P                   pVP                  R JpV'       d   V P                  f   R # VP                  '       d   VP                  pVP                  '       d   VP                  pV P                  pV'       d   V# Xf   V'       g   R # V'       Eg   VEe   V P
                  ;_uu_4       GR j  xL
  V P                  pWT8w  d   TuuR R R 4      GR j  xL
  # \        P                  ! 4       V P                  ,
          pV\        8  d*   \        P                  ! \        V,
          4      G R j  xL
  \        P                  ! 4       V n        V'       d   \        pV P                  f   Q hM!\        \        4       ;'       g    \        4      p\        V\         V P"                  V P                  V P                   P$                  R7      p\&        '       g:   \        P(                  ! 4       P+                  R VP,                  V4      G R j  xL
 p	MVP-                  V4      p	\/        V	\0        4      '       g   \3        R\5        V	4       24      hV	P"                  V n        V	P                  V n        V ;P6                  ^,          un        R R R 4      GR j  xL
  V P                  # V P                  #  EL EL EL L L'  + GR j  xL 
 '       g   i     T P                  # ; i5i)N)timeout_secondsversionr;   r=   r*   z8Callback result must be of type OIDCCallbackResult, not )r+   r/   r=   rK   r<   rA   timerC   r   asynciosleepr   r>   r   r   r   r   r;   r*   _IS_SYNCget_running_looprun_in_executorfetch
isinstancer   
ValueErrortyper?   )
rN   r+   is_humancb
prev_token	new_tokendeltatimeoutcontextrY   s
   &         r%   _get_access_token$_OIDCAuthenticator._get_access_token   s6    __
 ,,D8-$$B$$$**B&&
:jzbnyyyy !--	*$ !yy 		d&9&9955!--(BU(JKKK&*iik#<G==444!)+"Q"Q1QRG-$+,"&"4"4!]]!__55  x!(!9!9!;!K!KDRTRZRZ\c!ddD88G,D!$(:;;$RSWX\S]R^_  &*%7%7"$($5$5!!!Q&!G !yJ    t   K ! L  e5 !yyyJ    s   AK0K0%K0K0
K0K0;J<<K0?K	K0 J?!K0&AK	;K<%K	",K	BK	KA>K	K0K K0?K0K	K	K0	K-	K
K-	K-	K0c               $    V ^8  d   QhRRRRRR/# )r   rF   r   ro   MutableMapping[str, Any]r!   rd   r#   )r$   s   "r%   r&   rH      s$      #*B	r'   c                	   "    VP                  R VRR7      G Rj  xL
 #  L  \         d/   pT P                  T4      '       d   T P                  T4       h Rp?ii ; i5i)z	$externalT)	no_reauthN)commandr   rh   rJ   )rN   rF   ro   ri   s   &&& r%   rm   _OIDCAuthenticator._run_command   sV     	k3$GGGG 	""1%%  &	s0   A"  " A" A)AAAc                    V ^8  d   QhRRRR/# )r   err	Exceptionr!   boolr#   )r$   s   "r%   r&   rH      s     8 8) 8 8r'   c                	X    \        V\        4      '       g   R # VP                  \        8H  # )F)r}   r   coder   )rN   r   s   &&r%   rh   !_OIDCAuthenticator._is_auth_error   s#    #/00xx777r'   c                    V ^8  d   QhRRRR/# )r   rF   r   r!   Noner#   )r$   s   "r%   r&   rH      s     ! ! !D !r'   c                	l    VP                   ;'       g    ^ pVe   W P                  8  d   R# RV n        R# )    N)rW   r?   r<   )rN   rF   r?   s   && r%   rJ   _OIDCAuthenticator._invalidate   s3     --22#7H7H(H r'   c               $    V ^8  d   QhRRRRRR/# )r   rF   r   rp   rd   r!   r#   )r$   s   "r%   r&   rH     s$     2 2#21B2	2r'   c                	B  "   R V n         R V n        \        P                  ! VR,          4      pRV9   d   \	        R/ VB V n        V P                  4       G R j  xL
 pV P                  Vn        V P                  RV/V4      pV P                  W4      G R j  xL
 #  LB L5i)Npayloadissuerr^   r#   )r<   r;   bsondecoder   r=   r   r?   rW   _get_continue_commandrm   )rN   rF   rp   start_payloadr<   ro   s   &&&   r%   rn   %_OIDCAuthenticator._sasl_continue_jwt  s      !!(,Jy4I(J}$'8-8DM!3355!%!2!2((%)>
K&&t111 6 2s$   ABB=BBBBc                    V ^8  d   QhRRRR/# rc   r#   )r$   s   "r%   r&   rH     s     2 2/ 2>O 2r'   c                	   "   V P                  4       G R j  xL
 pV P                  Vn        V P                  RV/4      pV P	                  W4      G R j  xL
 #  LA L5i)Nr^   )r   r?   rW   r_   rm   )rN   rF   r<   ro   s   &&  r%   rg   "_OIDCAuthenticator._sasl_start_jwt  sW     !3355!%!2!2%%ul&;<&&t111 6 2s!   AA<AAAAc                    V ^8  d   QhRRRR/# )r   r   rG   r!   r   r#   )r$   s   "r%   r&   rH     s      U U*E UJb Ur'   c                	    Vf   V P                   pV'       d   RV/pM/ p\        \        P                  ! V4      4      pR^RRRV/# )Nn	saslStart	mechanismzMONGODB-OIDCr   )r*   r   r   encode)rN   r   r3   bin_payloads   &&  r%   r_   %_OIDCAuthenticator._get_start_command  sH    ?!]]N/T[[12Q^YTTr'   c               $    V ^8  d   QhRRRRRR/# )r   r   rd   rp   r!   r   r#   )r$   s   "r%   r&   rH     s$     
 
(
6G
	!
r'   c                	^    \        \        P                  ! V4      4      pR ^RVRVR,          /# )saslContinuer   conversationId)r   r   r   )rN   r   rp   r   s   &&& r%   r   (_OIDCAuthenticator._get_continue_command  s6     T[[12A{j)9:
 	
r'   )r<   r=   rC   r;   )__name__
__module____qualname____firstlineno____annotations__r   r;   r<   r=   r?   ry   r   rA   rC   rO   rZ   r`   rL   rM   r   rm   rh   rJ   rn   rg   r_   r   __static_attributes__)__conditional_annotations__s   @r%   r"   r"   N   s     M#(#6M=6"'"5L-5&+D&9H#9a(L#(+=>d>$5GHnH!!,NE,44$C0?B;!z8
!22U
 
r'   r"   c               (    V ^8  d   QhRRRRRRRR/# )	r   r   r   rF   r   rO   r   r!   rG   r#   )r$   s   "r%   r&   r&   )  s,     6 6 6(76IM6 6r'   c                   "   \        WP                  4      pV'       d   VP                  V4      G Rj  xL
 # VP                  V4      G Rj  xL
 #  L L5i)z Authenticate using MONGODB-OIDC.N)r6   r    rO   rZ   )r   rF   rO   authenticators   &&& r%   _authenticate_oidcr   )  sH      '{LLAM"11$777"//555 85s!   2AAAAAA)/__doc__
__future__r   rw   	threadingrv   dataclassesr   r   typingr   r   r   r   r	   r
   r   bson.binaryr   pymongo._csotr   pymongo.auth_oidc_sharedr   r   r   r   r   r   r   r   r   pymongo.errorsr   r   pymongo.helpers_sharedr   pymongo.lockr   r   pymongo.asynchronous.poolr   pymongo.auth_sharedr   ry   r6   r"   r   r#   r'   r%   <module>r      sx    + "    ( O O   #
 
 
 @ ? 193": W
 W
 W
t6r'   