
    gha                         S SK r S SKrS SKJr  S SKJr  S SKJr  \(       a  S SK JrJ	r	  S SK
JrJrJrJr  S/r " S S\5      rS	 rS
 rS rg)    N)MYPY)OP)Integration)AddressFamily
SocketKind)TupleOptionalUnionListSocketIntegrationc                   2    \ rS rSrSrS\ 3r\S 5       rSrg)r      socketzauto.socket.c                  ,    [        5         [        5         g)zc
patches two of the most used functions of socket: create_connection and getaddrinfo(dns resolver)
N)_patch_create_connection_patch_getaddrinfo     a/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/sentry_sdk/integrations/socket.py
setup_onceSocketIntegration.setup_once   s     	!"r   r   N)	__name__
__module____qualname____firstlineno__
identifieroriginstaticmethodr   __static_attributes__r   r   r   r   r      s%    JJ<(F r   c                      U R                  5       n  UR                  5       nU < SU< 3nU$ ! [        [        4 a     N.f = f! [        [        4 a     N3f = f)N:)decodeUnicodeDecodeErrorAttributeError)hostportdescriptions      r   _get_span_descriptionr(      se    {{}{{} "4(K / 
 / s    . A A AAAc                  l   ^ [         R                  m[         R                  S 4U4S jjn U [         l        g )Nc                   > [         R                  " 5       R                  [        5      nUc	  T" XU5      $ [         R                  " [
        R                  [        U S   U S   5      [        R                  S9 nUR                  SU 5        UR                  SU5        UR                  SU5        T" XUS9sS S S 5        $ ! , (       d  f       g = f)Nr      opnamer   addresstimeoutsource_address)r/   r0   r1   )

sentry_sdk
get_clientget_integrationr   
start_spanr   SOCKET_CONNECTIONr(   r   set_data)r/   r0   r1   integrationspanreal_create_connections        r   create_connection3_patch_create_connection.<locals>.create_connection2   s     !++-==>OP)'NKK""##&wqz71:>$++
 MM)W-MM)W-MM*N;)
 
 
s   8=B??
C)r   r;   _GLOBAL_DEFAULT_TIMEOUT)r;   r:   s    @r   r   r   .   s,    #55 ...  1Fr   c                  L   ^ [         R                  mSU4S jjn U [         l        g )Nc           	      v  > [         R                  " 5       R                  [        5      nUc
  T" XX#XE5      $ [         R                  " [
        R                  [        X5      [        R                  S9 nUR                  SU 5        UR                  SU5        T" XX#XE5      sS S S 5        $ ! , (       d  f       g = f)Nr,   r%   r&   )
r2   r3   r4   r   r5   r   
SOCKET_DNSr(   r   r7   )	r%   r&   familytypeprotoflagsr8   r9   real_getaddrinfos	           r   getaddrinfo'_patch_getaddrinfo.<locals>.getaddrinfoP   s     ++-==>OP#DeKK""}}&t2$++
 MM&$'MM&$'#DeK
 
 
s   2.B**
B8)r   r   r   r   )r   rF   )rF   rE   s    @r   r   r   L   s    ))L  %Fr   )r   r2   sentry_sdk._typesr   sentry_sdk.constsr   sentry_sdk.integrationsr   r   r   typingr   r	   r
   r   __all__r   r(   r   r   r   r   r   <module>rM      sC      "   /033
 "1<%r   