blob: 3a251d720b09d0b8c6d4fe63f1aae928c4c57a5e [file] [log] [blame]
Guido van Rossum19806f41994-05-03 14:46:18 +00001import struct, fcntl, FCNTL
2
3def writelock(f):
4 _lock(f, FCNTL.F_WRLCK)
5
6def readlock(f):
7 _lock(f, FCNTL.F_RDLCK)
8
9def unlock(f):
10 _lock(f, FCNTL.F_UNLCK)
11
12def _lock(f, op):
13 dummy = fcntl.fcntl(f.fileno(), FCNTL.F_SETLKW,
14 struct.pack('2h8l', op,
15 0, 0, 0, 0, 0, 0, 0, 0, 0))