Spamworldpro Mini Shell
Spamworldpro


Server : Apache/2.4.52 (Ubuntu)
System : Linux webserver 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64
User : www-data ( 33)
PHP Version : 8.1.2-1ubuntu2.21
Disable Function : NONE
Directory :  /lib/python3/dist-packages/DistUpgrade/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/DistUpgrade/__pycache__/MetaRelease.cpython-310.pyc
o

��{f�D�@s~ddlmZmZddlZddlZddlZzddlZWn
ey'ddlZYnwzddl	m
Z
Wney?ddlm
Z
YnwddlZddl
ZddlZddlZddlZddlZddlZzddlmZddlmZmZddlmZmZWney�ddlmZmZmZmZmZYnwdd	lmZmZm Z m!Z!m"Z"Gd
d�de#�Z$Gdd
�d
e%�Z&Gdd�de%�Z'e(dkr�e'dd�Z)dSdS)�)�absolute_import�print_functionN)�
BadStatusLine)�quote)�Request�urlopen)�	HTTPError�URLError)rrr	rr�)�get_lang�get_dist�get_dist_version�get_ubuntu_flavor�get_ubuntu_flavor_namec@seZdZdS)�MetaReleaseParseErrorN)�__name__�
__module__�__qualname__�rr�9/usr/lib/python3/dist-packages/DistUpgrade/MetaRelease.pyr6src@seZdZdd�ZdS)�DistcCs:||_||_||_||_d|_d|_d|_d|_d|_dS�N)	�name�version�date�	supported�releaseNotesURI�releaseNotesHtmlUri�upgradeTool�upgradeToolSig�upgrade_broken)�selfrrrrrrr�__init__;s
z
Dist.__init__N)rrrr"rrrrr:src@s|eZdZdZdejvZdZdZ						ddd�Z	d	d
�Z
dd�Zd
d�Zdd�Z
dd�Zedd��Zdd�Zdd�ZdS)�MetaReleaseCorezT
    A MetaReleaseCore object abstracts the list of released
    distributions.
    �DEBUG_UPDATE_MANAGERz$/etc/update-manager/release-upgradesz /etc/update-manager/meta-releaseFNc
Cs�|rd|_|�d||f�||_||_t��|_d|_d|_|dur't	�
�}t|d�|_t
|d�|_t�|_t�|_d|_d|_d}|d|_|d|_d|_d|_t��}tj�|j�r�z|�|j�Wntj y�}	zt!j"�#d	|j|	f�WYd}	~	dSd}	~	ww|�$d
�r�d
}
dD]$}|�%|
|�r�|�d|j|�&|
|�f�t'|d
|
|f|�&|
|��q�t��}tj�|j(��r,z|�|j(�Wntj y�}	zt!j"�#d	|j(|	f�WYd}	~	dSd}	~	ww|�%dd��r,|�&dd��)�}|dk�s|dk�rd|_|j�*�dS|dk�r)d|_t+�,�}
|
�-|j��r#|j|_n	|�d�nd|_|�r3|j|_|�r?|j|j7_n|�rJ|j|j7_|�d|j�d|_.|�/��sa|�d�dStj0|j1d��2�dS)NTz1MetaRelease.__init__() useDevel=%s useProposed=%s)�cachezhttps://changelogs.ubuntu.com/zmeta-releasezmeta-release-ltsz-developmentz	-proposedzERROR: failed to read '%s':
%s�METARELEASE)�URI�URI_LTS�URI_UNSTABLE_POSTFIX�URI_PROPOSED_POSTFIXz%s: %s z%s_%s�DEFAULT�Prompt�never�no�ltsz Prompt=lts for non-LTS, ignoring�normalzmetarelease-uri: %sz_buildMetaReleaseFile failed)�target)3�DEBUG�_debug�
forceDownload�useDevelopmentRelease�	threading�Event�
downloaded�
upgradable_to�new_dist�apt�Cacher�flavorr�flavor_namer�current_dist_namer
�current_dist_version�no_longer_supported�prompt�METARELEASE_URI�METARELEASE_URI_LTS� METARELEASE_URI_UNSTABLE_POSTFIX� METARELEASE_URI_PROPOSED_POSTFIX�configparser�ConfigParser�os�path�exists�CONF_METARELEASE�read�Error�sys�stderr�write�has_section�
has_option�get�setattr�CONF�lower�set�distro_info�UbuntuDistroInfo�is_lts�metarelease_information�_buildMetaReleaseFile�Thread�download�start)r!r5�useProposed�debug�forceLTSr4r%�base_uri�parser�e�sec�krB�dirrrr"Ts��


���


�����




