Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
§ Ìß]j÷+ãó—ddlZddlZddlZddlZddlZdZdZdZdZej e ¦«Z Gd„de ¦«Z Gd„d e ¦«ZGd „d ¦«Zd „Zdd„Zdd„Z dd„Zd„Zd„Zd„Zdd„Zdedefd„Zdefd„Zd„ZdS) éNz/etc/cagefs/cagefs.mpz/usr/sbin/cagefsctlz/usr/share/cagefs-skeletonz /var/.cagefscó—eZdZd„Zd„ZdS)ÚCagefsMpConflictcó2—d|›dt›d|›d�|_dS)NzConflict in adding 'z' to z5 because of pre-existing alternative specification: 'ú')ÚCAGEFS_MP_FILENAMEÚ_msg)ÚselfÚnew_itemÚ existing_items úq/builddir/build/BUILD/imunify360-venv-2.6.3/opt/imunify360/venv/lib/python3.11/site-packages/clcommon/clcagefs.pyÚ__init__zCagefsMpConflict.__init__sE€ð T 8ð Tð TÕ2Dð Tð TØCPð Tð Tð Tð Œ ˆ ˆ ócó—|jS©N)r©r s r Ú__str__zCagefsMpConflict.__str__s €ØŒyÐrN)Ú__name__Ú __module__Ú __qualname__r r©rr rrs2€€€€€ð ð ð ð ððððrrcó—eZdZdZd„ZdS)ÚCagefsNotSupportedErrorzCagefs Not Supported Exceptioncó<—t ||¦«dSr)Ú Exceptionr )r Úmessages r r z CagefsNotSupportedError.__init__%s€Ý×Ò˜4 Ñ)Ô)Ð)Ð)Ð)rN)rrrÚ__doc__r rrr rr"s)€€€€€Ø(Ð(ð*ð*ð*ð*ð*rrcó¢—eZdZdZdZdZd„Zd„Zd„Ze d„¦«Z d„Z d „Z d „Z e d „¦«Ze d „¦«Ze d „¦«Zd„Zd„ZdS)Ú CagefsMpItemz@!%*Úú!có„—|dd…dkr d|_dS| ¦«dkr d|_dS||_dS)z¾Constructor :param arg: Is either path to add to cagefs.mp or a raw line is read from cagefs.mp :param prefix: The same as adding prefix '!' to arg before passing it to ctorNéú#r)Ú _path_specÚstrip)r Úargs r r zCagefsMpItem.__init__.sI€ð ˆr�ˆrŒ7�cŠ>ˆ>Ø"ˆDŒOˆOˆOØ �YŠY‰[Œ[˜BÒ Ð Ø"ˆDŒOˆOˆOà!ˆDŒOˆOˆOrcó^—| ¦«dkr|�|j›d|d›�|_|S)z%Specify mode as in fluent constructorú@Nú,Ú03o)Úprefixr$)r Úmodes r r,zCagefsMpItem.mode;s;€ð �;Š;‰=Œ=˜CÒ Ð  DÐ$4Ø!%¤Ð=Ð=°4Ð=Ð=Ð=ˆDŒOàˆ rcó—|jSr©r$rs r rzCagefsMpItem.__str__Cs €ØŒÐrcó8—|dkrdS|ddkr|dzS|S)Nrú/éÿÿÿÿr)Úpaths r Ú _add_slashzCagefsMpItem._add_slashFs,€à �2Š:ˆ:Ø�3Ø �Œ8�sŠ?ˆ?ؘ#‘:Р؈ rcód—t |¦«}| ¦«s| ¦«rdSt | ¦«¦«}t | ¦«¦«}| |¦«S©NF)rÚ_adoptÚis_dummyr3r2Ú startswith)r ÚanotherÚadoptedÚ this_pathÚtest_preexist_in_paths r Ú pre_exist_inzCagefsMpItem.pre_exist_inNs‹€Ý×%Ò% gÑ.Ô.ˆð �=Š=‰?Œ?ð ˜g×.Ò.Ñ0Ô0ð Ø�5å ×+Ò+¨D¯IªI©K¬KÑ8Ô8ˆ Ý ,× 7Ò 7¸¿ º ¹¼Ñ GÔ GÐØ×#Ò#Ð$9Ñ:Ô:Ð:rcó�—t |¦«}| ¦«s| ¦«rdS| ¦«| ¦«krdStjtjgi}g}| ¦«| | ¦«|¦«vS)NFT)rr6r7r+Ú_PREFIX_MOUNT_RWÚ_PREFIX_MOUNT_ROÚget)r Úexistingr:Úprefix_compatibility_mapÚ null_optionss r Úis_compatible_by_prefix_withz)CagefsMpItem.is_compatible_by_prefix_withYs¨€Ý×%Ò% hÑ/Ô/ˆð �=Š=‰?Œ?ð ˜g×.Ò.Ñ0Ô0ð Ø�5à �;Š;‰=Œ=˜GŸNšNÑ,Ô,Ò ,Ð ,Ø�4å$0Ô$AÅLÔDaÐCbÐ#cР؈ à�{Š{‰}Œ}Ð 8× <Ò <¸W¿^º^Ñ=MÔ=MÈ|Ñ \Ô \Ð\Ð\rcó—|jduSrr.rs r r7zCagefsMpItem.is_dummyhs€ØŒ $Ð&Ð&rcóN—t|t¦«r|St|¦«Sr)Ú isinstancer)Úxs r r6zCagefsMpItem._adoptks%€å �a�Ñ &Ô &ð #؈Hå ‘?”?Ð "rcó8—| d¦«dS)zjCut off mode from path spec like @/var/run/screen,777 Only one comma per path spec is allowed ;-)r)r)Úsplit©Ú path_specs r Ú _cut_off_modezCagefsMpItem._cut_off_moders€ð �Š˜sÑ#Ô# AÔ&Ð&rcó@—| tj¦«Sr)ÚlstriprÚ PREFIX_LISTrLs r Ú_cut_off_prefixzCagefsMpItem._cut_off_prefixzs€à×Ò¥ Ô 8Ñ9Ô9Ð9rcóp—t t |j¦«¦«Sr)rrRrNr$rs r r2zCagefsMpItem.path~s&€Ý×+Ò+­L×,FÒ,FÀtÄÑ,WÔ,WÑXÔXÐXrcóZ—|j| ¦«kr |jdSdS)Nrr)r$r2rs r r+zCagefsMpItem.prefix�s)€Ø Œ?˜dŸiši™kœkÒ )Ð )Ø”? 1Ô%Ð %à�2rN)rrrrQr?r@r r,rÚ staticmethodr3r=rEr7r6rNrRr2r+rrr rr)s€€€€€Ø€KØÐØÐð "ð "ð "ðððððððððñ„\ðð ;ð ;ð ;ð ]ð ]ð ]ð'ð'ð'ðð#ð#ñ„\ð#ð ð'ð'ñ„\ð'ðð:ð:ñ„\ð:ðYðYðYðððððrrcóJ—tj t¦«Sr)Úosr2ÚexistsÚCAGEFSCTL_TOOLrrr Úis_cagefs_presentrZˆs€Ý Œ7�>Š>�.Ñ )Ô )Ð)réícóÖ—|€d}|€d}tj |¦«stj|¦«|�tj||¦«tj|||¦«dS)Nr1)rWr2ÚisdirÚmkdirÚchmodÚchown)r2r,Úowner_idÚgroup_ids r Ú_mk_mount_dir_setup_permrcŒsm€àÐØˆØÐØˆå Œ7�=Š=˜Ñ Ô ðÝ Œ�‰Œˆà ÐÝ Œ��tÑÔÐå„HˆT�8˜XÑ&Ô&Ð&Ð&Ð&rFcó —t¦«sdS|€ tddg}n td|g}|r-tj|tjtj¬¦«dStj|tjtjd¬¦«dS)Nz --wait-lockz --remount-allz --remount)ÚstdoutÚstderrF©rerfÚcheck)rZrYÚ subprocessÚPopenÚDEVNULLÚrun)ÚuserÚremount_in_backgroundÚcommands r Ú_remount_cagefsrpœs¦€Ý Ñ Ô ðØˆà €|Ý! =°/ÐBˆˆå! ;°Ð5ˆØð  ÝÔØ ÝÔ%ÝÔ%ð ñ ô ð ð ð õ ŒØ ÝÔ%ÝÔ%Øð  ñ ô ð ð ð rrcó‡ —t||||¦«t¦«sdStj t ¦«s3t jtdgt j t j d¬¦«t¦«tt dd¬¦«5}t||z¦«  |¦«Š d„|D¦«} ˆ fd „| D¦«} | sb| d d ¦«|�&| ¦«}t!d ||¬ ¦«t!‰ |¬ ¦«|rt#|¬¦«n1‰  | d¦«st'‰ | d¦«‚ddd¦«dS#1swxYwYdS)a‘ Add mount point to /etc/cagefs/cagefs.mp :param path: Directory path to be added in cagefs.mp and mounted from within setup_mount_dir_cagefs(). If this directory does not exist, then it is created. :param added_by: package or component, mount dir relates to, or whatever will stay in cagefs.mp with "# added by..." comment :param mode: If is not None: Regardless of whether directory exists or not prior this call, it's permissions will be set to mode. :param owner_id: Regardless of whether directory exists or not prior this call, it's owner id will be set to. If None, the owner won't be changed. :param group_id: Regardless of whether directory exists or not prior this call, it's group id will be set to. If None, the group won't be changed. :param prefix: Mount point prefix. Default is mount as RW. Pass '!' to add read-only mount point. Refer CageFS section at http://docs.cloudlinux.com/ for more options. :param remount_cagefs: If True, cagefs skeleton will be automatically remounted to apply changes. :param remount_in_background: If True, cagefs remount will be done in separate background process, without waiting for completion :returns: None Propagates native EnvironmentError if no CageFS installed or something else goes wrong. Raises CagefsMpConflict if path is already specified in cagefs.mp, but in a way which is opposite to mount_as_readonly param. Nz --create-mpFrgzr+úutf-8©Úencodingc3ó>K—|]}| ¦«V—ŒdSr)Úrstrip)Ú.0Ú file_lines r ú z)setup_mount_dir_cagefs..ús.èè€Ð>Ð>¨y˜ ×(Ò(Ñ*Ô*Ð>Ð>Ð>Ð>Ð>Ð>rcó>•—g|]}‰ |¦«¯|‘ŒSr)r=)rwrIr s €r ú z*setup_mount_dir_cagefs..ûs,ø€ÐPÐPÐP !°x×7LÒ7LÈQÑ7OÔ7OÐP˜AÐPÐPÐPrréz# next line is added by )Úfile©rnr1)rcrZrWr2rXrrirlrYrkÚadd_new_line_to_cagefs_mpÚopenrr,Úseekr%ÚprintrprEr) r2Úadded_byr,rarbr+Úremount_cagefsrnÚfÚ trim_nl_iterÚpre_exist_optionr s @r Úsetup_mount_dir_cagefsrˆ³sø€õb˜T 4¨°8Ñ<Ô<Ð<å Ñ Ô ð؈õ Œ7�>Š>Õ,Ñ -Ô -ð ÝŒÝ ˜]Ð +ÝÔ%ÝÔ%Øð  ñ ô ð õÑÔÐõ Õ  $°Ð 9Ñ 9Ô 9ðC¸QÝ ¨¡ Ñ.Ô.×3Ò3°DÑ9Ô9ˆà>Ð>¸AÐ>Ñ>Ô>ˆ ØPÐPÐPÐP |ÐPÑPÔPÐàð CØ �FŠF�1�a‰LŒLˆLàÐ#à#Ÿ>š>Ñ+Ô+�ÝÐ0°(ÀÐCÑCÔCÐCÝ �( Ð #Ñ #Ô #Ð #àð MÝÐ6KÐLÑLÔLÐLøà×6Ò6Ð7GÈÔ7KÑLÔLð CÝ" 8Ð-=¸bÔ-AÑBÔBÐ Bð'CðCðCñCôCðCðCðCðCðCðCðCøøøðCðCðCðCðCðCs CFÆFÆ FcóŒ—ttdd¬¦«5}| ¦«cddd¦«S#1swxYwYdS)NÚrrrrs)r€rÚ readlines)r…s r Ú_get_cagefs_mp_linesrŒ s„€Ý Õ  #°Ð 8Ñ 8Ô 8ð¸AØ�{Š{‰}Œ}ððððñôððððððøøøððððððs ˜9¹=Á=cóŽ—ttdd¬¦«5}| |¦«cddd¦«S#1swxYwYdS)NÚwrrrs)r€rÚ writelines)Úlinesr…s r Ú_write_cagefs_mp_linesr‘sˆ€Ý Õ  #°Ð 8Ñ 8Ô 8ð#¸AØ�|Š|˜EÑ"Ô"ð#ð#ð#ð#ñ#ô#ð#ð#ð#ð#ð#ð#øøøð#ð#ð#ð#ð#ð#s ˜:º>Á>có¬—t¦«}|r?|ddkr5|dddkr%|dxxdz cc<t|¦«dSdSdSdS)zR Add new line to the end of /etc/cagefs/cagefs.mp file if it is not there rrr1ú N)rŒr‘)r�s r rrss€õ !Ñ "Ô "€Eà ð&��q”˜R’� E¨"¤I¨b¤M°TÒ$9Ð$9Ø ˆbˆ ˆ Œ �Tш ˆ ‰ ݘuÑ%Ô%Ð%Ð%Ð%ð&ð&��Ð$9Ð$9rcó8‡—t¦«}tjdtj›dtj|¦«›d�¦«Šˆfd„|D¦«}t |¦«t |¦«krdSt|¦«|rt|¬¦«dSdS)af Remove mount points matching given path from cagefs.mp file :param str path: Path that should be removed from file. :param bool remount_cagefs: Remount cagefs skeleton or not :param remount_in_background: If True, cagefs remount will be done in separate background process, without waiting for completion :return: Nothing z^[z]?z(,\d+)?$có>•—g|]}‰ |¦«°|‘ŒSr)Úmatch)rwÚlinerŠs €r r{z+remove_mount_dir_cagefs../s(ø€ÐLÐLÐL¨¸a¿gºgÀd¹m¼mÐL ÐLÐLÐLrNr~) rŒÚreÚcompilerrQÚescapeÚlenr‘rp)r2r„rnr�Úlines_with_excluded_pathrŠs @r Úremove_mount_dir_cagefsr�#sµø€õ !Ñ "Ô "€Eå Œ ÐN�Ô1ÐNÐNµR´Y¸t±_´_ÐNÐNÐNÑOÔO€AØLÐLÐLÐL°ÐLÑLÔLÐõ ˆ5�z„z•SÐ1Ñ2Ô2Ò2Ð2؈åÐ3Ñ4Ô4Ð4ØðEÝÐ.CÐDÑDÔDÐDÐDÐDðEðErr2ÚreturncóÈ—tdd¬¦«5}|D]4}| d¬¦«}|d}||krddd¦«dSŒ5 ddd¦«n #1swxYwYd S) zACheck the fact that directory is mounted i.e. listed in mountinfoz/proc/self/mountinforrrsé)ÚmaxsplitéNTF)r€rK)r2Úmountinfo_filer—Úmountinfo_entry_partsÚ mount_points r Ú_is_directory_mountedr¦:sÞ€å Ð$¨wÐ 7Ñ 7Ô 7ð¸>Ø"ð ð ˆDØ$(§J¢J¸ JÑ$:Ô$:Ð !ð0°Ô2ˆKؘdÒ"Ð"Øðððñôðððð #ð  ðððñôððððððøøøððððð ˆ5s’*AÁ AÁAÁAcóº—tt¦«}|sDtj t¦«r t  dt¦«|S)z¯Recommended way to check whether process is running inside CageFS Please avoid testing for /var/.cagefs existence. Replace with this function call when possible. z+%s should not exist in the real file system)r¦ÚCAGEFS_DIR_PATHrWr2r]ÚloggerÚwarning)Ú in_cagefs_s r Ú in_cagefsr¬GsK€õ '¥Ñ7Ô7€JØ ðW�"œ'Ÿ-š-­Ñ8Ô8ðWÝ�ŠÐDÅoÑVÔVÐVØ Ðrcó— d}|tjvrtj |¦«ddl}n#t$rYdSwxYw | |¦«sdSn"#t $r}td¦«|‚d}~wwxYwdS)z, Check that cagefs enabled for user z/usr/share/cagefs/rNFz;ERROR: CageFS version is unsupported. Please update CageFS.T)Úsysr2ÚappendÚ cagefsctlÚ ImportErrorÚis_user_enabledÚAttributeErrorr)rmÚcagefs_lib_dirr°Úes r Ú_is_cagefs_enabledr¶SsÀ€ðØ-ˆØ ¥¤Ð )Ð )Ý ŒH�OŠO˜NÑ +Ô +Ð +ØÐÐÐÐøÝ ððð؈uˆuðøøøðlØ×(Ò(¨Ñ.Ô.ð Ø�5ð øå ðlðlðlÝ%Ð&cÑdÔdÐjkÐkøøøøðløøøð ˆ4s'‚36¶ AÁAÁA Á A?Á*A:Á:A?)r[NNr5)Nr[NNrFF)FF)ÚloggingrWr˜rir®rrYÚCAGEFS_SKELETON_PATHr¨Ú getLoggerrr©rrrrrZrcrprˆrŒr‘rr�ÚstrÚboolr¦r¬r¶rrr úr¼sêðð€€€Ø € € € Ø € € € ØÐÐÐØ € € € à,ÐØ&€Ø3ÐØ €à ˆÔ ˜8Ñ $Ô $€ððððð�yñôðð*ð*ð*ð*ð*˜iñ*ô*ð*ð\ð\ð\ð\ð\ñ\ô\ð\ð~*ð*ð*ð 'ð 'ð 'ð 'ð  ð ð ð ð2Ø Ø Ø Ø ØØðWCðWCðWCðWCðtððð #ð#ð#ð &ð&ð&ðEðEðEðEð.  ð ¨ð ð ð ð ð �4ð ð ð ð ðððððr