|
|
@@ -43,6 +43,23 @@ func nametomib(name string) (mib []_C_int, err error) {
|
|
|
return nil, EINVAL
|
|
|
}
|
|
|
|
|
|
+func SysctlUvmexp(name string) (*Uvmexp, error) {
|
|
|
+ mib, err := sysctlmib(name)
|
|
|
+ if err != nil {
|
|
|
+ return nil, err
|
|
|
+ }
|
|
|
+
|
|
|
+ n := uintptr(SizeofUvmexp)
|
|
|
+ var u Uvmexp
|
|
|
+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&u)), &n, nil, 0); err != nil {
|
|
|
+ return nil, err
|
|
|
+ }
|
|
|
+ if n != SizeofUvmexp {
|
|
|
+ return nil, EIO
|
|
|
+ }
|
|
|
+ return &u, nil
|
|
|
+}
|
|
|
+
|
|
|
//sysnb pipe(p *[2]_C_int) (err error)
|
|
|
func Pipe(p []int) (err error) {
|
|
|
if len(p) != 2 {
|