+
    8iN/                    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_create_lock)MongoCredential)
ConnectionTc               $    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/synchronous/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     . .: .2M .r'   c                    V P                  V4       V P                  P                  '       d   V P                  V4      # V P	                  V4      # )z(Handle a reauthenticate from the server.)_invalidater+   callback_authenticate_machine_authenticate_human)selfrF   s   &&r%   reauthenticate!_OIDCAuthenticator.reauthenticate]   sD     	??###--d33''--r'   c                    V ^8  d   QhRRRR/# rE   r#   )r$   s   "r%   r&   rH   f   s     . . .0K .r'   c                >   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      # V P                  V4      # )z'Handle an initial authenticate request.done)	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)-):):&
 ??###--d33''--r'   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     * ** *9J *r'   c                	    V P                   '       d    V P                  V4      # V P                  V4      #   \         d4   pT P                  T4      '       d   T P	                  T4      u R p?# h R p?ii ; iN)r<   _sasl_start_jwtr   _is_auth_errorrL   )rN   rF   es   && r%   rL   (_OIDCAuthenticator._authenticate_machine~   sp    
 ++D11
 ##D))	 $ &&q))55d;;s!   6 A4'A/(A4.A//A4c                    V ^8  d   QhRRRR/# rE   r#   )r$   s   "r%   r&   rH      s     9 9
 97R 9r'   c                	
   V P                   '       d    V P                  V4      # V P
                  '       d    V P                  V4      # V P                  R 4      pV P                  W4      pV P                  W4      #   \         d4   pT P                  T4      '       d   T P	                  T4      u R p?# h R p?ii ; i  \         d;   pT P                  T4      '       d   R T n        T P	                  T4      u R p?# h R p?ii ; 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    
 ++D11 ++D11 %%d+&&t1
&&t88/ $ &&q))33D99 $ &&q)))-D&33D99	sF   A< B= <B:'B5.B:4B55B:=D.C=6D<C==D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        V P                  pWT8w  d   VuuR R R 4       # \        P                  ! 4       V P                  ,
          pV\        8  d"   \        P                  ! \        V,
          4       \        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\$        '       g2   \&        P(                  ! 4       P+                  R VP,                  V4      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       V P                  # V P                  #   + '       g   i     T P                  # ; i)N)timeout_secondsversionr;   r=   r*   z8Callback result must be of type OIDCCallbackResult, not )r+   r/   r=   rK   r<   rA   timerC   r   sleepr   r>   r   r   r   r   r;   r*   _IS_SYNCasyncio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   s   __
 ,,D8-$$B$$$**B&&
:jzbn !--	*$  		d&9&9955JJ9EAB&*iik#<G==444!)+"Q"Q1QRG-$+,"&"4"4!]]!__55  x"335EEdBHHV]^D88G,D!$(:;;$RSWX\S]R^_  &*%7%7"$($5$5!!!Q&!G J    t   K J    s    5JA3J,J5C=JJ-	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#       2J O` r'   c                	     VP                  R VRR7      #   \         d/   pT P                  T4      '       d   T P                  T4       h Rp?ii ; i)z	$externalT)	no_reauthN)commandr   rh   rJ   )rN   rF   ro   ri   s   &&& r%   rm   _OIDCAuthenticator._run_command   sN    	<<SD<AA 	""1%%  &	s    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     ! !
 !t !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$     , ,,,=,	,r'   c                	   R V n         R V n        \        P                  ! VR,          4      pRV9   d   \	        R/ VB V n        V P                  4       pV P                  Vn        V P                  RV/V4      pV P                  W4      # )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--/!%!2!2((%)>
K  ++r'   c                    V ^8  d   QhRRRR/# rc   r#   )r$   s   "r%   r&   rH     s     , ,J ,3D ,r'   c                	    V P                  4       pV P                  Vn        V P                  R V/4      pV P	                  W4      # )r^   )r   r?   rW   r_   rm   )rN   rF   r<   ro   s   &&  r%   rg   "_OIDCAuthenticator._sasl_start_jwt  sD    --/!%!2!2%%ul&;<  ++r'   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?   rx   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#(<8d8$\BnB!!,NE,..$C*9B;!z8
!,,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,     0 0 0(20DH0 0r'   c                    \        WP                  4      pV'       d   VP                  V4      # VP                  V4      # )z Authenticate using MONGODB-OIDC.)r6   r    rO   rZ   )r   rF   rO   authenticators   &&& r%   _authenticate_oidcr   '  s7     '{LLAM++D11))$//r'   )/__doc__
__future__r   ry   	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.auth_sharedr   pymongo.synchronous.poolr   rx   r6   r"   r   r#   r'   r%   <module>r      sx    + "    ( O O   #
 
 
 @ ? +33": U
 U
 U
p0r'   