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: //usr/lib/python3/dist-packages/samba/tests/__pycache__/s3passdb.cpython-310.pyc
o

�/a��@s�dZddlmZddlmZddlmZddlmZddl	Z	dD]Z
e	j�e	j�
e�e
�Ze	j�e�r5nq Gdd	�d	e�ZdS)
zTests for samba.s3passdb�)�passdb)�param)�TestCaseInTempDir)�dom_sidN)z../../../../../testdata/samba3z../../../../testdata/samba3csheZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Z�Z
S)�PassdbTestCasecs�tt|���t�dt|jf�tj�|jd�}t	�
�|_|j�tj�|d��|j�
d|�|j�
d|�|j�
d|�|j�
d|�t�|�t�d�|_dS)	Nzcp -r %s %s�samba3zsmb.confzprivate dirzstate directoryzlock directoryzcache directory�tdbsam)�superr�setUp�os�system�DATADIR�tempdir�path�join�s3param�get_context�lp�load�setr�set_secrets_dir�PDB�pdb)�self�datadir��	__class__��6/usr/lib/python3/dist-packages/samba/tests/s3passdb.pyr
#s

zPassdbTestCase.setUpcs8g|_g|_t�dtj�|jd��tt|��	�dS)Nz	rm -rf %sr)
rrrrrrrr	r�tearDown)rrrrr1szPassdbTestCase.tearDowncCs�|j��}|�d|d�|�d|d�|�d|d�|�d|d�|�d|d�|�d	|d
�|�d|d�|�d|d�|�d|d
�|�d|d�dS)Nrzbad lockout attempt���zdisconnect timezlockout durationi�ɚ;zmaximum password agezminimum password age�zmin password lengthzpassword historyzrefuse machine password changezreset count minutesz"user must logon to change password)r�get_account_policy�assertEqual)r�policyrrr�test_policy7s
zPassdbTestCase.test_policycCst��}|�td�|�dS)Nz)S-1-5-21-2470180966-3899876309-2637894779)r�get_global_sam_sidr#r)r�
domain_sidrrr�test_get_sidDszPassdbTestCase.test_get_sidcCs |j�d�}|�dt|��dS)Nr�)r�search_usersr#�len)r�userlistrrr�test_usernamesHszPassdbTestCase.test_usernamescCs�|j�d�}|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j	�|�d|j
�|�d|j�|�td�|j
�|�d|j�|�dd	�td
�D�|j�|�d
|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d
|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j�|�d|j �|�d|j!�|�td�|j"�|�d|j#�|�d|j$�dS)N�root��r�BEDWYRz-S-1-5-21-2470180966-3899876309-2637894779-513z
\\BEDWYR\rootcSsg|]}d�qS)r r)�.0�irrr�
<listcomp>Zsz/PassdbTestCase.test_getuser.<locals>.<listcomp>�l�����s���`l�)gzD�5?�i�CiO�~z\\BEDWYR\root\profilez.S-1-5-21-2470180966-3899876309-2637894779-1000)%r�getsampwnamr#�	acct_ctrl�	acct_desc�bad_password_count�bad_password_time�	code_page�country_code�	dir_drive�domain�	full_namer�	group_sid�home_dir�range�hours�	hours_len�kickoff_time�
lanman_passwd�logoff_time�logon_count�
logon_divs�logon_script�
logon_time�munged_dial�	nt_passwd�nt_username�pass_can_change_time�pass_last_set_time�pass_must_change_time�plaintext_passwd�profile_path�
pw_history�user_sid�username�workstations)r�userrrr�test_getuserLsBzPassdbTestCase.test_getusercCs|j��}|�dt|��dS)N�
)r�enum_group_mappingr#r+)r�	grouplistrrr�test_group_lengthps
z PassdbTestCase.test_group_lengthcCs>|j�td��}|�d|j�|�d|j�|�d|j�dS)N�S-1-5-32-544�Administratorsr r!)r�getgrsidrr#�nt_name�gid�sid_name_use)r�grouprrr�test_get_grouptszPassdbTestCase.test_get_groupcCs�|j��}g}|D]
}|�t|j��q	|�d|v�|�d|v�|�d|v�|�d|v�|�d|v�|�d|v�|�d|v�dS)Nr_zS-1-5-32-545zS-1-5-32-546zS-1-5-32-548zS-1-5-32-549zS-1-5-32-550zS-1-5-32-551)rr\�append�str�sid�
assertTrue)rr]�sids�grrr�test_groupsidszs
zPassdbTestCase.test_groupsidscCs2|j��}|�dt|��|�d|dd�dS)N�zJelmers NT Groupr�account_name)r�search_aliasesr#r+)r�	aliaslistrrr�test_alias_length�s
z PassdbTestCase.test_alias_length)�__name__�
__module__�__qualname__r
rr%r(r-rZr^rfrmrr�
__classcell__rrrrr!s
$
r)�__doc__�samba.samba3rrr�samba.testsr�samba.dcerpc.securityrr�prr�dirname�__file__r
�existsrrrrr�<module>s