zMetaReleaseCore.__init__c
Cs�tj�dtj�|j��|_z
t|jd���Wn�ty�t�	dtj�
d��}tj�|�d}tj�|�sZzt�
|�WntyY}ztj�d|�WYd}~YdSd}~wwtj�|�s�zt�|d�Wnty�}ztj�d|�WYd}~YdSd}~wwtj�|d	�}tj�|�s�zt�|�Wnty�}ztj�d|�WYd}~YdSd}~wwtj�|tj�|j��|_Ynwztj�|j�dkr�t�|j�Wd
SWd
Sty�Yd
Sw)Nz/var/lib/update-manager/�a�XDG_CACHE_HOMEz~/.cacherzmkdir() failed: '%s'Fi�zupdate-manager-coreT)rIrJ�join�basenamerC�METARELEASE_FILE�open�close�IOError�getenv�
expanduser�splitrK�makedirs�OSErrorrOrPrQ�mkdir�getsize�unlink�	Exception)r!�	cache_dir�cache_parent_dirrfrJrrrr]�sf��������
�����z%MetaReleaseCore._buildMetaReleaseFilecC�
||_dS)z\ virtual function that is called when the distro is no longer
            supported
        N)rA�r!�distrrr�dist_no_longer_supported��
z(MetaReleaseCore.dist_no_longer_supportedcCr})z\ virtual function that is called when a new distro release
            is available
        N)r:r~rrr�new_dist_available�r�z"MetaReleaseCore.new_dist_availablecCsV|�d�|j}|�d|�d}g}t�|j�}z�|��r�dD]
}||jvr-td|��q |jd}|�d|�|jd}tt	j
�|��}d|d	<t�
t|��}	t|jd
�}
|jd}t|||	|
�}d|jvr~|jd|_t�}
|
r~|jd
|
7_d|jvr�|jd|_|�|�}|r�|j|7_d|jvr�|jd|_d|jvr�|jd|_d|jvr�|jd|_|�|�||kr�|}|��sWntjy�td|j��w|j��d|_|dur�|�d�dSd}|D]}|j|jk�r
|js�|js�q�|}|�d|�nq�|dk�r|j�s||_|� |�|dk�r)||_|�!|�dS)NzMetaRelease.parse()zcurrent dist name: '%s')r�Version�	Supported�DatezRequired key '%s' missingrzfound distro name: '%s'r�r�r�r��ReleaseNotesz?lang=%s�ReleaseNotesHtml�UpgradeTool�UpgradeToolSignature�
UpgradeBrokenzUnable to parse %sz,current dist not found in meta-release file
F�znew dist: %sT)"r3r?�apt_pkg�TagFiler\�step�sectionr�list�email�utils�	parsedate�time�mktime�tuple�intrrrr�#_get_release_notes_uri_query_stringrrr �appendrNrCrprrr5r9r�r�)r!r?�current_dist�dists�	index_tag�required_keyr�rawdate�
parseddaterrrr�lang�queryr9rrr�parse�s�

��




�


�

��$��

�



zMetaReleaseCore.parsec
Cs�|�d�d}t|j�}|�dd�|�dd�t�|jtj�r3z	t�|j�j	}Wn	t
y2Ynw|dkrF|jsF|�dt�
t�|���zmt|dd	�}tj�|j�r�t�|jtj�s�zt�|j�Wnt
y}ztd
|j|f�WYd}~nd}~wwz$t|jd�}|��D]
}|�|�d��q�|��|�dd�||_Wn	ty�Ynw|��WnYty�}z)|jd
kr�tj�|j�r�|�d|j�t|jd�|_n|�d|�WYd}~n)d}~wtt t!j"f�y}z|�d|�td|j�WYd}~nd}~ww|jdu�rG|�d�z|�#�Wnt$�y6t%�&d|j�t�'|j�Ynw|j(�rF|j(j)�rFt�'|j�n|�d�|j*�+�dS)NzMetaRelease.download()rz
Cache-ControlzNo-Cache�Pragmazno-cachezIf-Modified-Since�)�timeoutzCan't unlink '%s' (%s)zw+zUTF-8i0zreading file '%s'�rz%result of meta-release download: '%s'zIFailed to connect to %s. Check your Internet connection or proxy settingsz!have self.metarelease_informationzparse failed for '%s'zNO self.metarelease_information),r3rrC�
add_headerrI�accessrn�W_OK�stat�st_mtimervr4r��asctime�gmtimerrJrKry�printro�	readlinesrQ�decode�flush�seekr\rqrpr�coder	r�socketr�r�rz�logging�	exception�remover:r r8rX)r!�lastmodified�req�urirf�f�linerrrr_Ns�

������
�����
���
zMetaReleaseCore.downloadcCs|j��Sr)r8�is_set)r!rrr�downloading�szMetaReleaseCore.downloadingcCs@d}t�}|r
|d|7}|d|j7}|d|j7}t|d�S)N�?zlang=%s&zos=%s&zver=%sz/?)rr=rr)r!r�qr�rrrr��s
z3MetaReleaseCore._get_release_notes_uri_query_stringcCs|jr
tj�|d�dSdS)N�
)r2rOrPrQ)r!�msgrrrr3�s�zMetaReleaseCore._debug)FFFFFN)rrr�__doc__rI�environr2rVrLr"r]r�r�r�r_�propertyr�r�r3rrrrr#Hs*

�h.XG

r#�__main__F)*�
__future__rrr;r�rYrG�ImportErrorrH�http.clientr�httplibr��email.utilsr�rIr�rOr�r6�urllib.parser�urllib.requestrr�urllib.errorrr	�urllib2r�rrr
rrrzr�objectrr#r�metarrrr�<module>sJ�� �e�

Spamworldpro Mini