File: //lib/python3/dist-packages/samba/tests/dcerpc/__pycache__/lsa.cpython-310.pyc
o
��9a1 � @ sp d Z ddlmZmZmZ ddlmZ ddlmZ ddl m
Z
ddlmZ ddl
mZ ddlZG d d
� d
e�ZdS )zTests for samba.dcerpc.sam.� )�samr�security�lsa)�Credentials)�TestCase)�dom_sid)�
NTSTATUSError)�NT_STATUS_ACCESS_DENIEDNc @ sD e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dS )�LsaTestsc C s | � � | _tj�d�| _d S )N�SERVER)�get_loadparm�lp�samba�tests�env_get_var_value�server)�self� r �8/usr/lib/python3/dist-packages/samba/tests/dcerpc/lsa.py�setUp! s
zLsaTests.setUpc C s: t � }|�| j� |�� t�d| j | j|�}t�� }t�� }t d�}||_
|g|_d|_t�
� }tj}d}tj} tj}
|�||||| |
�\}}}| �|d� | �|jd� | �|jd jjd� |�||||| |
�\}}
}| �|d� | �|
jd� | �|
jd jjd� |�||||| |
� |�||||| |
� d S �N�ncacn_ip_tcp:%s[schannel,seal]�S-1-5-7� r zANONYMOUS LOGON�r �guessr
�set_machine_accountr �lsarpcr �SidArray�SidPtrr �sid�sids�num_sids�TransNameArray2�LSA_LOOKUP_NAMES_ALL�'LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES�LSA_CLIENT_REVISION_2�LookupSids3�assertEqual�count�names�name�string)r �
machine_creds�cr! r �xr* �levelr) �lookup_options�client_revision�domains�domains2�names2�count2r r r �test_lsa_LookupSids3_multiple% sB ���z&LsaTests.test_lsa_LookupSids3_multiplec C s( t � }|�| j� |�� t�d| j | j|�}t�� }t�� }t d�}||_
|g|_d|_t�
� }tj}d}tj} tj}
|�||||| |
�\}}}| �|d� | �|jd� | �|jd jjd� t�d| j | j|�}|�||||| |
�\}}}| �|d� | �|jd� | �|jd jjd� d S r r )r r- r. r! r r/ r* r0 r) r1 r2 r3 r r r �#test_lsa_LookupSids3_multiple_connsN s` �
���
��z,LsaTests.test_lsa_LookupSids3_multiple_connsc C s� t � }|�| j� |�� t�d| j | j|�}|�ddd�\}}t�d| j | j|�}t�� }|g}tj }d} tj
}
tj}|�|||| |
|�\}}} |�|||| |
|�\}}} | �
| d� | �
|jd� t�� }t�� }
|jd j|
_t�� }|
g|_d|_tj }d} d}
tj}|�|||| |
|�\}}} | �
| d� | �
|jd� | �
|jd jj|j� t�� }|g}tj }d} tj
}
tj}|�|||| |
|�\}}} dS )��
Test by going back and forward between real DB lookups
name->sid->name to ensure the sam.ldb handle is fine once
shared
�ncacn_np:%s[seal]Nr r r )r r r
r r r r �GetUserName�TransSidArray3r$ r% r&