403Webshell
Server IP : 162.241.219.206  /  Your IP : 216.73.216.30
Web Server : Apache
System : Linux box5669.bluehost.com 5.14.0-687.15.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jun 11 08:51:45 EDT 2026 x86_64
User : signavd5 ( 2863)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3.9/site-packages/cloudinit/sources/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.9/site-packages/cloudinit/sources/__pycache__/DataSourceCloudStack.cpython-39.pyc
a

-@=j4-�@s�ddlZddlZddlZddlmZddlmZmZmZddl	m
Z
ddlmZm
Z
ddlmZddlmZddlmZdd	lmZdd
lmZe�e�ZGdd�d�ZGd
d�dej�Zdd�Zdd�Zdd�Zeej ej!ffgZ"dd�Z#dS)�N)�suppress)�gaierror�getaddrinfo�	inet_ntoa)�pack)�sources�subp)�
url_helper)�util)�dhcp)�NoDHCPLeaseError)�ec2c@s(eZdZdZdd�Zdd�Zdd�ZdS)	�CloudStackPasswordServerClienta�
    Implements password fetching from the CloudStack password server.

    http://cloudstack-administration.readthedocs.org/
       en/latest/templates.html#adding-password-management-to-your-templates
    has documentation about the system.  This implementation is following that
    found at
    https://github.com/shankerbalan/cloudstack-scripts/
       blob/master/cloud-set-guest-password-debian
    cCs
||_dS�N)�virtual_router_address)�selfr�r�J/usr/lib/python3.9/site-packages/cloudinit/sources/DataSourceCloudStack.py�__init__,sz'CloudStackPasswordServerClient.__init__cCs:t�ddddddddd	d
�|�d�|j�g�\}}|��S)NZwgetz--quietz--tries�3z	--timeoutZ20z--output-document�-z--headerzDomU_Request: {0}z{0}:8080)r�formatr�strip)rZdomu_request�output�_rrr�_do_request/s
��z*CloudStackPasswordServerClient._do_requestcCs4|�d�}|dvrdS|dkr&td��|�d�|S)NZsend_my_password)��saved_passwordZbad_requestz-Error when attempting to fetch root password.r)r�RuntimeError)r�passwordrrr�get_passwordDs

z+CloudStackPasswordServerClient.get_passwordN)�__name__�
__module__�__qualname__�__doc__rrr rrrrr srcsfeZdZdZdZdZdd�Zdd�Zd�fd	d
�	Zdd�Z	d
d�Z
dd�Zdd�Ze
dd��Z�ZS)�DataSourceCloudStackZ
CloudStack�x�2cCsdtj�||||�tj�|jd�|_d|_||_t	|j�|_
|j
sJtd��d|j
�d�|_i|_
dS)N�csZlatestzNo virtual router found!zhttp://�/)r�
DataSourcer�os�path�join�seed_dir�api_ver�distro�get_vr_address�vr_addrr�metadata_address�cfg)rZsys_cfgr0�pathsrrrrVszDataSourceCloudStack.__init__c
Cs�t�d�dD]}t�|�}|r|��Sqt�d�ttj��<t���|j	d�}|rp|��Wd�SWd�n1s�0Yt�d|j	j
j�z.|j	j
�|j	j
�}|�d�}|r�|��WSWntttfy�Yn0t�d�dS)	z�Try obtaining a "domain-name" DHCP lease parameter:
        - From systemd-networkd lease (case-insensitive)
        - From ISC dhclient
        - From dhcpcd (ephemeral)
        - Return empty string if not found (non-fatal)
        z.Try obtaining domain name from networkd leases)Z
DOMAINNAMEZDomain�domain-namezHCould not obtain FQDN from networkd leases. Falling back to ISC dhclientr6NzBCould not obtain FQDN from ISC dhclient leases. Falling back to %sz7No domain name found in any DHCP lease; returning emptyr)�LOG�debugr�networkd_get_option_from_leasesrr�NoDHCPLeaseMissingDhclientError�IscDhclient�get_key_from_latest_leaser0�dhcp_client�client_name�get_newest_lease�fallback_interface�getr�FileNotFoundError�AttributeError)r�key�
domainnameZdomain_name�latest_leaserrr�_get_domainnameds:

��4��

z$DataSourceCloudStack._get_domainnameFcsnt��|||�}|rjd|jvrjt�d�|��}|r^|j�d|��}t�d|�t�||j�St�d|�|S)z�
        Returns instance's hostname / fqdn
        First probes the parent class method.

        If fqdn is requested, and the parent method didn't return it,
        then attach the domain-name from DHCP response.
        �.zFQDN requestedzObtained the following FQDN: %szNCould not determine domain name for FQDN. Fall back to hostname as an FQDN: %s)	�super�get_hostname�hostnamer7r8rGrZDataSourceHostnameZ
