]> Cypherpunks repositories - gostls13.git/commitdiff
net, os, syscall: delete os.EPLAN9
authorMikio Hara <mikioh.mikioh@gmail.com>
Fri, 17 Feb 2012 01:59:30 +0000 (10:59 +0900)
committerMikio Hara <mikioh.mikioh@gmail.com>
Fri, 17 Feb 2012 01:59:30 +0000 (10:59 +0900)
Also fixes plan9 cross-build.

R=rsc, r
CC=golang-dev
https://golang.org/cl/5675073

src/pkg/net/file_plan9.go
src/pkg/net/iprawsock_plan9.go
src/pkg/net/ipsock_plan9.go
src/pkg/net/lookup_plan9.go
src/pkg/net/tcpsock_plan9.go
src/pkg/net/udpsock_plan9.go
src/pkg/net/unixsock_plan9.go
src/pkg/os/exec/lp_plan9.go
src/pkg/os/signal/signal_stub.go [new file with mode: 0644]
src/pkg/syscall/syscall_plan9.go
src/pkg/syscall/zerrors_plan9_386.go

index 06d7cc89846fbca5c81e99cf5e9ce6600000abaa..04f7ee0401b7f86a7fe0e6b71b00705aa00dffea 100644 (file)
@@ -6,6 +6,7 @@ package net
 
 import (
        "os"
+       "syscall"
 )
 
 // FileConn returns a copy of the network connection corresponding to
