aboutsummaryrefslogtreecommitdiff
path: root/src/lib9/create.c
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-04-29 17:13:24 +0000
committerrsc <devnull@localhost>2004-04-29 17:13:24 +0000
commitbe36ff68854c86247fdc769c0eaa89eb284b5ca7 (patch)
treea523e17071eb0e3088f906446b158b3d184b77fe /src/lib9/create.c
parent3d72637f9b4c42b1fc9b7d95d278ea3dd65c748d (diff)
downloadplan9port-be36ff68854c86247fdc769c0eaa89eb284b5ca7.tar.gz
plan9port-be36ff68854c86247fdc769c0eaa89eb284b5ca7.tar.bz2
plan9port-be36ff68854c86247fdc769c0eaa89eb284b5ca7.zip
add -W to specify window size.
various other little fixes.
Diffstat (limited to 'src/lib9/create.c')
-rw-r--r--src/lib9/create.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib9/create.c b/src/lib9/create.c
index 97f6e7e2..eaea479c 100644
--- a/src/lib9/create.c
+++ b/src/lib9/create.c
@@ -1,3 +1,4 @@
+#define _GNU_SOURCE /* for Linux O_DIRECT */
#include <u.h>
#define NOPLAN9DEFINES
#include <libc.h>
@@ -25,6 +26,10 @@ p9create(char *path, int mode, ulong perm)
}else{
umode = (mode&3)|O_CREAT|O_TRUNC;
mode &= ~(3|OTRUNC);
+ if(mode&ODIRECT){
+ umode |= O_DIRECT;
+ mode &= ~ODIRECT;
+ }
if(mode&OEXCL){
umode |= O_EXCL;
mode &= ~OEXCL;