§ WèÄjkãó`—dZddlZddlZddlZddlmZddlmZddl m Z Gd„d¦«Z dS) zx This module contains class implementing part of X-Ray Manager related to User Agent management (enable/disable/status) éN)Úgettexté)ÚXRayManagerError)Ú is_ubuntucóŽ—eZdZdZd„Zed„¦«Zddddœdejfd„Z dd „Z dd e dejfd „Z dd „Z dd„Zdd„ZdS)ÚManageUserAgentz0 Manager actions related to user plugin có�—d|_d|_tjd¦«|_t t tjf|_ dS)Nzxray-user-agentzxray-user-agent.socketÚuser_plugin_manager) Ú service_nameÚservice_socketÚloggingÚ getLoggerÚloggerÚOSErrorÚ ValueErrorÚ subprocessÚSubprocessErrorÚsubprocess_errors)Úselfs úQ/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/internal/user_manager.pyÚ__init__zManageUserAgent.__init__s?€Ø-ˆÔØ6ˆÔÝÔ'Ð(=Ñ>Ô>ˆŒ å •Z¥Ô!;ð" ˆÔÐÐócó@—tj d¦«S)z- Check for systemd available ú/bin/systemctl)ÚosÚpathÚisfile©rrÚ is_systemdzManageUserAgent.is_systemd!s€õ Œw�~Š~Ð.Ñ/Ô/Ð/rTF©Úcapture_outputÚtextÚcheckÚreturnc ó’— tj||||¬¦«}|j dd |¦«h¦«�n|#tj$rÎ}|j d|j|j|j p|j |j|j|j |j dœ¬¦«ttd  t|j¦«t|j¦«t|j ¦«pt|j ¦«¦«¦«¦«‚d}~w|j$r”}|j d d |¦«d t|¦«i¬¦«ttd   d |¦«t|¦«¦«¦«¦«‚d}~wwxYw|S) z< Call subprocess described with given *args r zCommand '%s' succeededú z-External command '%s' failed with code %s: %s)ÚcmdÚretcodeÚstdoutÚstderr)Úextraz-External command '{}' failed with code {}: {}Nz#Failed to run '%s' external commandÚerrz'Failed to run '{}' external command: {})rÚrunrÚinfoÚjoinÚCalledProcessErrorÚerrorr'Ú returncoder)r*rÚ_ÚformatÚstrr)rr!r"r#ÚargsÚresultÚes rÚ _run_externalzManageUserAgent._run_external(sì€ð  ]Ý”^ DØ3AØ)-Ø*/ð1ñ1ô1ˆFð ŒK× Ò Ð5¸¿ºÀ¹¼Ð7GÑ HÔ HÐ HÑ HøÝÔ,ð oð oð oØ ŒK× Ò ÐMØœe Q¤\°1´8Ð3G¸q¼xØ,-¬E¸a¼lØ/0¬xÀ1Ä8ð%Mð%Mð ñ Nô Nð Nõ#ÝÐA×HÒHÍÈQÌUÉÌÝMPÐQRÔQ]ÑM^ÔM^ÝMPÐQRÔQYÉ]Ì]ÐMkÕ^aÐbcÔbjÑ^kÔ^kñmômñnônñoôoð oøøøøðÔ%ð ]ð ]ð ]Ø ŒK× Ò ÐCØ!Ÿhšh t™nœnØ%*­C°©F¬F Oð ñ 5ô 5ð 5õ#ÝÐ;×BÒBÀ3Ç8Â8ÈDÁ>Ä>ÕSVÐWXÑSYÔSYÑZÔZÑ[Ô[ñ]ô]ð ]øøøøð  ]øøøð ˆ s&‚AA Á GÁC D#Ä# GÄ0BF?Æ?GcóÜ—dddœ}| ¦«r*| d||d|j¦«dS| d|j||d¦«dS) z, Switch autostart ON or OFF )ÚenableÚon)ÚdisableÚoff)TFrrz/sbin/chkconfigrN)rr9r r )rÚswitchÚautostart_selects rÚ _autostartzManageUserAgent._autostartDs�€ð #Ø%ð ð Ðð �?Š?Ñ Ô ð <Ø × Ò Ð/Ø/°Ô7¸Ô:Ø#Ô2ñ 4ô 4ð 4ð 4ð 4ð × Ò Ð0Ø#Ô0Ø/°Ô7¸Ô:ñ <ô <ð <ð <ð ˆzˆz°YÐ>rN)T)FF)r$rI)Ú__name__Ú __module__Ú __qualname__Ú__doc__rÚ staticmethodrrÚCompletedProcessr9rAr5rHr;r=rKrrrrrs €€€€€ððð ð ð ðð0ð0ñ„\ð0ð 37¸TØ!ðððØ&0Ô&Aððððð8<ð<ð<ð<ð"rcs¡ðððð € € € ØÐÐÐØ€€€ØÐÐÐÐÐØ(Ð(Ð(Ð(Ð(Ð(à$Ð$Ð$Ð$Ð$Ð$ðB?ðB?ðB?ðB?ðB?ñB?ôB?ðB?ðB?ðB?r