is_default)rZfqdnZ
resolve_ipZ
metadata_onlyrKrE��	__class__rrrJ�s

�z!DataSourceCloudStack.get_hostnamecCs~|��}|jdkrdSt�|jd�g}t��}tj||j|jt	j
d�\}}|r\t	�d|�nt	�d|t
t��|��t|�S)NrFzlatest/meta-data/instance-id)�urlsZmax_wait�timeoutZ	status_cbzUsing metadata source: '%s'z>Giving up on waiting for the metadata from %s after %s seconds)Zget_url_paramsZmax_wait_seconds�uhelpZcombine_urlr3�time�	monotonicZwait_for_urlZtimeout_secondsr7Zwarningr8Zcritical�int�bool)rZ
url_paramsrN�
start_time�urlZ	_responserrr�wait_for_metadata_service�s,
���
�z.DataSourceCloudStack.wait_for_metadata_servicecCs|jSr)r4�rrrr�get_config_obj�sz#DataSourceCloudStack.get_config_objcCsi}tj||jdd�r>|d|_|d|_t�d|j�dSz�|��sNWdSt�	�}t
�|j|j
�|_t
�|j|j
�|_t�dtt�	�|��t|j�}z|��}Wn"ty�t�td	|j�Yn0|r�d|d
did�|_WdSt�yt�td|j
�YdS0dS)
Nr))�basez	user-dataz	meta-dataz%Using seeded cloudstack data from: %sTFz)Crawl of metadata service took %s secondsz/Failed to fetch password from virtual router %sZexpire)Z
ssh_pwauthrZchpasswdz(Failed fetching from metadata service %s)r
Zread_optional_seedr.Zuserdata_raw�metadatar7r8rWrQrRr
Zget_instance_userdatar/r3Zget_instance_metadatarSrr2r �	ExceptionZlogexcr4)rZseed_retrUZpassword_clientZset_passwordrrr�	_get_data�sV

���
�
���zDataSourceCloudStack._get_datacCs
|jdS)Nzinstance-id�r[rXrrr�get_instance_id�sz$DataSourceCloudStack.get_instance_idcCs
|jdS)Nzavailability-zoner^rXrrr�availability_zonesz&DataSourceCloudStack.availability_zone)FFF)r!r"r#ZdsnameZurl_max_waitZurl_timeoutrrGrJrWrYr]r_�propertyr`�
__classcell__rrrLrr%Ns-�0r%cCsBztdd�}Wnty,t�d�YdS0|dddSdS)Nzdata-server�PzDNS Entry data-server not foundr�)rrr7r8)Zaddrinforrr�get_data_servers
recCs^t�d���}|D]F}|�d�}|ddkrttdt|dd���}t�d|�|SqdS)	Nz/proc/net/route�	�Z00000000z<L��z"Found default route, gateway is %s)	r
Zload_text_file�
splitlines�splitrrrSr7r8)�lines�line�itemsZgwrrr�get_default_gateways

rocCst�}|rt�d|�|St�d�}|r8t�d|�|Sttj��Bt���|d�}|rvt�d|�|Wd�SWd�n1s�0Ytt	��F|j
�|j�}|r�t�d||j
j
�|Wd�SWd�n1s�0Yt�d�t�S)Nz4Found metadata server '%s' via data-server DNS entryZSERVER_ADDRESSz-Found SERVER_ADDRESS '%s' via networkd_leaseszdhcp-server-identifierz&Found SERVER_ADDRESS '%s' via dhclientz1Found SERVER_ADDRESS '%s' via ephemeral %s lease z$No DHCP found, using default gateway)rer7r8rr9rr:r;r<rBr=r?r@r>ro)r0Zlatest_addressrFrrrr1sB�
��0
��0
r1cCst�|t�Sr)rZlist_from_depends�datasources)Zdependsrrr�get_datasource_listVsrq)$Zloggingr+rQ�
contextlibrZsocketrrr�structrZ	cloudinitrrr	rPr
Z
cloudinit.netrZcloudinit.net.dhcprZcloudinit.sources.helpersr
Z	getLoggerr!r7rr*r%reror1ZDEP_FILESYSTEMZDEP_NETWORKrprqrrrr�<module>s*
.8
4�

Youez - 2016 - github.com/yon3zu
LinuXploit