__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

x[h�<��\�SSKrSSKrSSKJrJr SSKJrJr SSKJr	 SSKJ
r
 SSKJrJ
r
 SSKJr SSKJr SS	KJr SS
KJrJr \R."\5rSr"SS
\R65rSrSr"SS\5r\\R@44\\R@\RB44/r"Sr#g)�N)�List�Union)�dmi�sources)�
url_helper)�util)�
EventScope�	EventType)�NoDHCPLeaseError)�EphemeralIPNetwork)�DataSourceHostname)�aliyun�ec2zAlibaba Cloud ECSc�t^�\rSrSr%SrS/rSr/r\\	\
S'SrSrSr
\Rr\\	\4\
S	'S
r\S5rU4SjrS
\SS4U4SjjrS%SjrSrSr\S5r\S5r\S5r\S5r\S5r \S5r!Sr"Sr#Sr$Sr%Sr&Sr'Sr(S r)S&S!jr*S'S"jr+S&S#jr,S$r-U=r.$)(�DataSourceAliYun��AliYunzhttp://100.100.100.200z
2016-01-01�extended_metadata_versions���2N�_network_configFc��g)NzX-aliyun-ecs-metadata-token���selfs �D/usr/lib/python3/dist-packages/cloudinit/sources/DataSourceAliYun.py�imdsv2_token_put_header�(DataSourceAliYun.imdsv2_token_put_header+s��,�c��>�[[U]XU5 [R"UR
5UlUR
[RR[R5 g�N)�superr�__init__�copy�deepcopy�default_update_eventsr	�NETWORK�addr
�BOOT)r�sys_cfg�distro�paths�	__class__s    �rr#�DataSourceAliYun.__init__/sO���
���.�w��F�%)�]�]�4�3M�3M�%N��"��"�"�:�#5�#5�6�:�:�9�>�>�Jr�ci_pkl_version�returnc�$>�[TU]U5 gr!)r"�	_unpickle)rr/r-s  �rr2�DataSourceAliYun._unpickle4s���
���.�)rc�`�URRS5nSnUcSnSn[XE5$)N�hostnameFzlocalhost.localdomainT)�metadata�getr
)r�fqdn�
resolve_ip�
metadata_onlyr5�
is_defaults      r�get_hostname�DataSourceAliYun.get_hostname7s6���=�=�$�$�Z�0���
���.�H��J�!�(�7�7rc�L�[URRS055$)Nzpublic-keys)�parse_public_keysr6r7rs r�get_public_ssh_keys�$DataSourceAliYun.get_public_ssh_keys?s�� ����!2�!2�=�"�!E�F�Frc�V�[5(aURR5$g)N�NO_ALIYUN_METADATA)�
_is_aliyun�dsname�lowerrs r�_get_cloud_name� DataSourceAliYun._get_cloud_nameBs���<�<��;�;�$�$�&�&�#rc�6�URR5$r!)rErFrs r�platform�DataSourceAliYun.platformGs���{�{� � �"�"rc��g)Nzlatest/api/tokenrrs r�api_token_route� DataSourceAliYun.api_token_routeLs��!rc��g)N�21600rrs r�imdsv2_token_ttl_seconds�)DataSourceAliYun.imdsv2_token_ttl_secondsPs��rc�2�URUR/$r!)r�imdsv2_token_req_headerrs r�imdsv2_token_redact�$DataSourceAliYun.imdsv2_token_redactTs���,�,�d�.J�.J�K�Krc� �URS-$)Nz-ttl-seconds)rrs rrT�(DataSourceAliYun.imdsv2_token_req_headerXs���+�+�n�<�<rc	��UR[R:waUR$0nURRnUR
R
S5n[U[5(a7[R"UU[R"URSS5S9nO[RSU5 U$XlUR$)z@Return a network config dict for rendering ENI or netplan files.�network�apply_full_imds_network_configT)�fallback_nic�full_network_configz%Metadata 'network' key not valid: %s.)rr�UNSETr+�fallback_interfacer6r7�
isinstance�dictr�#convert_ecs_metadata_network_configr�get_cfg_option_bool�ds_cfg�LOG�warning)r�result�iface�net_mds    r�network_config�DataSourceAliYun.network_config\s������7�=�=�0��'�'�'������.�.�����"�"�9�-���f�d�#�#��?�?��"�$(�$<�$<��K�K�!A�4�%��F�
�K�K�?��H��M�%���#�#�#rc��/n0nURnSnUH)nSRXd5nURU5 XcU'M+ [R	S5 SnSnUR5n	[R"UU	RU	R[RURURUURSS9	uphU(aU(a
X�lX6$g![Ra N/f=f)aGet an API token for ECS Instance Metadata Service.

On ECS. IMDS will always answer an API token, set
HttpTokens=optional (default) when create instance will not forcefully
use the security-enhanced mode (IMDSv2).

https://api.alibabacloud.com/api/Ecs/2014-05-26/RunInstances
�PUTz{0}/{1}zFetching Ecs IMDSv2 API TokenNF)	�urls�max_wait�timeout�	status_cb�
headers_cb�exception_cb�request_method�headers_redact�connect_synchronously)rM�format�appendre�debug�get_url_params�uhelp�wait_for_url�max_wait_seconds�timeout_secondsrf�_get_headers�_imds_exception_cbrU�UrlError�
_api_token)
r�mdurlsrn�url2base�url_pathrt�url�cur�response�
url_paramss
          r�_maybe_fetch_api_token�'DataSourceAliYun._maybe_fetch_api_tokenss��������'�'�����C��"�"�3�1�C��K�K����S�M��	�	�	�1�2������(�(�*�
�	�!�.�.��#�4�4�"�2�2��+�+��,�,�!�4�4�-�#�7�7�&+�
�M�C� �8�&�O��=� ����~�~�	�
�	�s�,AC#�#C:�9C:c��URnURSUR5nURU5nU(a'X0l[
R
SUR5 O[
RS5 [U5$)N�
metadata_urlszUsing metadata source: '%s'z)IMDS's HTTP endpoint is probably disabled)	rdr7r�r��metadata_addressreryrf�bool)r�mcfgr�r�s    r�wait_for_metadata_service�*DataSourceAliYun.wait_for_metadata_service�sk���{�{�����/�4�+=�+=�>�� �6�6�v�>���$4�!��I�I�3�T�5J�5J�K��K�K�C�D��$�%�%rc
�N�UR5(d0$URn0nURnURnSnURn[
R"URURURUUSS9US'[
R"URURURUUSS9US'[
R"URURURUUS9nXrS'U$![ad [R"[SUR5 [R "URURURUUUS9US'U$f=f![a+ [R"[S	UR5 0s$f=f)
z�Crawl metadata service when available.

@returns: Dictionary of crawled metadata content containing the keys:
  meta-data, user-data, vendor-data and dynamic.
N�	user-data)rrrurs�	item_name�vendor-data)rrrurs�	meta-dataz@Faild read json meta-data from %s fall back directory tree style)rrrurs�retrieval_exception_ignore_cbz'Failed reading from metadata address %s)r�rU�_refresh_stale_aliyun_token_cb�&_skip_or_refresh_stale_aliyun_token_cb�#_skip_json_path_meta_path_aliyun_cbr�get_instance_data�min_metadata_versionr�r�get_instance_meta_data�	Exceptionr�logexcrer�get_instance_metadata)r�redact�crawled_metadata�exc_cb�	exc_cb_ud�skip_cb�exe_cb_whole_metargs        r�crawl_metadata�DataSourceAliYun.crawl_metadata�s����-�-�/�/��I��)�)�����4�4���?�?�	��� �D�D��/	�,2�,D�,D��)�)��%�%��,�,�%�&�%�
-��[�)�/5�.F�.F��)�)��%�%��,�,�%�&�'�
/��]�+�
��6�6��-�-��)�)�#�0�0�#)�!2���17��-�. ���-�
�����5��)�)�	�14�0I�0I��-�-��)�)�#�0�0�#)�!'�29�
1� ��-� ��-
���	��K�K��9��%�%�
�
�I�
	�s2�
A4E/�:C>�>A*E,�(E/�+E,�,E/�/2F$�#F$c��[U[R5(a,URS:Xa[RS5 SUlg)z=Exception handler for Ecs to refresh token if token is stale.i�z+Clearing cached Ecs API token due to expiryNT)r`r{r��codereryr��r�msg�	exceptions   rr��/DataSourceAliYun._refresh_stale_aliyun_token_cb�s5���i����0�0�Y�^�^�s�5J��I�I�C�D�"�D�O�rc� �URU;$)z/Returns False if cause.code is in status_codes.)r�)r�status_codes�causes   r�_skip_retry_on_codes�%DataSourceAliYun._skip_retry_on_codes�s���z�z��-�-rc�t�UR[RU5nU(dgURX5$)zVCallback will not retry on SKIP_USERDATA_VENDORDATA_CODES or
if no token is available.F)r�r�SKIP_USERDATA_CODESr�)rr�r��retrys    rr��7DataSourceAliYun._skip_or_refresh_stale_aliyun_token_cb�s3���)�)�#�*A�*A�9�M�����2�2�3�B�Brc��[U[R5(a&URS:Xa[RS5 gUR
X5$)z7Callback will not retry of whole meta_path is not foundi�z&whole meta_path is not found, skippingF)r`r{r�r�rerfr�r�s   rr��4DataSourceAliYun._skip_json_path_meta_path_aliyun_cbs?���i����0�0�Y�^�^�s�5J��K�K�@�A���2�2�3�B�Brc�l�URURR5:wagUR(a�[R
"5(a[RS5 g[URURRSSS9nUR5Ul[RSUR(aSUR3OS5 SSS5 OUR5UlUR(a[UR[ 5(dgURR#S05UlURR#S	05UlURR#S
05Ulg!,(df   N�=f![a gf=f)NFz1FreeBSD doesn't support running dhclient with -sfT)�ipv4�ipv6zCrawled metadata service%s� �r�r�r�)�
cloud_namerErF�perform_dhcp_setupr�
is_FreeBSDreryrr+r_r��_crawled_metadata�	state_msgrr`rar7r6�userdata_raw�vendordata_raw)r�netws  r�	_get_data�DataSourceAliYun._get_datasZ���?�?�d�k�k�/�/�1�1���"�"���� � ��	�	�M�N��
�'��K�K��K�K�2�2���	�
�-1�-@�-@�-B�D�*��I�I�4�04���!�D�N�N�+�,�B����&*�%8�%8�%:�D�"��%�%�Z��"�"�D�.
�.
���.�.�2�2�;��C��
� �2�2�6�6�{�B�G���"�4�4�8�8���K����/���$�
��
�s1�,*F&�AF�"F&�
F#�F&�#F&�&
F3�2F3c�|�UcURn[RS5 URU0nSR	UR
UR5n[R"UUURSS9nUR$![Ra n[RSX55 SnAgSnAff=f)z�Request new metadata API token.
@param seconds: The lifetime of the token in seconds

@return: The API token or None if unavailable.
Nz!Refreshing Ecs metadata API tokenz{}/{}rm)�headersrurtz/Unable to get API token: %s raised exception %s)
rQreryrTrwr�rMr{�readurlrUr�rf�contents)r�seconds�request_header�	token_urlr��es      r�_refresh_api_token�#DataSourceAliYun._refresh_api_token/s����?��3�3�G��	�	�5�6��6�6��@���N�N�4�#8�#8�$�:N�:N�O�	�	��}�}��&�#�7�7�$�	�H�� � � ���~�~�	��K�K�A�9�
���		�s�!B�B;�B6�6B;c��URUR0nURU;aU$UR(d(UR	5UlUR(d0$UR
UR0$)z�Return a dict of headers for accessing a url.

If _api_token is unset on AWS, attempt to refresh the token via a PUT
and then return the updated token header.
)rTrQrMr�r�r)rr��request_token_headers   rr�DataSourceAliYun._get_headersJsm��
�(�(�$�*G�*G� 
�����3�&�'�'����#�5�5�7�D�O��?�?��	��,�,�d�o�o�>�>rc��[U[R5(a_UR(aNURS:�a>URS:Xa[RS5 Ue[RS5 Ueg)a�Fail quickly on proper AWS if IMDSv2 rejects API token request

Guidance from Amazon is that if IMDSv2 had disabled token requests
by returning a 403, or cloud-init malformed requests resulting in
other 40X errors, we want the datasource detection to fail quickly
without retries as those symptoms will likely not be resolved by
retries.

Exceptions such as requests.ConnectionError due to IMDS being
temporarily unroutable or unavailable will still retry due to the
callsite wait_for_url.
�i�zLEcs IMDS endpoint returned a 403 error. HTTP endpoint is disabled. Aborting.z2Fatal error while requesting Ecs IMDSv2 API tokensT)r`r{r�r�rerf)rr�s  rr��#DataSourceAliYun._imds_exception_cb_sf���i����0�0��~�~�)�.�.�C�"7��>�>�S�(��K�K�?�� ���K�K�L�� ��r)r�r�rr&r6r�r�r�)FFFr!)r�)/�__name__�
__module__�__qualname__�__firstlineno__rEr�r�rr�str�__annotations__�url_max_wait�url_timeoutr�rr^rrrar��propertyrr#�intr2r<r@rGrJrMrQrUrTrjr�r�r�r�r�r�r�r�r�rr��__static_attributes__�
__classcell__)r-s@rrrsQ���
�F�-�.�M�(��,.���S�	�.��L��K��J�(/�
�
�O�U�3��9�%�5����-��-�K�
*��*��*�8�G�$�
�#��#��"��"������L��L��=��=��$��$�,0�d&�> �@�.�C�C��B!�6?�*�rrc�<�[R"S5[:H$)Nzsystem-product-name)r�
read_dmi_data�ALIYUN_PRODUCTrrrrDrD|s�����2�3�~�E�Erc��/nUR5H�up#[U[5(a!URUR	55 M;[U[
5(aUR
U5 Mc[U[5(dMzURS/5n[U[5(a!URUR	55 M�[U[
5(dM�UR
U5 M� U$)Nzopenssh-key)	�itemsr`r�rx�strip�list�extendrar7)�public_keys�keys�_key_id�key_body�keys     rr?r?�s���
�D�(�.�.�0����h��$�$��K�K����(�)�
��$�
'�
'��K�K��!�
��$�
'�
'��,�,�}�b�1�C��#�s�#�#����C�I�I�K�(��C��&�&����C� �1��Krc��\rSrSrSrSrSrg)�DataSourceAliYunLocalr�aeDatasource run at init-local which sets up network to query metadata.

In init-local, no network is available. This subclass sets up minimal
networking with dhclient on a viable nic so that it can talk to the
metadata service. If the metadata service provides network configuration
then render the network configuration for that instance based on metadata.
TrN)r�r�r�r��__doc__r�r�rrrr�r��s����rr�c�8�[R"U[5$r!)r�list_from_depends�datasources)�dependss r�get_datasource_listr��s���$�$�W�k�:�:r)$r$�logging�typingrr�	cloudinitrrrr{r�cloudinit.eventr	r
�cloudinit.net.dhcpr�cloudinit.net.ephemeralr�cloudinit.sourcesr
�cloudinit.sources.helpersrr�	getLoggerr�rer��
DataSourcerrDr?r��DEP_FILESYSTEM�DEP_NETWORKr�r�rrr�<module>rs������"�)��1�/�6�0�1�
����!��$��d�w�)�)�d�NF�
� 	�,�	��W�3�3�5�6���.�.��0C�0C�D�E���;r

