tg@freebsd.org
close SF patch #101354
diff --git a/Lib/plat-freebsd4/FCNTL.py b/Lib/plat-freebsd4/FCNTL.py
new file mode 100644
index 0000000..3fe26ce
--- /dev/null
+++ b/Lib/plat-freebsd4/FCNTL.py
@@ -0,0 +1,113 @@
+# Generated by h2py from /usr/include/fcntl.h
+
+# Included from sys/types.h
+
+# Included from sys/cdefs.h
+def __P(protos): return protos		 
+
+def __STRING(x): return #x		 
+
+def __XSTRING(x): return __STRING(x)	 
+
+def __P(protos): return ()		 
+
+def __STRING(x): return "x"
+
+def __RCSID(s): return __IDSTRING(rcsid,s)
+
+def __RCSID_SOURCE(s): return __IDSTRING(rcsid_source,s)
+
+def __COPYRIGHT(s): return __IDSTRING(copyright,s)
+
+
+# Included from sys/inttypes.h
+
+# Included from machine/ansi.h
+_BSD_CLOCKID_T_ = int
+_BSD_PTRDIFF_T_ = int
+_BSD_SSIZE_T_ = int
+_BSD_TIME_T_ = long
+_BSD_TIMER_T_ = int
+_BSD_CT_RUNE_T_ = int
+_BSD_PID_T_ = int
+_BSD_CLK_TCK_ = 128
+_BSD_CLOCKS_PER_SEC_ = 128
+
+# Included from machine/types.h
+def major(x): return ((int)(((u_int)(x) >> 8)&0xff))  
+
+def minor(x): return ((int)((x)&0xffff00ff))          
+
+
+# Included from machine/endian.h
+_QUAD_HIGHWORD = 1
+_QUAD_LOWWORD = 0
+LITTLE_ENDIAN = 1234
+BIG_ENDIAN = 4321
+PDP_ENDIAN = 3412
+BYTE_ORDER = LITTLE_ENDIAN
+def __word_swap_long(x): return \
+
+def __byte_swap_long(x): return \
+
+def __byte_swap_long(x): return \
+
+def __byte_swap_word(x): return \
+
+ntohl = __byte_swap_long
+ntohs = __byte_swap_word
+htonl = __byte_swap_long
+htons = __byte_swap_word
+NBBY = 8
+FD_SETSIZE = 1024
+O_RDONLY = 0x0000
+O_WRONLY = 0x0001
+O_RDWR = 0x0002
+O_ACCMODE = 0x0003
+FREAD = 0x0001
+FWRITE = 0x0002
+O_NONBLOCK = 0x0004
+O_APPEND = 0x0008
+O_SHLOCK = 0x0010
+O_EXLOCK = 0x0020
+O_ASYNC = 0x0040
+O_FSYNC = 0x0080
+O_NOFOLLOW = 0x0100
+O_CREAT = 0x0200
+O_TRUNC = 0x0400
+O_EXCL = 0x0800
+FMARK = 0x1000
+FDEFER = 0x2000
+FHASLOCK = 0x4000
+O_NOCTTY = 0x8000
+def FFLAGS(oflags): return ((oflags) + 1)
+
+def OFLAGS(fflags): return ((fflags) - 1)
+
+FAPPEND = O_APPEND
+FASYNC = O_ASYNC
+FFSYNC = O_FSYNC
+FNONBLOCK = O_NONBLOCK
+FNDELAY = O_NONBLOCK
+O_NDELAY = O_NONBLOCK
+F_DUPFD = 0
+F_GETFD = 1
+F_SETFD = 2
+F_GETFL = 3
+F_SETFL = 4
+F_GETOWN = 5
+F_SETOWN = 6
+F_GETLK = 7
+F_SETLK = 8
+F_SETLKW = 9
+FD_CLOEXEC = 1
+F_RDLCK = 1
+F_UNLCK = 2
+F_WRLCK = 3
+F_WAIT = 0x010
+F_FLOCK = 0x020
+F_POSIX = 0x040
+LOCK_SH = 0x01
+LOCK_EX = 0x02
+LOCK_NB = 0x04
+LOCK_UN = 0x08