@@ -13,7 +14,7 @@ import (
 // finished.  Closing c does not affect f, and closing f does not
 // affect c.
 func FileConn(f *os.File) (c Conn, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // FileListener returns a copy of the network listener corresponding
@@ -21,7 +22,7 @@ func FileConn(f *os.File) (c Conn, err error) {
 // when finished.  Closing c does not affect l, and closing l does not
 // affect c.
 func FileListener(f *os.File) (l Listener, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // FilePacketConn returns a copy of the packet network connection
@@ -29,5 +30,5 @@ func FileListener(f *os.File) (l Listener, err error) {
 // responsibility to close f when finished.  Closing c does not affect
 // f, and closing f does not affect c.
 func FilePacketConn(f *os.File) (c PacketConn, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
index 382a4402770c29ed561400885087114eb9e4429b..43719fc99cd0ccb252c8cb5d5a3314ce212ef9c9 100644 (file)
@@ -7,7 +7,7 @@
 package net
 
 import (
-       "os"
+       "syscall"
        "time"
 )
 
@@ -17,34 +17,34 @@ type IPConn bool
 
 // SetDeadline implements the Conn SetDeadline method.
 func (c *IPConn) SetDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetReadDeadline implements the Conn SetReadDeadline method.
 func (c *IPConn) SetReadDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetWriteDeadline implements the Conn SetWriteDeadline method.
 func (c *IPConn) SetWriteDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // Implementation of the Conn interface - see Conn for documentation.
 
 // Read implements the Conn Read method.
 func (c *IPConn) Read(b []byte) (int, error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // Write implements the Conn Write method.
 func (c *IPConn) Write(b []byte) (int, error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // Close closes the IP connection.
 func (c *IPConn) Close() error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // LocalAddr returns the local network address.
@@ -67,12 +67,12 @@ func (c *IPConn) RemoteAddr() Addr {
 // Timeout() == true after a fixed time limit; see SetDeadline and
 // SetReadDeadline.
 func (c *IPConn) ReadFromIP(b []byte) (int, *IPAddr, error) {
-       return 0, nil, os.EPLAN9
+       return 0, nil, syscall.EPLAN9
 }
 
 // ReadFrom implements the PacketConn ReadFrom method.
 func (c *IPConn) ReadFrom(b []byte) (int, Addr, error) {
-       return 0, nil, os.EPLAN9
+       return 0, nil, syscall.EPLAN9
 }
 
 // WriteToIP writes a IP packet to addr via c, copying the payload from b.
@@ -82,18 +82,18 @@ func (c *IPConn) ReadFrom(b []byte) (int, Addr, error) {
 // see SetDeadline and SetWriteDeadline.
 // On packet-oriented connections, write timeouts are rare.
 func (c *IPConn) WriteToIP(b []byte, addr *IPAddr) (int, error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // WriteTo implements the PacketConn WriteTo method.
 func (c *IPConn) WriteTo(b []byte, addr Addr) (int, error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // DialIP connects to the remote address raddr on the network protocol netProto,
 // which must be "ip", "ip4", or "ip6" followed by a colon and a protocol number or name.
 func DialIP(netProto string, laddr, raddr *IPAddr) (*IPConn, error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // ListenIP listens for incoming IP packets addressed to the
@@ -101,5 +101,5 @@ func DialIP(netProto string, laddr, raddr *IPAddr) (*IPConn, error) {
 // and WriteTo methods can be used to receive and send IP
 // packets with per-packet addressing.
 func ListenIP(netProto string, laddr *IPAddr) (*IPConn, error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
index 385da036d4912cb3723f87326cac928ef39b49e9..eab0bf3e899b5e291a9931884278ff80af25d787 100644 (file)
@@ -10,6 +10,7 @@ import (
        "errors"
        "io"
        "os"
+       "syscall"
        "time"
 )
 
@@ -148,17 +149,17 @@ func (c *plan9Conn) RemoteAddr() Addr {
 
 // SetDeadline implements the Conn SetDeadline method.
 func (c *plan9Conn) SetDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetReadDeadline implements the Conn SetReadDeadline method.
 func (c *plan9Conn) SetReadDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetWriteDeadline implements the Conn SetWriteDeadline method.
 func (c *plan9Conn) SetWriteDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 func startPlan9(net string, addr Addr) (ctl *os.File, dest, proto, name string, err error) {
index c0bb9225a7dc862502be3ff00674e431807c86bb..b08a9fb98e042a50a0af31a1f714eec496bad0fa 100644 (file)
@@ -7,6 +7,7 @@ package net
 import (
        "errors"
        "os"
+       "syscall"
 )
 
 func query(filename, query string, bufSize int) (res []string, err error) {
@@ -71,7 +72,7 @@ func queryDNS(addr string, typ string) (res []string, err error) {
 
 func lookupProtocol(name string) (proto int, err error) {
        // TODO: Implement this
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 func lookupHost(host string) (addrs []string, err error) {
index be89e537f3c01081dfb78b08780ede623ad48880..35f56966eae66336bcd84d01735cf0906d60626b 100644 (file)
@@ -7,7 +7,7 @@
 package net
 
 import (
-       "os"
+       "syscall"
        "time"
 )
 
@@ -19,17 +19,17 @@ type TCPConn struct {
 
 // SetDeadline implements the Conn SetDeadline method.
 func (c *TCPConn) SetDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetReadDeadline implements the Conn SetReadDeadline method.
 func (c *TCPConn) SetReadDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetWriteDeadline implements the Conn SetWriteDeadline method.
 func (c *TCPConn) SetWriteDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // CloseRead shuts down the reading side of the TCP connection.
@@ -38,7 +38,7 @@ func (c *TCPConn) CloseRead() error {
        if !c.ok() {
                return syscall.EINVAL
        }
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // CloseWrite shuts down the writing side of the TCP connection.
@@ -47,7 +47,7 @@ func (c *TCPConn) CloseWrite() error {
        if !c.ok() {
                return syscall.EINVAL
        }
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // DialTCP connects to the remote address raddr on the network net,
index d1f83d3848b58770ff2290bab23dfe6ab72ca016..4f298a42f878737bbfc0b6d4c694aeb08cf144fd 100644 (file)
@@ -9,6 +9,7 @@ package net
 import (
        "errors"
        "os"
+       "syscall"
        "time"
 )
 
@@ -20,17 +21,17 @@ type UDPConn struct {
 
 // SetDeadline implements the Conn SetDeadline method.
 func (c *UDPConn) SetDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetReadDeadline implements the Conn SetReadDeadline method.
 func (c *UDPConn) SetReadDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetWriteDeadline implements the Conn SetWriteDeadline method.
 func (c *UDPConn) SetWriteDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // UDP-specific methods.
@@ -191,5 +192,5 @@ func ListenUDP(net string, laddr *UDPAddr) (c *UDPConn, err error) {
 // the interface to join.  ListenMulticastUDP uses default
 // multicast interface if ifi is nil.
 func ListenMulticastUDP(net string, ifi *Interface, gaddr *UDPAddr) (*UDPConn, error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
index 1d9d7578f4fff0ff3692dd5164831775258f4562..7b4ae6bd11619e673c49337996a8c643d4946531 100644 (file)
@@ -7,7 +7,7 @@
 package net
 
 import (
-       "os"
+       "syscall"
        "time"
 )
 
@@ -19,17 +19,17 @@ type UnixConn bool
 
 // Read implements the Conn Read method.
 func (c *UnixConn) Read(b []byte) (n int, err error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // Write implements the Conn Write method.
 func (c *UnixConn) Write(b []byte) (n int, err error) {
-       return 0, os.EPLAN9
+       return 0, syscall.EPLAN9
 }
 
 // Close closes the Unix domain connection.
 func (c *UnixConn) Close() error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // LocalAddr returns the local network address, a *UnixAddr.
@@ -47,28 +47,28 @@ func (c *UnixConn) RemoteAddr() Addr {
 
 // SetDeadline implements the Conn SetDeadline method.
 func (c *UnixConn) SetDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetReadDeadline implements the Conn SetReadDeadline method.
 func (c *UnixConn) SetReadDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // SetWriteDeadline implements the Conn SetWriteDeadline method.
 func (c *UnixConn) SetWriteDeadline(t time.Time) error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // ReadFrom implements the PacketConn ReadFrom method.
 func (c *UnixConn) ReadFrom(b []byte) (n int, addr Addr, err error) {
-       err = os.EPLAN9
+       err = syscall.EPLAN9
        return
 }
 
 // WriteTo implements the PacketConn WriteTo method.
 func (c *UnixConn) WriteTo(b []byte, addr Addr) (n int, err error) {
-       err = os.EPLAN9
+       err = syscall.EPLAN9
        return
 }
 
@@ -76,7 +76,7 @@ func (c *UnixConn) WriteTo(b []byte, addr Addr) (n int, err error) {
 // which must be "unix" or "unixgram".  If laddr is not nil, it is used
 // as the local address for the connection.
 func DialUnix(net string, laddr, raddr *UnixAddr) (c *UnixConn, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // UnixListener is a Unix domain socket listener.
@@ -87,19 +87,19 @@ type UnixListener bool
 // ListenUnix announces on the Unix domain socket laddr and returns a Unix listener.
 // Net must be "unix" (stream sockets).
 func ListenUnix(net string, laddr *UnixAddr) (l *UnixListener, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // Accept implements the Accept method in the Listener interface;
 // it waits for the next call and returns a generic Conn.
 func (l *UnixListener) Accept() (c Conn, err error) {
-       return nil, os.EPLAN9
+       return nil, syscall.EPLAN9
 }
 
 // Close stops listening on the Unix address.
 // Already accepted connections are not closed.
 func (l *UnixListener) Close() error {
-       return os.EPLAN9
+       return syscall.EPLAN9
 }
 
 // Addr returns the listener's network address.
index d88cd0df959a0b2a024053c52aef231c4d3bab1e..0e229e03ee7045d0c20cab18db97946bdc9dda8d 100644 (file)
@@ -8,6 +8,7 @@ import (
        "errors"
        "os"
        "strings"
+       "syscall"
 )
 
 // ErrNotFound is the error resulting if a path search failed to find an executable file.
@@ -21,7 +22,7 @@ func findExecutable(file string) error {
        if m := d.Mode(); !m.IsDir() && m&0111 != 0 {
                return nil
        }
-       return os.EPERM
+       return syscall.EPERM
 }
 
 // LookPath searches for an executable binary named file
diff --git a/src/pkg/os/signal/signal_stub.go b/src/pkg/os/signal/signal_stub.go
new file mode 100644 (file)
index 0000000..fc227cf
--- /dev/null
@@ -0,0 +1,11 @@
+// Copyright 2012 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build plan9
+
+package signal
+
+import "os"
+
+func enableSignal(sig os.Signal) {}
index 0bbb7ece99fe7e33755a8228c086db1414af828d..122a96f26d62a3e451f4dd26dad75ae484c73cf2 100644 (file)
@@ -335,6 +335,14 @@ func Getgroups() (gids []int, err error) {
        return make([]int, 0), nil
 }
 
+type Signal int
+
+func (s Signal) Signal() {}
+
+func (s Signal) String() string {
+       return ""
+}
+
 //sys  Dup(oldfd int, newfd int) (fd int, err error)
 //sys  Open(path string, mode int) (fd int, err error)
 //sys  Create(path string, mode int, perm uint32) (fd int, err error)
index 694fd690cfbbf19e5fb498d5fed6c0511f447c15..e7c993c0f1a9531ccbc32d78fab50d814652eabf 100644 (file)
@@ -4,6 +4,8 @@
 
 package syscall
 
+import "errors"
+
 // Constants
 const (
        // Invented values to support what package os expects.
@@ -22,6 +24,19 @@ const (
        S_IFREG  = 0x8000
        S_IFLNK  = 0xa000
        S_IFSOCK = 0xc000
+
+       SIGINT  = Signal(0x2)
+       SIGKILL = Signal(0x9)
 )
 
-// Error table
+// Errors
+var (
+       EINVAL       = errors.New("bad arg in system call")
+       ENOTDIR      = errors.New("not a directory")
+       ENOENT       = errors.New("file does not exist")
+       EEXIST       = errors.New("file already exists")
+       EIO          = errors.New("i/o error")
+       ENAMETOOLONG = errors.New("file name too long")
+       EPERM        = errors.New("permission denied")
+       EPLAN9       = errors.New("not supported by plan 9")
+)