changeset 256 | 6d9efbef00a9 |
parent 251 | 1c52a0eeb952 |
child 260 | 445e01aede7e |
255:4f153a23adab | 256:6d9efbef00a9 |
---|---|
1 // Copyright 2016 The Go Authors. All rights reserved. |
1 // Copyright 2016 The Go Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style |
2 // Use of this source code is governed by a BSD-style |
3 // license that can be found in the LICENSE file. |
3 // license that can be found in the LICENSE file. |
4 |
4 |
5 //go:build linux && (mips || mipsle) |
|
5 // +build linux |
6 // +build linux |
6 // +build mips mipsle |
7 // +build mips mipsle |
7 |
8 |
8 package unix |
9 package unix |
9 |
10 |
12 "unsafe" |
13 "unsafe" |
13 ) |
14 ) |
14 |
15 |
15 func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) |
16 func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) |
16 |
17 |
17 //sys Dup2(oldfd int, newfd int) (err error) |
18 //sys dup2(oldfd int, newfd int) (err error) |
18 //sysnb EpollCreate(size int) (fd int, err error) |
19 //sysnb EpollCreate(size int) (fd int, err error) |
19 //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) |
20 //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) |
20 //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 |
21 //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 |
21 //sys Fchown(fd int, uid int, gid int) (err error) |
22 //sys Fchown(fd int, uid int, gid int) (err error) |
22 //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64 |
23 //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64 |
110 |
111 |
111 func setTimeval(sec, usec int64) Timeval { |
112 func setTimeval(sec, usec int64) Timeval { |
112 return Timeval{Sec: int32(sec), Usec: int32(usec)} |
113 return Timeval{Sec: int32(sec), Usec: int32(usec)} |
113 } |
114 } |
114 |
115 |
115 //sysnb pipe2(p *[2]_C_int, flags int) (err error) |
116 //sysnb pipe2(p *[2]_C_int, flags int) (err error) |
116 |
117 |
117 func Pipe2(p []int, flags int) (err error) { |
118 func Pipe2(p []int, flags int) (err error) { |
118 if len(p) != 2 { |
119 if len(p) != 2 { |
119 return EINVAL |
120 return EINVAL |
120 } |
121 } |
123 p[0] = int(pp[0]) |
124 p[0] = int(pp[0]) |
124 p[1] = int(pp[1]) |
125 p[1] = int(pp[1]) |
125 return |
126 return |
126 } |
127 } |
127 |
128 |
128 //sysnb pipe() (p1 int, p2 int, err error) |
129 //sysnb pipe() (p1 int, p2 int, err error) |
129 |
130 |
130 func Pipe(p []int) (err error) { |
131 func Pipe(p []int) (err error) { |
131 if len(p) != 2 { |
132 if len(p) != 2 { |
132 return EINVAL |
133 return EINVAL |
133 } |
134 } |
151 type rlimit32 struct { |
152 type rlimit32 struct { |
152 Cur uint32 |
153 Cur uint32 |
153 Max uint32 |
154 Max uint32 |
154 } |
155 } |
155 |
156 |
156 //sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT |
157 //sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT |
157 |
158 |
158 func Getrlimit(resource int, rlim *Rlimit) (err error) { |
159 func Getrlimit(resource int, rlim *Rlimit) (err error) { |
159 err = prlimit(0, resource, nil, rlim) |
160 err = prlimit(0, resource, nil, rlim) |
160 if err != ENOSYS { |
161 if err != ENOSYS { |
161 return err |
162 return err |
179 rlim.Max = uint64(rl.Max) |
180 rlim.Max = uint64(rl.Max) |
180 } |
181 } |
181 return |
182 return |
182 } |
183 } |
183 |
184 |
184 //sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT |
185 //sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT |
185 |
186 |
186 func Setrlimit(resource int, rlim *Rlimit) (err error) { |
187 func Setrlimit(resource int, rlim *Rlimit) (err error) { |
187 err = prlimit(0, resource, rlim, nil) |
188 err = prlimit(0, resource, rlim, nil) |
188 if err != ENOSYS { |
189 if err != ENOSYS { |
189 return err |
190 return err |
226 |
227 |
227 func (cmsg *Cmsghdr) SetLen(length int) { |
228 func (cmsg *Cmsghdr) SetLen(length int) { |
228 cmsg.Len = uint32(length) |
229 cmsg.Len = uint32(length) |
229 } |
230 } |
230 |
231 |
232 func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { |
|
233 rsa.Service_name_len = uint32(length) |
|
234 } |
|
235 |
|
231 //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) |
236 //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) |
232 |
237 |
233 func Poll(fds []PollFd, timeout int) (n int, err error) { |
238 func Poll(fds []PollFd, timeout int) (n int, err error) { |
234 if len(fds) == 0 { |
239 if len(fds) == 0 { |
235 return poll(nil, 0, timeout) |
240 return poll(nil, 0, timeout) |