cubefs
38 строк · 787.0 Байт
1// Copyright 2018 Tobias Klauser. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5//go:build darwin || dragonfly || freebsd || netbsd || openbsd
6// +build darwin dragonfly freebsd netbsd openbsd
7
8package sysconf
9
10import "golang.org/x/sys/unix"
11
12func pathconf(path string, name int) int64 {
13if val, err := unix.Pathconf(path, name); err == nil {
14return int64(val)
15}
16return -1
17}
18
19func sysctl32(name string) int64 {
20if val, err := unix.SysctlUint32(name); err == nil {
21return int64(val)
22}
23return -1
24}
25
26func sysctl64(name string) int64 {
27if val, err := unix.SysctlUint64(name); err == nil {
28return int64(val)
29}
30return -1
31}
32
33func yesno(val int64) int64 {
34if val == 0 {
35return -1
36}
37return val
38}
39