ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //opt/alt/python311/lib64/python3.11/__pycache__/linecache.cpython-311.pyc

hbdZddlZddlZddlZddlZgdZiZdZd
dZd
dZ	d
dZ
d
dZd	ZdS)zCache lines from Python source files.

This is intended to read lines from modules imported -- hence if a filename
is not found, it will look down the module search path for a file by
that name.
N)getline
clearcache
checkcache	lazycachec8tdS)zClear the cache entirely.N)cacheclear0/opt/alt/python311/lib64/python3.11/linecache.pyrrs	KKMMMMMrcvt||}d|cxkrt|krnn||dz
SdS)z~Get a line for a Python source file from the cache.
    Update the cache if it doesn't contain an entry for this file already.)getlineslen)filenamelinenomodule_globalsliness    rrrsO
X~..EF    c%jj     VaZ  
2rc|tvr3t|}t|dkrt|dS	t||S#t$rt	gcYSwxYw)zGet the lines for a Python source file from the cache.
    Update the cache if it doesn't contain an entry for this file already.r)rrupdatecacheMemoryErrorr)rrentrys   rrr$sx5hu::???1%%8^444			sAA+*A+c|'tt}n|tvr|g}ndS|D]}t|}t|dkr#|\}}}}|-	t	j|}n+#t$rt|dYjwxYw||jks||j	krt|ddS)zUDiscard cache entries that are out of date.
    (This is not checked upon each call!)Nr)
listrkeysrosstatOSErrorpopst_sizest_mtime)r	filenamesrsizemtimerfullnamers        rrr4s&&			U		J		&&hu::??',$eUH=	78$$DD			IIh%%%H	4<5DM#9#9IIh%%%&&s)A>>%B&%B&c|tvr9tt|dkrt|d|r*|dr|drgS|}	tj|}n<#t$r.|}t||r	t|d}|gcYSt|dd|	D|ft|<t|dcYS#ttf$rYnwxYwt
j|rgcYStjD]a}	t
j||}n#tt f$rY7wxYw	tj|}n#t$rY^wxYwgcYSYnwxYw	t#j|5}|}dddn#1swxYwYn#tt(t*f$rgcYSwxYw|r+|dd	s|dxxd	z
cc<|j|j}
}	|	|
||ft|<|S)
zUpdate a cache entry and return its list of lines.
    If something's wrong, print a message, discard the cache entry,
    and return an empty list.rN<>rcg|]}|dzS)
r
).0lines  r
<listcomp>zupdatecache.<locals>.<listcomp>ps???TTD[???rrr,)rrr!
startswithendswithrrr r
splitlinesImportErrorpathisabssysjoin	TypeErrorAttributeErrortokenizeopen	readlinesUnicodeDecodeErrorSyntaxErrorr"r#)rrr'rbasenamedatadirnamefprr%r&s           rrrPs
5uX1$$IIh%%%++C00X5F5Fs5K5K	H*wx  (((X~..	*
*Xq)++<IIIII??T__->->???	#hXq)))) )



"7==""	IIIx		G
7<<::~.




wx((



III	I(R
]8
$
$	#LLNNE	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#'5			U2Y''--
b			T			,
%DE5(2E(OLs4B

G(DGA
GD(%G'D(($GG E>=G>FGFGF,*G,
F96G8F99GGHG<0H<HHHHH$#H$c|tvr"tt|dkrdSdS|r*|dr|drdS|rd|vr|d}t|dd	p|d}t|d
d	}||d}t|dd	}|r$|r"t
j||}|ft|<dSdS)
aSeed the cache for filename with module_globals.

    The module loader will be asked for the source only when getlines is
    called, not immediately.

    If there is an entry in the cache already, it is not altered.

    :return: True if a lazy load is registered in the cache,
        otherwise False. To register such a load a module loader with a
        get_source method must be found, the filename must be a cacheable
        filename, and the filename must not be already cached.
    rTFr)r*__name____spec__nameNloader
__loader__
get_source)rrr1r2getgetattr	functoolspartial)rrspecrGrHrJ	get_liness       rrrs5uX1$$45++C00X5F5Fs5K5Ku*66!!*--tVT**HnZ.Hx..>#''55FV\488
	J	!)*d;;I(lE(O45r)N)
__doc__rMr7rr;__all__rrrrrrrr
rr<module>rSs



				
>
>
>
	




 &&&&8@@@@F!!!!!r