cpython/Lib/test/test_fcntl.py
Guido van Rossum 0e351f34c5 Finally found a wat to set a file nonblocking that works on Irix,
Solaris and Linux: use os.O_NONBLOCK.
1997-05-12 22:15:52 +00:00

29 lines
653 B
Python
Executable file

#! /usr/bin/env python
"""Test program for the fcntl C module.
Roger E. Masse
"""
import struct
import fcntl
import FCNTL
import os
from test_support import verbose
filename = '/tmp/delete-me'
# the example from the library docs
f = open(filename,'w')
rv = fcntl.fcntl(f.fileno(), FCNTL.F_SETFL, os.O_NONBLOCK)
if verbose:
print 'Status from fnctl with O_NONBLOCK: ', rv
lockdata = struct.pack('hhllhh', FCNTL.F_WRLCK, 0, 0, 0, 0, 0)
if verbose:
print 'struct.pack: ', `lockdata`
rv = fcntl.fcntl(f.fileno(), FCNTL.F_SETLKW, lockdata)
if verbose:
print 'String from fcntl with F_SETLKW: ', `rv`
f.close()
os.unlink(filename)