diff options
-rw-r--r-- | libstd/sys+plan9-x64.myr | 18 | ||||
-rw-r--r-- | libstd/syswrap+plan9.myr | 4 |
2 files changed, 20 insertions, 2 deletions
diff --git a/libstd/sys+plan9-x64.myr b/libstd/sys+plan9-x64.myr index 3437f09..e658cec 100644 --- a/libstd/sys+plan9-x64.myr +++ b/libstd/sys+plan9-x64.myr @@ -17,6 +17,24 @@ pkg sys = const Orclose : fdopt = 64 const Oexcl : fdopt = 0x1000 + const Qtdir : int64 = 0x80 + const Qtappend : int64 = 0x40 + const Qtexcl : int64 = 0x20 + const Qtmount : int64 = 0x10 + const Qtauth : int64 = 0x08 + const Qttmp : int64 = 0x04 + const Qtfile : int64 = 0x00 + + const Dmdir : int64 = 0x8000000 + const Dmappend : int64 = 0x4000000 + const Dmexcl : int64 = 0x2000000 + const Dmmount : int64 = 0x1000000 + const Dmauth : int64 = 0x0800000 + const Dmtmp : int64 = 0x0400000 + const Dmread : int64 = 0x4 + const Dmwrite : int64 = 0x2 + const Dmexec : int64 = 0x1 + const Syssysr1 : scno = 0 const Sys_errstr : scno = 1 const Sysbind : scno = 2 diff --git a/libstd/syswrap+plan9.myr b/libstd/syswrap+plan9.myr index 6473b5b..81750d7 100644 --- a/libstd/syswrap+plan9.myr +++ b/libstd/syswrap+plan9.myr @@ -42,7 +42,7 @@ pkg std = const open = {path, opts; -> openmode(path, opts, 0o777)} const openmode = {path, opts, mode; if opts & Ocreat - sys.create(path, opts, mode) + sys.create(path, opts castto(sys.fdopt), mode) castto(fd) else sys.open(path, opts castto(sys.fdopt)) castto(fd) ;; @@ -57,7 +57,7 @@ const pipe = {fds; -> sys.pipe(fds castto(sys.fd[2]#))} const mkdir = {path, mode; -> var fd - fd = sys.create(path, OREAD, DMDIR | mode) + fd = sys.create(path, sys.Oread, sys.Dmdir | mode) if fd >= 0 close(fd) -> 0 |