diff options
author | Russ Cox <rsc@golang.org> | 2014-09-08 00:08:51 -0400 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-09-08 00:08:51 -0400 |
commit | 8528da672cc093d4dd06732819abc1f7b6b5a46e (patch) | |
tree | 334be80d4a4c85b77db6f6fdb67cbf0528cba5f5 /src/runtime/os_solaris.h | |
parent | 73bcb69f272cbf34ddcc9daa56427a8683b5a95d (diff) | |
download | go-8528da672cc093d4dd06732819abc1f7b6b5a46e.tar.gz |
build: move package sources from src/pkg to src
Preparation was in CL 134570043.
This CL contains only the effect of 'hg mv src/pkg/* src'.
For more about the move, see golang.org/s/go14nopkg.
Diffstat (limited to 'src/runtime/os_solaris.h')
-rw-r--r-- | src/runtime/os_solaris.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/runtime/os_solaris.h b/src/runtime/os_solaris.h new file mode 100644 index 000000000..3d9e1a240 --- /dev/null +++ b/src/runtime/os_solaris.h @@ -0,0 +1,55 @@ +// Copyright 2014 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. + + +typedef uintptr kevent_udata; + +struct sigaction; + +void runtime·sigpanic(void); + +void runtime·setitimer(int32, Itimerval*, Itimerval*); +void runtime·sigaction(int32, struct SigactionT*, struct SigactionT*); +void runtime·sigaltstack(SigaltstackT*, SigaltstackT*); +void runtime·sigprocmask(int32, Sigset*, Sigset*); +void runtime·unblocksignals(void); +int32 runtime·sysctl(uint32*, uint32, byte*, uintptr*, byte*, uintptr); + + +void runtime·raisesigpipe(void); +void runtime·setsig(int32, void(*)(int32, Siginfo*, void*, G*), bool); +void runtime·sighandler(int32 sig, Siginfo *info, void *context, G *gp); +void runtime·sigpanic(void); + +enum { + SS_DISABLE = 2, + SIG_BLOCK = 1, + SIG_UNBLOCK = 2, + SIG_SETMASK = 3, + NSIG = 73, /* number of signals in runtime·SigTab array */ + SI_USER = 0, + _UC_SIGMASK = 0x01, + _UC_CPU = 0x04, + RLIMIT_AS = 10, +}; + +typedef struct Rlimit Rlimit; +struct Rlimit { + int64 rlim_cur; + int64 rlim_max; +}; +int32 runtime·getrlimit(int32, Rlimit*); + +// Call an external library function described by {fn, a0, ..., an}, with +// SysV conventions, switching to os stack during the call, if necessary. +uintptr runtime·sysvicall0(uintptr fn); +uintptr runtime·sysvicall1(uintptr fn, uintptr a1); +uintptr runtime·sysvicall2(uintptr fn, uintptr a1, uintptr a2); +uintptr runtime·sysvicall3(uintptr fn, uintptr a1, uintptr a2, uintptr a3); +uintptr runtime·sysvicall4(uintptr fn, uintptr a1, uintptr a2, uintptr a3, uintptr a4); +uintptr runtime·sysvicall5(uintptr fn, uintptr a1, uintptr a2, uintptr a3, uintptr a4, uintptr a5); +uintptr runtime·sysvicall6(uintptr fn, uintptr a1, uintptr a2, uintptr a3, uintptr a4, uintptr a5, uintptr a6); +void runtime·asmsysvicall6(void *c); + +void runtime·miniterrno(void *fn); |