Filemanager

Name Type Size Permission Actions
DataSourceAkamai.cpython-313.pyc File 12.33 KB 0644
DataSourceAliYun.cpython-313.pyc File 18.33 KB 0644
DataSourceAltCloud.cpython-313.pyc File 9.85 KB 0644
DataSourceAzure.cpython-313.pyc File 79.75 KB 0644
DataSourceBigstep.cpython-313.pyc File 2.86 KB 0644
DataSourceCloudCIX.cpython-313.pyc File 7.22 KB 0644
DataSourceCloudSigma.cpython-313.pyc File 5.18 KB 0644
DataSourceCloudStack.cpython-313.pyc File 13.11 KB 0644
DataSourceConfigDrive.cpython-313.pyc File 14.2 KB 0644
DataSourceDigitalOcean.cpython-313.pyc File 6.2 KB 0644
DataSourceEc2.cpython-313.pyc File 43.31 KB 0644
DataSourceExoscale.cpython-313.pyc File 8.9 KB 0644
DataSourceGCE.cpython-313.pyc File 16.12 KB 0644
DataSourceHetzner.cpython-313.pyc File 6.46 KB 0644
DataSourceIBMCloud.cpython-313.pyc File 18.43 KB 0644
DataSourceLXD.cpython-313.pyc File 20.3 KB 0644
DataSourceMAAS.cpython-313.pyc File 18.29 KB 0644
DataSourceNWCS.cpython-313.pyc File 6.76 KB 0644
DataSourceNoCloud.cpython-313.pyc File 17.26 KB 0644
DataSourceNone.cpython-313.pyc File 1.88 KB 0644
DataSourceOVF.cpython-313.pyc File 15.34 KB 0644
DataSourceOpenNebula.cpython-313.pyc File 18.96 KB 0644
DataSourceOpenStack.cpython-313.pyc File 13.1 KB 0644
DataSourceOracle.cpython-313.pyc File 21.77 KB 0644
DataSourceRbxCloud.cpython-313.pyc File 10.25 KB 0644
DataSourceScaleway.cpython-313.pyc File 17.07 KB 0644
DataSourceSmartOS.cpython-313.pyc File 38.32 KB 0644
DataSourceUpCloud.cpython-313.pyc File 7.11 KB 0644
DataSourceVMware.cpython-313.pyc File 35.8 KB 0644
DataSourceVultr.cpython-313.pyc File 5.79 KB 0644
DataSourceWSL.cpython-313.pyc File 15.48 KB 0644
__init__.cpython-313.pyc File 47.24 KB 0644
Filemanager