File: //usr/lib/python3/dist-packages/samba/__pycache__/gp_ext_loader.cpython-310.pyc
o
�/a\ � @ sd d dl mZ d dl mZ z
d dlZdd� ZW n ey' d dlZdd� ZY nw dd� Zd d
� Z dS )� )�list_gp_extensions)�gp_extNc C s* t j�| |�}t j�|�}|j�|� |S �N)� importlib�util�spec_from_file_location�module_from_spec�loader�exec_module)�name�location�spec�module� r �5/usr/lib/python3/dist-packages/samba/gp_ext_loader.py�import_file s r c C s t �| |�S r )�imp�load_source)r r r r r r s c C s8 |rt |��� D ]\}}|| krt|t�r| S qd S r )�vars�items�
issubclassr )r �mod�k�vr r r �get_gp_ext_from_module# s �r c C s� g }g }t |�}|�� D ]@}t|d |d �}t|d |�}|r5|d r5|�|� | �d|d |jf � |rL|d rL|�|� | �d|d |jf � q||fS )N�ProcessGroupPolicy�DllName�
MachinePolicyz$Loaded machine extension from %s: %s�
UserPolicyz!Loaded user extension from %s: %s)r �valuesr r �append�info�__name__)�logger�smb_conf� user_exts�machine_exts�gp_extsr r �extr r r �get_gp_client_side_extensions+ s$
�
��r) )
�
samba.gpclassr r �importlib.utilr r �ImportErrorr r r) r r r r �<module> s �