HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/samba/tests/dcerpc/__pycache__/lsa.cpython-310.pyc
o

��9a1�@spdZddlmZmZmZddlmZddlmZddl	m
Z
ddlmZddl
mZddlZGd	d
�d
e�ZdS)zTests for samba.dcerpc.sam.�)�samr�security�lsa)�Credentials)�TestCase)�dom_sid)�
NTSTATUSError)�NT_STATUS_ACCESS_DENIEDNc@sDeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�LsaTestscCs|��|_tj�d�|_dS)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.setUpcCs:t�}|�|j�|��t�d|j|j|�}t��}t��}t	d�}||_
|g|_d|_t�
�}tj}d}tj}	tj}
|�|||||	|
�\}}}|�|d�|�|jd�|�|jdjjd�|�|||||	|
�\}}
}|�|d�|�|
jd�|�|
jdjjd�|�|||||	|
�|�|||||	|
�dS�N�ncacn_ip_tcp:%s[schannel,seal]�S-1-5-7�rzANONYMOUS 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�count2rrr�test_lsa_LookupSids3_multiple%sB���z&LsaTests.test_lsa_LookupSids3_multiplecCs(t�}|�|j�|��t�d|j|j|�}t��}t��}t	d�}||_
|g|_d|_t�
�}tj}d}tj}	tj}
|�|||||	|
�\}}}|�|d�|�|jd�|�|jdjjd�t�d|j|j|�}|�|||||	|
�\}}}|�|d�|�|jd�|�|jdjjd�dSrr)rr-r.r!r r/r*r0r)r1r2r3rrr�#test_lsa_LookupSids3_multiple_connsNs`�
���
��z,LsaTests.test_lsa_LookupSids3_multiple_connscCs�t�}|�|j�|��t�d|j|j|�}|�ddd�\}}t�d|j|j|�}t��}|g}tj	}d}	tj
}
tj}|�||||	|
|�\}}}	|�||||	|
|�\}}}	|�
|	d�|�
|jd�t��}t��}
|jdj|
_t��}|
g|_d|_tj	}d}	d}
tj}|�||||	|
|�\}}}	|�
|	d�|�
|jd�|�
|jdjj|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]Nrrr)rrr
rrrr�GetUserName�TransSidArray3r$r%r&�LookupNames4r(r)r#rr!r rr"r'r*r+r,)rr-�c_normal�username�domainr.r!r*r0r)r1r2r3r �lookup_sidsrrr�*test_lsa_LookupNames4_LookupSids3_multiple�s���
�	
�
���z3LsaTests.test_lsa_LookupNames4_LookupSids3_multiplec
Cs�t�}|�|j�|��t�d|j|j|�}|�ddd�\}}t�d|j|j|�}t��}|g}tj	}d}	tj
}
tj}|�||||	|
|�\}}}	t�d|j|j|�}t��}|g}tj	}d}	tj
}
tj}|�||||	|
|�\}}}	dS)r9r:Nrr)
rrr
rrrrr;r<r$r%r&r=)
rr-r>r?r@r.r!r*r0r)r1r2r3rrr�$test_lsa_LookupNames4_multiple_conns�sZ��
���z-LsaTests.test_lsa_LookupNames4_multiple_connsc	Cs�t�}|�|j�|��t�d|j|j|�}|�ddd�\}}t��}|g}tj	}d}tj
}	tj}
|�t
��}|�|||||	|
�Wd�n1sMwY|jjdtkr^td��dS)Nr:rz:LookupNames4 without schannel must fail with ACCESS_DENIED)rrr
rrrrr;r<r$r%r&�assertRaisesrr=�	exception�argsr	�AssertionError)rr-r>r?r@r!r*r0r)r1r2�errr�&test_lsa_LookupNames4_without_schannels6����z/LsaTests.test_lsa_LookupNames4_without_schannelc	Cs�t�}|�|j�|��t�d|j|j|�}t��}t��}t	d�}||_
|g|_d|_t�
�}tj}d}tj}	tj}
|�t��}|�|||||	|
�Wd�n1sWwY|jjdtkrhtd��dS)Nzncacn_ip_tcp:%s[seal]rrrz9LookupSids3 without schannel must fail with ACCESS_DENIED)rrr
rrrrrrrr r!r"r#r$r%r&rDrr'rErFr	rG)rr-r.r!r r/r*r0r)r1r2rHrrr�%test_lsa_LookupSids3_without_schannel.s>����z.LsaTests.test_lsa_LookupSids3_without_schannelN)
�__name__�
__module__�__qualname__rr7r8rBrCrIrJrrrrr
s)6V6r
)�__doc__�samba.dcerpcrrr�samba.credentialsr�samba.testsr�samba.dcerpc.securityrrr�samba.ntstatusr	r
rrrr�<module>s