403 Forbidden


Disable Functions:
Path : /usr/lib64/python2.7/site-packages/psutil/
File Upload :
Command :
Current File : //usr/lib64/python2.7/site-packages/psutil/_common.pyc

�
S��]cJ@ s%	dZddlmZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlm
Z
ddlmZddlmZddlmZddlmZydd	lmZWnek
r�dZnXydd
lmZWnek
r-dZnXe	jd�krLddlZndZe	jd
dkZddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWgJZejdXkZejdYkZe	jjdZ�Ze	jjd[�Z e Z!e	jjd\�Z"e	jjd]�Z#e	jjd^�Z$e"p�e#p�e$Z%e	jjd��Z&e	jjda�Z'dbZ(dcZ)ddZ*deZ+dfZ,dgZ-dhZ.diZ/djZ0dkZ1dlZ2dmZ3dnZ4doZ5dpZ6dqZ7drZ8dsZ9dtZ:duZ;dvZ<dwZ=dxZ>dyZ?dzZ@d{ZAedkr�d|ZBd}ZCd
ZDn,d~ejEfd��YZFeG�jHeFjI�edkrdZJd�ZKn,d�ejEfd���YZLeG�jHeLjI�e	jM�ZNesHd�ZOn6ye	jP�ZOWn#eQk
r}ertd�nd�ZOnXedId�d�d�d�d�d�g�ZRedEd�d�d�d�g�ZSedCd�d�d�d�d�d�g�ZTedDd�d�d�d�g�ZUedFd�d�d�d�d�d�d�d�g�ZVedJd�d�d�d�d�g�ZWedAd�d�d�d�d�d�d�g�ZXedGd�d�d�d�d�g�ZYedHd�d�d�d�g�ZZedBd�d�d�d�g�Z[ed�d�d�d�g�Z\ed�d�d�d�d�g�Z]ed�d�d�d�g�Z^ed�d�d�g�Z_ed9d�d�d�d�g�Z`ed>d�d�g�Zaed?d�d�d�g�Zbed@d�d�d�g�Zced;d�d�d�g�Zded<d�d�d�d�g�Zeed=d�d�g�Zfed:d�d�g�Zged8d�d�d�d�d�d�g�Zhed�d�d�g�Ziieeegeegfd�6eegegfd�6egegfd�6eegegfd�6egegfd�6eegeegfd�6egeegfd�6egeegfd�6Zjedk	rejjHiegegfd�6egegfd�6�nedk	r3ejjHiegeegfd�6�ndd��Zkd��Zld��Zmd��Znd��Zoeld���Zpd��Zqd��Zrd��Zsdd��Ztd��Zud�d�d���YZvd��Zwev�Zxexjyew_yexjzew_zd��Z{d��Z|d�d��Z}d��Z~er	d��Zn	d��ZdS(�s9Common objects shared by __init__.py and _ps*.py modules.i����(tdivisionN(tdefaultdict(t
namedtuple(tAF_INET(t
SOCK_DGRAM(tSOCK_STREAM(tAF_INET6(tAF_UNIXiiitFREEBSDtBSDtLINUXtNETBSDtOPENBSDtMACOStOSXtPOSIXtSUNOStWINDOWStENCODINGt
ENCODING_ERRSRt
CONN_CLOSEtCONN_CLOSE_WAITtCONN_CLOSINGtCONN_ESTABLISHEDtCONN_FIN_WAIT1tCONN_FIN_WAIT2t
CONN_LAST_ACKtCONN_LISTENt	CONN_NONEt
CONN_SYN_RECVt
CONN_SYN_SENTtCONN_TIME_WAITtNIC_DUPLEX_FULLtNIC_DUPLEX_HALFtNIC_DUPLEX_UNKNOWNtSTATUS_DEADtSTATUS_DISK_SLEEPtSTATUS_IDLEt
STATUS_LOCKEDtSTATUS_RUNNINGtSTATUS_SLEEPINGtSTATUS_STOPPEDtSTATUS_SUSPENDEDtSTATUS_TRACING_STOPtSTATUS_WAITINGtSTATUS_WAKE_KILLt
STATUS_WAKINGt
STATUS_ZOMBIEt
STATUS_PARKEDtpconnt	pcputimestpctxswtpgidstpiotpionicet	popenfiletpthreadtpuidstsconnt	scpustatstsdiskiot	sdiskpartt
sdiskusagetsnetiotsnicaddrt	snicstatstsswaptsusert	conn_tmaptdeprecated_methodt
isfile_stricttmemoizetparse_environ_blocktpath_exists_strictt
usage_percentt
supports_ipv6tsockfam_to_enumtsocktype_to_enumtwrap_numberstbytes2humantconn_to_ntupletposixtnttlinuxtdarwintfreebsdtopenbsdtnetbsdtsunostsolaristaixtrunningtsleepings
disk-sleeptstoppedstracing-stoptzombietdeads	wake-killtwakingtidletlockedtwaitingt	suspendedtparkedtESTABLISHEDtSYN_SENTtSYN_RECVt	FIN_WAIT1t	FIN_WAIT2t	TIME_WAITtCLOSEt
CLOSE_WAITtLAST_ACKtLISTENtCLOSINGtNONEiit	NicDuplexcB seZdZdZdZRS(iii(t__name__t
__module__R R!R"(((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRr�si����tBatteryTimecB seZdZdZRS(i����i����(RsRttPOWER_TIME_UNKNOWNtPOWER_TIME_UNLIMITED(((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRu�streplacetsurrogateescapettotaltusedtfreetpercenttsintsoutt
read_counttwrite_countt
read_bytestwrite_bytest	read_timet
write_timetdevicet
mountpointtfstypetoptst
bytes_sentt
bytes_recvtpackets_senttpackets_recvterrinterrouttdropintdropouttnametterminalthosttstartedtpidtfdtfamilyttypetladdrtraddrtstatustaddresstnetmaskt	broadcasttptptisuptduplextspeedtmtutctx_switchest
interruptstsoft_interruptstsyscallstscpufreqtcurrenttmintmaxtshwtemptlabelthightcriticaltsbatterytsecsleftt
power_pluggedtsfantusertsystemt
children_usertchildren_systemtpathtidt	user_timetsystem_timetrealt	effectivetsavedtioclasstvaluet	voluntarytinvoluntarytaddrtiptporttallttcpttcp4tudptudp4tinettinet4tinet6ttcp6tudp6tunixcC sSyt|�|d}Wntk
r,dSX|dk	rKt||�}n|SdS(s5Calculate percentage usage of 'used' against 'total'.idgN(tfloattZeroDivisionErrortNonetround(R{Rztround_tret((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRJ	s
c sCtj����fd��}�fd�}i�||_|S(sA simple memoize decorator for functions supporting (hashable)
    positional arguments.
    It also provides a cache_clear() function for clearing the cache:

    >>> @memoize
    ... def foo()
    ...     return 1
        ...
    >>> foo()
    1
    >>> foo.cache_clear()
    >>>
    c sZ|tt|j���f}y�|SWn)tk
rU�||�}�|<|SXdS(N(t	frozensettsortedtitemstKeyError(targstkwargstkeyR�(tcachetfun(s4/usr/lib64/python2.7/site-packages/psutil/_common.pytwrapper#s
c s�j�dS(sClear cache.N(tclear((R�(s4/usr/lib64/python2.7/site-packages/psutil/_common.pytcache_clear,s(t	functoolstwrapsR�(R�R�R�((R�R�s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRGs
!		c sFtj���fd��}d�}d�}||_||_|S(s�A memoize decorator which is disabled by default. It can be
    activated and deactivated on request.
    For efficiency reasons it can be used only against class methods
    accepting no arguments.

    >>> class Foo:
    ...     @memoize
    ...     def foo()
    ...         print(1)
    ...
    >>> f = Foo()
    >>> # deactivated (default)
    >>> foo()
    1
    >>> foo()
    1
    >>>
    >>> # activated
    >>> foo.cache_activate(self)
    >>> foo()
    1
    >>> foo()
    >>> foo()
    >>>
    c sWy|j�}Wn?tk
r+�|�Stk
rR�|�}|j�<nX|S(N(t_cachetAttributeErrorR�(tselfR�(R�(s4/usr/lib64/python2.7/site-packages/psutil/_common.pyR�Os


cS s
i|_dS(sjActivate cache. Expects a Process instance. Cache will be
        stored as a "_cache" instance attribute.N(R�(tproc((s4/usr/lib64/python2.7/site-packages/psutil/_common.pytcache_activate]scS s"y
|`Wntk
rnXdS(sDeactivate and clear cache.N(R�R�(R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pytcache_deactivatebs

(R�R�R�R�(R�R�R�R�((R�s4/usr/lib64/python2.7/site-packages/psutil/_common.pytmemoize_when_activated5s				cC s_ytj|�}Wn5tk
rJ}|jtjtjfkrF�ntSXtj|j�SdS(s�Same as os.path.isfile() but does not swallow EACCES / EPERM
    exceptions, see:
    http://mail.python.org/pipermail/python-dev/2012-June/120787.html
    N(	toststattOSErrorterrnotEPERMtEACCEStFalsetS_ISREGtst_mode(R�tstterr((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRFnscC sQytj|�Wn5tk
rH}|jtjtjfkrD�ntSXtSdS(s�Same as os.path.exists() but does not swallow EACCES / EPERM
    exceptions, see:
    http://mail.python.org/pipermail/python-dev/2012-June/120787.html
    N(R�R�R�R�R�R�R�tTrue(R�R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRI}scC svtjstdkrtSy@tjttj�}tj|��|jd�WdQXt	SWntj
k
rqtSXdS(s2Return True if IPv6 is supported on this platform.s::1iN(s::1i(tsocketthas_ipv6RR�R�Rt
contextlibtclosingtbindR�terror(tsock((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRK�scC s�i}d}t}x�tr�|jd|�}||kr=Pn|jd||�}||kr�|||!}||d|!}|r�|j�}n|||<n|d}qW|S(sCParse a C environ block of environment variables into a dictionary.itt=i(RR�tfindtupper(tdataR�tpostWINDOWS_tnext_post	equal_posR�R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRH�s 	

cC s:tdkr|Sytj|�SWntk
r5|SXdS(s�Convert a numeric socket family value to an IntEnum member.
    If it's not a known member, return the numeric value itself.
    N(tenumR�R�t
AddressFamilyt
ValueError(tnum((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRL�s
cC s:tdkr|Sytj|�SWntk
r5|SXdS(sConvert a numeric socket type value to an IntEnum member.
    If it's not a known member, return the numeric value itself.
    N(R	R�R�t
SocketKindR(R((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRM�s
c	C s�|tjtfkrB|r*t|�}n|rBt|�}qBn|tjkrx|ttfkrx|j|t�}nt}t|�}t|�}|dkr�t
||||||�St|||||||�SdS(s2Convert a raw connection tuple to a proper ntuple.N(R�RRR�RtgetRRLRMR�R1R:(R�tfamttype_R�R�R�t
status_mapR�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRP�s!c s�fd�}|S(s�A decorator which can be used to mark a method as deprecated
    'replcement' is the method name which will be called instead.
    c sSd|j�f�|jdkr.�|_ntj|���fd��}|S(Ns8%s() is deprecated and will be removed; use %s() insteadc s/tj�dtdd�t|��||�S(Ntcategoryt
stackleveli(twarningstwarntDeprecationWarningtgetattr(R�R�R�(tmsgtreplacement(s4/usr/lib64/python2.7/site-packages/psutil/_common.pytinner�s(Rst__doc__R�R�R�(R�R(R(Rs4/usr/lib64/python2.7/site-packages/psutil/_common.pytouter�s!((RR((Rs4/usr/lib64/python2.7/site-packages/psutil/_common.pyRE�st_WrapNumberscB sGeZdZd�Zd�Zd�Zd�Zdd�Zd�Z	RS(sNWatches numbers so that they don't overflow and wrap
    (reset to zero).
    cC s.tj�|_i|_i|_i|_dS(N(t	threadingtLocktlockR�t	reminderst
reminder_keys(R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt__init__�s		cC sv||jkst�||jks*t�||jks?t�||j|<tt�|j|<tt�|j|<dS(N(R�tAssertionErrorR!R"Rtinttset(R�t
input_dictR�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt	_add_dicts
cC s||j|}t|j��t|j��}xF|D]>}x'|j||D]}|j||=qNW|j||=q6WdS(s�In case the number of keys changed between calls (e.g. a
        disk disappears) this removes the entry from self.reminders.
        N(R�R&tkeysR"R!(R�R'R�told_dictt	gone_keystgone_keytremkey((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt_remove_dead_reminderss
"
c
C sT||jkr#|j||�|S|j||�|j|}i}x�|j�D]�}||}y||}Wntk
r�|||<qSnXg}x�tt|��D]�}	||	}
||	}||	f}|
|kr|j||c|7<|j||j	|�n|j
|
|j||�q�Wt|�||<qSW||j|<|S(skCache dict and sum numbers which overflow and wrap.
        Return an updated copy of `input_dict`
        (R�R(R.R)R�trangetlenR!R"taddtappendttuple(
R�R'R�R*tnew_dictR�tinput_tuplet	old_tupletbitstitinput_valuet	old_valueR-((s4/usr/lib64/python2.7/site-packages/psutil/_common.pytruns2





 
cC s�|j�t|dkr@|jj�|jj�|jj�n9|jj|d�|jj|d�|jj|d�WdQXdS(s>Clear the internal cache, optionally only for function 'name'.N(R R�R�R�R!R"tpop(R�R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyR�:s


cC s*|j�|j|j|jfSWdQXdS(s5Return internal cache dicts as a tuple of 3 elements.N(R R�R!R"(R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt
cache_infoFs
N(
RsRtRR#R(R.R;R�R�R=(((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyR�s				'cC s$tj�tj||�SWdQXdS(s�Given an `input_dict` and a function `name`, adjust the numbers
    which "wrap" (restart from zero) across different calls by adding
    "old value" to "new value" and return an updated dict.
    N(t_wnR R;(R'R�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRNLs
cK st|d|�S(Ntrb(topen(tfnameR�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pytopen_binaryZscK s9tr)|jdt�|jdt�nt|d|�S(s�On Python 3 opens a file in text mode by using fs encoding and
    a proper en/decoding errors handler.
    On Python 2 this is just an alias for open(name, 'rt').
    tencodingterrorstrt(tPY3t
setdefaultRRR@(RAR�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt	open_text^ss%(value).1f%(symbol)sc	C s�d}i}x4t|d
�D]"\}}d
|d
d>||<qWxGt|d
�D]5}|||krTt|�||}|t�SqTW|td|d
d|�S(s�Used by various scripts. See:
    http://goo.gl/zeJZl

    >>> bytes2human(10000)
    '9.8K'
    >>> bytes2human(100001221)
    '95.4M'
    tBtKtMtGtTtPtEtZtYii
tsymboliR�(	RIRJRKRLRMRNRORPRQ(t	enumeratetreversedR�tlocalstdict(tntformattsymbolstprefixR8tsRRR�((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyROls	cC stjdjS(s+Return updated psutil.PROCFS_PATH constant.tpsutil(tsystmodulestPROCFS_PATH(((s4/usr/lib64/python2.7/site-packages/psutil/_common.pytget_procfs_path�scC s|jdtdt�S(NRCRD(tdecodeRR(R[((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRa�scC s|S(N((R[((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyRa�s(ii(ssunosssolaris((�Rt
__future__RR�R�R�R�R�R�R]RRtcollectionsRRRRRRtImportErrorR�Rtversion_infoR	RFt__all__R�RRtplatformt
startswithR
R
RRRRR	RtAIXR'R(R$R)R+R/R#R-R.R%R&R,R*R0RRRRRRRRRRRRR R!R"tIntEnumRrtglobalstupdatet__members__RvRwRutgetfilesystemencodingRRtgetfilesystemencodeerrorsR�RBR>R<R=R?RCR:R@RAR;R�R�R�R�R2R7R8R9R4R5R6R3R1R�RDRJRGR�RFRIRKRHRLRMRPRERRNR>R�R=RBRHROR`Ra(((s4/usr/lib64/python2.7/site-packages/psutil/_common.pyt<module>s`



										

				 	9				
	
	W						

404 Not Found
[ LogOut ]