os: delete Exec, NewFile takes uintptr, rename ShellExpand, doc fixes
Delete O_NDELAY, O_NONBLOCK, O_NOCTTY, O_ASYNC.
Clean up some docs.
Rename ShellExpand -> ExpandEnv.
Make NewFile take a uintptr; change File.Fd to return one.
(for API compatibility between Unix and Windows)
Fixes #2947
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/5655045
diff --git a/src/pkg/net/fd.go b/src/pkg/net/fd.go
index 2352d22..607a6c1 100644
--- a/src/pkg/net/fd.go
+++ b/src/pkg/net/fd.go
@@ -228,7 +228,7 @@
s.CheckDeadlines()
continue
}
- if fd == s.pr.Fd() {
+ if fd == int(s.pr.Fd()) {
// Drain our wakeup pipe (we could loop here,
// but it's unlikely that there are more than
// len(scratch) wakeup calls).
@@ -295,7 +295,7 @@
if raddr != nil {
rs = raddr.String()
}
- fd.sysfile = os.NewFile(fd.sysfd, fd.net+":"+ls+"->"+rs)
+ fd.sysfile = os.NewFile(uintptr(fd.sysfd), fd.net+":"+ls+"->"+rs)
}
func (fd *netFD) connect(ra syscall.Sockaddr) error {
@@ -382,7 +382,7 @@
return 0, os.EINVAL
}
for {
- n, err = syscall.Read(fd.sysfile.Fd(), p)
+ n, err = syscall.Read(int(fd.sysfile.Fd()), p)
if err == syscall.EAGAIN {
if fd.rdeadline >= 0 {
pollserver.WaitRead(fd)
@@ -476,7 +476,7 @@
nn := 0
for {
var n int
- n, err = syscall.Write(fd.sysfile.Fd(), p[nn:])
+ n, err = syscall.Write(int(fd.sysfile.Fd()), p[nn:])
if n > 0 {
nn += n
}
@@ -615,7 +615,7 @@
return nil, &OpError{"setnonblock", fd.net, fd.laddr, err}
}
- return os.NewFile(ns, fd.sysfile.Name()), nil
+ return os.NewFile(uintptr(ns), fd.sysfile.Name()), nil
}
func closesocket(s int) error {
diff --git a/src/pkg/net/file.go b/src/pkg/net/file.go
index 901b856..f9546dc 100644
--- a/src/pkg/net/file.go
+++ b/src/pkg/net/file.go
@@ -12,7 +12,7 @@
)
func newFileFD(f *os.File) (*netFD, error) {
- fd, err := syscall.Dup(f.Fd())
+ fd, err := syscall.Dup(int(f.Fd()))
if err != nil {
return nil, os.NewSyscallError("dup", err)
}
diff --git a/src/pkg/net/newpollserver.go b/src/pkg/net/newpollserver.go
index 06bc24c..d34bb51 100644
--- a/src/pkg/net/newpollserver.go
+++ b/src/pkg/net/newpollserver.go
@@ -18,16 +18,16 @@
if s.pr, s.pw, err = os.Pipe(); err != nil {
return nil, err
}
- if err = syscall.SetNonblock(s.pr.Fd(), true); err != nil {
+ if err = syscall.SetNonblock(int(s.pr.Fd()), true); err != nil {
goto Errno
}
- if err = syscall.SetNonblock(s.pw.Fd(), true); err != nil {
+ if err = syscall.SetNonblock(int(s.pw.Fd()), true); err != nil {
goto Errno
}
if s.poll, err = newpollster(); err != nil {
goto Error
}
- if _, err = s.poll.AddFD(s.pr.Fd(), 'r', true); err != nil {
+ if _, err = s.poll.AddFD(int(s.pr.Fd()), 'r', true); err != nil {
s.poll.Close()
goto Error
}
diff --git a/src/pkg/net/sendfile_linux.go b/src/pkg/net/sendfile_linux.go
index 7f51519..ab3a381 100644
--- a/src/pkg/net/sendfile_linux.go
+++ b/src/pkg/net/sendfile_linux.go
@@ -42,7 +42,7 @@
defer c.decref()
dst := c.sysfd
- src := f.Fd()
+ src := int(f.Fd())
for remain > 0 {
n := maxSendfileSize
if int64(n) > remain {