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__/smb.cpython-310.pyc
o

�/a�%�@s�ddlZddlZddlZddlZddlmZddlmZmZddlm	Z
ddlmZej
ddkZej�d�Ze��dZd	Zd
ZdZdZed
�d�dZej�ede�dd��Zej�ed��dd�ZGdd�dejj �Z!dS)�N)�
NTSTATUSError)�NT_STATUS_OBJECT_NAME_NOT_FOUND�NT_STATUS_OBJECT_PATH_NOT_FOUND)�libsmb_samba_internal)�param��REALM�/�abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdu�
Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel Süßigkeiten Äpfel s	��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcd��abcds��zHello cruel world of python3�utf8�z
testing_%di���testing�\csxeZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Z�ZS)�SMBTestscsftt|���tjd|_|j|��d�}t�	�}|�
t�d��t�
|jd||�|_|j�t�dS)N�SERVER)�template�
SMB_CONF_PATH�sysvol)�superr�setUp�os�environ�server�insta_creds�get_credentials�s3param�get_context�load�getenv�libsmb�Conn�smb_conn�mkdir�test_dir)�self�creds�lp��	__class__��1/usr/lib/python3/dist-packages/samba/tests/smb.pyr)szSMBTests.setUpcs.tt|���z	|j�t�WdSYdS)N)rr�tearDownr!�deltreer#�r$r'r)r*r+5s
zSMBTests.tearDowncCs�dd�|j�t�D�}|jd|dd�|jd|dd�|jd|d	d�|jd
|dd�dd�|j�td
�D�}|�||�dd�|j�td�D�}dg}|�||�gd�}|j�t�D]}|D]}|j||d||fd�q`q\dS)NcS�g|]}|d�qS��namer)��.0�fr)r)r*�
<listcomp>>�z&SMBTests.test_list.<locals>.<listcomp>�scriptsz'"scripts" directory not found in sysvol��msg�Policiesz("Policies" directory not found in sysvolz..z&Parent (..) found in directory listing�.z*Current dir (.) found in directory listingcSr.r/r)r1r)r)r*r4Ir5�*cSr.r/r)r1r)r)r*r4Mr5zPol*)�attrib�mtimer0�
short_name�sizezKey '%s' not in listing '%s')r!�list�
domain_dir�assertIn�assertNotIn�assertEqual)r$�ls�ls_wildcard�ls_pol�expected�
expected_keys�item�keyr)r)r*�	test_list<s4����
���zSMBTests.test_listc	Cs�g}g}t}dD]&}|�||�}|j�|�|�|�|}|�|d�}|j�|�|�|�qg}|D](}tdd�D] }d�||�}|�|d�|��}|j�|t�	d��|�|�q:q3||D]}|�
|j�|�d�|��q`|D]}|�
|�|�d�|��qr|�
d	�}|j�|�|�|j�|�d
�|��|�
d	�}|j�|�|�|�|�d
�|��|j�t�||D]}|�|j�|�d
�|��q�|D]}|�|�|�d
�|��q�dS)z4The smb.deltree API should delete files and sub-dirs)zsubdir-Xzsubdir-Yzsubdir-Z�another��zI'm file {0} in dir {1}!zfile-{0}.txtrzFailed to create {0}rzFailed to delete {0}N)r#�make_sysvol_pathr!r"�append�range�format�savefile�
test_contents�encode�
assertTrue�chkpath�file_exists�popr,�assertFalse)	r$�dirpaths�
empty_dirs�cur_dir�subdir�path�	filepaths�i�contentsr)r)r*�test_deltreeXs^
���
�
����zSMBTests.test_deltreec
Csdz|j�|�d}W|Sty1}z|jdtks!|jdtkr$d}n|�WYd}~|Sd}~ww)z<Returns whether a regular file exists (by trying to open it)TrFN)r!�loadfiler�argsrr)r$�filepath�exists�errr)r)r*rY�s�
���zSMBTests.file_existscCsN|�|�t��|j�tt�|�|�t��|j�t�|�|�t��dS)z7
        The smb.unlink API should delete file
        N)r[rY�	test_filer!rT�binary_contentsrW�unlinkr-r)r)r*�test_unlink�s
zSMBTests.test_unlinkcCs�|�|j�t��|�td�}|�|j�|��|j�tt�|�|j�t��|�td�}|j�	|�|�|j�|��|j�
|�|�|j�|��dS)z;Tests .chkpath determines whether or not a directory exists�
dont_existztest-newN)rWr!rXr#rPr[rTrjrkr"�rmdir)r$�bad_dir�new_dirr)r)r*�test_chkpath�szSMBTests.test_chkpathcCst|j�tt�d��|j�t�}|j|�d�tdd�d}|j�t|�d��|j�t�}|j|�d�|dd�dS)Nr�4contents of test file did not match what was writtenr7�wxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyzwxyz)r!rTrjrUrVrerD�decode)r$rc�new_contentsr)r)r*�test_save_load_text�s�
�zSMBTests.test_save_load_textcC�.|j�tt�|j�t�}|j|tdd�dS�Nrsr7)r!rTrj�test_literal_bytes_embed_nullsrerD�r$rcr)r)r*�test_save_load_string_bytes��

�z$SMBTests.test_save_load_string_bytescCsBtr|j�tt�d��|j�t�}|j|�d�tdd�dSdS)Nrrsr7)	�PY3r!rTrj�utf_contentsrVrerDrur{r)r)r*�test_save_load_utfcontents�s
��z#SMBTests.test_save_load_utfcontentscCrxry)r!rTrjrkrerDr{r)r)r*�test_save_binary_contents�r}z"SMBTests.test_save_binary_contentscCstj�||��dd�S)Nr	r)rr`�join�replace)r$�dirpath�filenamer)r)r*rP�szSMBTests.make_sysvol_path)�__name__�
__module__�__qualname__rr+rLrdrYrmrrrwr|r�r�rP�
__classcell__r)r)r'r*r(s:


r)"�sambar�random�sysr�samba.ntstatusrr�samba.samba3rrrr�version_infor~r�get�realm�lowerrArUrrzrkrVr`r��randintr#r�rj�tests�TestCaserr)r)r)r*�<module>s&