
    @OOf                         d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZ d Zddej(                  fdZddej(                  fd	Zd
 Zy)    N)Counter)redirect_stdout)SSL)version)asyncio_utilsc                  >   t        j                         } t        j                  t        j                        }t        |t              r|j                         }d|  dt        j                          d| dt        j                          g}dj                  |      S )NzMitmproxy: zPython:    zOpenSSL:   zPlatform:  
)r   get_dev_versionr   SSLeay_versionSSLEAY_VERSION
isinstancebytesdecodeplatformpython_versionjoin)mitmproxy_versionopenssl_versiondatas      V/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/utils/debug.pydump_system_infor      s    //1#&#5#5c6H6H#IO/5))002 '()
h--/01
o&'
h'')*+	D 99T?    c           	         t        |      5  t        d       t        d       t        d       	 dd l}|j                         }t        d|j	                                t        |d      rt        d|j                                t        d|j                                t                t        d	       t        d
       |j                         D ]  }t        |        t                t        d       t        d       |j                         D ]  }t        |        	 t                t        d       t        d       g }t        j                         D ]5  }t        |d      r|j                  |       !t        |j                         7 |j                  d        |D ]  }t        |j!                                 t                t        d       t        d       t#        j$                          t'        d t#        j(                         D              }|j+                  d      D ]  \  }}	t        |	 d|         t                t        d       t        d       t'        |j-                         D 
ci c]  \  }
}d|
v s|
| c}}
      }|j+                  d      D ]  \  }}	t        |	 d|         	 t/        j0                          t                t        d       t        d       t/        j2                         D ]  }|j5                  d      d   }t7        j8                  |j:                  j<                  |j>                  |j@                        jC                         }| dtD        jF                  jI                  |j:                  j<                         d|j>                   }t        tK        jL                  |       d|         	 t        d       d d d        tE        jP                  d       rtS        jT                  d       y y # t        $ r t        d       Y w xY wc c}}
w # tN        $ r Y kw xY w# 1 sw Y   exY w)!Nz4****************************************************Summaryz=======r   znum threads: num_fdsz	num fds: zmemory: Filesz=====Connectionsz===========z0(psutil not installed, skipping some debug info)Threads_threadinfoc                     | j                   S N)_thread_started)xs    r   <lambda>zdump_info.<locals>.<lambda>H   s    A$5$5 r   )keyMemoryz======c              3   D   K   | ]  }t        t        |              y wr!   )strtype).0is     r   	<genexpr>zdump_info.<locals>.<genexpr>P   s     >s47|>s        zMemory (mitmproxy only)z=======================	mitmproxyTasks   )limitz  # at :z
    MITMPROXY_DEBUG_EXIT)+r   printpsutilProcessnum_threadshasattrr   memory_info
open_filesconnectionsModuleNotFoundError	threading	enumerateappendnamesortr   gccollectr   get_objectsmost_commonitemsasyncioget_running_loop	all_tasks	get_stack	linecachegetlinef_codeco_filenamef_lineno	f_globalsstripospathbasenamer   	task_reprRuntimeErrorgetenvsysexit)signalframefiler6   pr+   bthreadsobjsclscountkv	mitm_objstaskflines                   r   	dump_infori   "   s   		 IFDEii	  A/1==?3q)$k199;/*ammo.G'N'N\\^ a G- - ]]_ a 	ii$$& 	Aq-("aff		
 	56 	#A!--/"	# 	hh


>R^^-=>>**2. 	$JCUG1SE"#	$ 	'('(djjlOdakQ>NQTOP	#//3 	$JCUG1SE"#	$	J$$& G'N)))+ JNNN+A. ((HH((!**akk%'  wrww'7'78L8L'M&NaPQPZPZ|\0067z$HIJ 	DESIFV 
yy'( )I # 	FDE	F\ P  		wIF IFse   "QPIQ8P.P.
1Q<P4DQP+'Q*P++	Q4	Q =Q?Q  QQc                 b   t        j                         D ci c]  }|j                  |j                   }}g }t	        j
                         j                         D ]  \  }}|j                  d|j                  |d      |fz         t        j                  |      D ]C  \  }}	}
}|j                  d||	|
fz         |s"|j                  d|j                         z         E  t        dj                  |      |       t        j                  d      rt	        j                   d       y y c c}w )	Nz
# Thread: %s(%d) zFile: "%s", line %d, in %sz  %sr	   )r]   r4   r1   )r>   r?   identrA   rY   _current_framesrG   r@   get	tracebackextract_stackrR   r5   r   rS   rX   rZ   )r[   r\   r]   thid2namecodethreadIdstackfilenamelinenorA   rh   s               r   dump_stacksrx   r   s   +4+>+>+@ARrxx AGAD..0668 5%(GKK",Ex+PPQ,5,C,CE,J 	5(HfdDKK4&$7OOPFdjjl34	55 
$))D/%	yy'( ) Bs   D,c                      t         j                  dk7  rQt        j                  t        j                  t               t        j                  t        j
                  t               y y )Nnt)rS   rA   r[   SIGUSR1ri   SIGUSR2rx    r   r   register_info_dumpersr~      s6    	ww$fnni0fnnk2 r   )rH   rC   rL   rS   r   r[   rY   r>   ro   collectionsr   
contextlibr   OpenSSLr   r/   r   mitmproxy.utilsr   r   stdoutri   rx   r~   r}   r   r   <module>r      s_     	  	   
    &   ) CJJ M` 4cjj 3r   