shell bypass 403
o
`b� � @ s� d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z m
Z
ddlmZ ddl
mZmZ ed�Zdd � Ze� ZG d
d� d�Zdd
� Zdd� ZG dd� dej�Zedkr_e�� dS dS )z%Test program for the fcntl C module.
� N)�Process)�verbose�cpython_only)�
import_module)�TESTFN�unlink�fcntlc
C s zt j W n ty d} Y nw d} tj�d�stjdkr@t�d�dkr*d}d}nd}d}t�|| | d d
d
d
t j
d
�}n6tj�d�rSt�dd
d
d
t j
d
d
�}n#tjd
v rft�dt j
d
d
d
d
d
d
�}nt�d | d t j
d
d
d
d
d
�}|r�tr�tdt
|�� |S )NZllZqq)ZnetbsdZfreebsdZopenbsd�darwin�l� �iZlxxxxZhhr ZgnukfreebsdZqqihhi)zhp-uxBZ unixware7Zhhllliiz
struct.pack: )�os�O_LARGEFILE�AttributeError�sys�platform�
startswith�struct�calcsize�packr �F_WRLCKr �print�repr)Z start_lenZoff_tZpid_t�lockdata� r �8/usr/local/python-3.10/lib/python3.10/test/test_fcntl.py�get_lockdata s4
���
r c @ s e Zd Zdd� Zdd� ZdS )�BadFilec C s
|| _ d S �N��fn)�selfr r r r �__init__3 �
zBadFile.__init__c C s | j S r r �r! r r r �fileno5 s zBadFile.filenoN)�__name__�
__module__�__qualname__r"