
    ^h                     r   S SK r S SKrS SKrS SKrS SKr\ R
                  r\ R                  rS SKJrJ	r	  \R                  " 5       r
\
S    S:X  aD  \
S   R                  S5       V s/ s H  n \" U 5      PM     sn SS /:  a  \R                  " S5      rO\R                  " S5      rS	 rS
 rS rS r\rgs  sn f )    N)errorxauthDarwin   .	   z*^([-a-zA-Z0-9._/]*):([0-9]+)(\.([0-9]+))?$z)^([-a-zA-Z0-9._]*):([0-9]+)(\.([0-9]+))?$c                 Z   U c   [         R                  R                  SS5      n [        R	                  U 5      nU(       d  [
        R                  " U 5      eU nUR                  S5      n[        UR                  S5      5      nUR                  S5      nU(       a  [        U5      nOSnX#XE4$ )NDISPLAY    r      r   )	osenvironget
display_rematchr   DisplayNameErrorgroupint)displaymnamehostdnoscreens         K/var/www/html/env/lib/python3.13/site-packages/Xlib/support/unix_connect.pyget_displayr   (   s    **..B/!A$$W--D771:D
aggaj/CWWQZFVs""    c                     [         S   S:X  ab  U(       a[  UR                  S5      (       aE  [        R                  " [        R                  [        R                  5      nUR                  U 5        OU(       aJ  [        R                  " [        R                  [        R                  5      nUR                  USU-   45        OH[        R                  " [        R                  [        R                  5      nUR                  SU-  5         [        R                  " UR                  5       [        [        5        U$ ! [         a%  n[        R                  " U [        U5      5      eS nAff = f)Nr   r   /tmp/ip  z/tmp/.X11-unix/X%d)uname
startswithsocketAF_UNIXSOCK_STREAMconnectAF_INETOSErrorr   DisplayConnectionErrorstrfcntlfilenoF_SETFD
FD_CLOEXEC)dnamer   r   svals        r   
get_socketr2   =   s    <!H dtw/G/Gfnnf.@.@AAIIe fnnf.@.@AAIItTCZ() fnnf.@.@AAII*S01
 
KK
GZ0H  <**5#c(;;<s&   A.D: 1AD: AD: :
E) E$$E)c                    [         S   S:X  aC  U(       a<  UR                  S5      (       a&  [        R                  n[        R
                  " 5       nO{U(       aO  [        R                  nU R                  5       S   R                  S5      nSR                  [        S U5      5      nO%[        R                  n[        R
                  " 5       n[        R                  " 5       n  UR                  XEU5      $ ! [        R                   a     Of = fU[        R                  :X  a,  US:X  a&  [        R                  n[        R
                  " 5       nOgMp  )	Nr   r   r    r   r   c                 *    [        [        U 5      5      $ )N)chrr   xs    r   <lambda>new_get_auth.<locals>.<lambda>b   s    SQ[r   z  )r   r   )r!   r"   r   FamilyLocalr#   gethostnameFamilyInternetgetpeernamesplitjoinmap
Xauthorityget_best_authr   XNoAuthError)sockr/   r   r   familyaddroctetsaus           r   new_get_authrI   V   s   aH$4??7+C+C""!!#	%% !!#A&,,S1wws0&9:""!!#				B
	##F#66!! 		 U)))d6H.H&&F%%'D s   #C5 5DDc           
         S=pE [         R                  " SU-  5      R                  5       nUR                  S5      n[	        U5      S:  al  US   R                  S S5      n[	        U5      S:X  aH  US   nUS   n	Sn
[        S[	        U	5      S5       H   nU
[        [        XUS-    S5      5      -   n
M"     U
nXE4$ ! [         R                   a     XE4$ f = f)	Nr   zxauth list %s 2>/dev/null
r   r   r         )	r   popenreadr>   lenranger5   r   r   )rD   r/   r   r   	auth_name	auth_datadatalinespartshexauthauthis               r   old_get_authrZ   y   s    I xx3e;<AAC 

4 u:?!HNN4+E5zQ!!H	( q#g,2A#c'AaC."&=">>D 3 !	  88 s   B3B; ;CC)r+   r   platformrer#   r-   r.   Xlibr   r   r!   r>   r   compiler   r   r2   rI   rZ   get_authr6   s   0r   <module>r`      s   (  	  	 
--
 	!Has0CD0C1A0CDANIJJ HIJ#*2 F > q  Es   %B4