pax_global_header00006660000000000000000000000064141131206240014504gustar00rootroot0000000000000052 comment=18f67506ef17458385cd85f6f7678623087ba043 go-sysconf-0.3.9/000077500000000000000000000000001411312062400136045ustar00rootroot00000000000000go-sysconf-0.3.9/.cirrus.yml000066400000000000000000000010731411312062400157150ustar00rootroot00000000000000env: CIRRUS_CLONE_DEPTH: 1 freebsd_12_task: freebsd_instance: image_family: freebsd-12-2 install_script: | pkg install -y git go GOBIN=$PWD/bin go get golang.org/dl/go1.17 bin/go1.17 download build_script: bin/go1.17 build -v ./... test_script: bin/go1.17 test -race ./... freebsd_13_task: freebsd_instance: image_family: freebsd-13-0 install_script: | pkg install -y git go GOBIN=$PWD/bin go get golang.org/dl/go1.17 bin/go1.17 download build_script: bin/go1.17 build -v ./... test_script: bin/go1.17 test -race ./... go-sysconf-0.3.9/.github/000077500000000000000000000000001411312062400151445ustar00rootroot00000000000000go-sysconf-0.3.9/.github/workflows/000077500000000000000000000000001411312062400172015ustar00rootroot00000000000000go-sysconf-0.3.9/.github/workflows/static-analysis.yml000066400000000000000000000010631411312062400230340ustar00rootroot00000000000000name: Static Analysis on: push: branches: - master pull_request: branches: - master jobs: check: runs-on: ubuntu-latest steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: '1.16' - name: Check out code uses: actions/checkout@v2 - name: Install staticcheck run: go install honnef.co/go/tools/cmd/staticcheck@latest - name: Run staticcheck run: | staticcheck -version staticcheck -- ./... - name: Run go vet run: go vet ./... go-sysconf-0.3.9/.github/workflows/test.yml000066400000000000000000000023101411312062400206770ustar00rootroot00000000000000name: Tests on: push: branches: - master pull_request: branches: - master jobs: build-and-test: strategy: matrix: go-version: [1.15, 1.16, 1.17] os: [ubuntu-16.04, ubuntu-18.04, ubuntu-20.04, macos-10.15, macos-11] runs-on: ${{ matrix.os }} steps: - name: Install Go uses: actions/setup-go@v2 with: go-version: ${{ matrix.go-version }} - name: Check out code uses: actions/checkout@v2 - name: Check formatting if: ${{ matrix.go-version == '1.17' && matrix.os == 'ubuntu-20.04' }} run: diff -u <(echo -n) <(gofmt -d .) - name: Check Go modules if: ${{ matrix.go-version == '1.17' && matrix.os == 'ubuntu-20.04' }} run: | go mod tidy git diff --exit-code - name: Build (cross-compile) if: matrix.os == 'ubuntu-20.04' run: | GOOS=darwin go build ./... GOOS=dragonfly go build ./... GOOS=freebsd go build ./... GOOS=linux go build ./... GOOS=netbsd go build ./... GOOS=openbsd go build ./... GOOS=solaris go build ./... GOOS=windows go build ./... - name: Test (native) run: go test -v ./... go-sysconf-0.3.9/.gitignore000066400000000000000000000000061411312062400155700ustar00rootroot00000000000000_obj/ go-sysconf-0.3.9/LICENSE000066400000000000000000000027571411312062400146240ustar00rootroot00000000000000BSD 3-Clause License Copyright (c) 2018-2021, Tobias Klauser All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. go-sysconf-0.3.9/README.md000066400000000000000000000034561411312062400150730ustar00rootroot00000000000000# go-sysconf [![Go Reference](https://pkg.go.dev/badge/github.com/tklauser/go-sysconf.svg)](https://pkg.go.dev/github.com/tklauser/go-sysconf) [![GitHub Action Status](https://github.com/tklauser/go-sysconf/workflows/Tests/badge.svg)](https://github.com/tklauser/go-sysconf/actions?query=workflow%3ATests) [![Go Report Card](https://goreportcard.com/badge/github.com/tklauser/go-sysconf)](https://goreportcard.com/report/github.com/tklauser/go-sysconf) `sysconf` for Go, without using cgo or external binaries (e.g. getconf). Supported operating systems: Linux, macOS, DragonflyBSD, FreeBSD, NetBSD, OpenBSD, Solaris/Illumos. All POSIX.1 and POSIX.2 variables are supported, see [References](#references) for a complete list. Additionally, the following non-standard variables are supported on some operating systems: | Variable | Supported on | |---|---| | `SC_PHYS_PAGES` | Linux, macOS, FreeBSD, NetBSD, OpenBSD, Solaris/Illumos | | `SC_AVPHYS_PAGES` | Linux, OpenBSD, Solaris/Illumos | | `SC_NPROCESSORS_CONF` | Linux, macOS, FreeBSD, NetBSD, OpenBSD, Solaris/Illumos | | `SC_NPROCESSORS_ONLN` | Linux, macOS, FreeBSD, NetBSD, OpenBSD, Solaris/Illumos | | `SC_UIO_MAXIOV` | Linux | ## Usage ```Go package main import ( "fmt" "github.com/tklauser/go-sysconf" ) func main() { // get clock ticks, this will return the same as C.sysconf(C._SC_CLK_TCK) clktck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK) if err == nil { fmt.Printf("SC_CLK_TCK: %v\n", clktck) } } ``` ## References * [POSIX documenation for `sysconf`](http://pubs.opengroup.org/onlinepubs/9699919799/functions/sysconf.html) * [Linux manpage for `sysconf(3)`](http://man7.org/linux/man-pages/man3/sysconf.3.html) * [glibc constants for `sysconf` parameters](https://www.gnu.org/software/libc/manual/html_node/Constants-for-Sysconf.html) go-sysconf-0.3.9/cgotest/000077500000000000000000000000001411312062400152545ustar00rootroot00000000000000go-sysconf-0.3.9/cgotest/sysconf_cgotest.go000066400000000000000000000030101411312062400210110ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris // +build darwin dragonfly freebsd linux netbsd openbsd solaris package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) type testCase struct { goVar int cVar C.int name string } func testSysconfGoCgo(t *testing.T, tc testCase) { t.Helper() if tc.goVar != int(tc.cVar) { t.Errorf("SC_* parameter value for %v is %v, want %v", tc.name, tc.goVar, tc.cVar) } goVal, goErr := sysconf.Sysconf(tc.goVar) if goErr != nil { t.Fatalf("Sysconf(%s/%d): %v", tc.name, tc.goVar, goErr) } t.Logf("%s = %v", tc.name, goVal) cVal, cErr := C.sysconf(tc.cVar) if cErr != nil { t.Fatalf("C.sysconf(%s/%d): %v", tc.name, tc.cVar, cErr) } if goVal != int64(cVal) { t.Errorf("Sysconf(%v/%d) returned %v, want %v", tc.name, tc.goVar, goVal, cVal) } } func testSysconfGoCgoInvalid(t *testing.T, tc testCase) { t.Helper() if tc.goVar != int(tc.cVar) { t.Errorf("SC_* parameter value for %v is %v, want %v", tc.name, tc.goVar, tc.cVar) } _, goErr := sysconf.Sysconf(tc.goVar) if goErr == nil { t.Fatalf("Sysconf(%s/%d) unexpectedly returned without error", tc.name, tc.goVar) } _, cErr := C.sysconf(tc.cVar) if cErr == nil { t.Fatalf("C.sysconf(%s/%d) unexpectedly returned without error", tc.name, tc.goVar) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_darwin.go000066400000000000000000000231061411312062400223650ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "strconv" "strings" "testing" "github.com/tklauser/go-sysconf" "golang.org/x/sys/unix" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_RTSIG_MAX, C._SC_RTSIG_MAX, "RTSIG_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SS_REPL_MAX, C._SC_SS_REPL_MAX, "_POSIX_SS_REPL_MAX"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_EVENT_NAME_MAX, C._SC_TRACE_EVENT_NAME_MAX, "_POSIX_TRACE_EVENT_NAME_MAX"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_TRACE_NAME_MAX, C._SC_TRACE_NAME_MAX, "_POSIX_TRACE_NAME_MAX"}, {sysconf.SC_TRACE_SYS_MAX, C._SC_TRACE_SYS_MAX, "_POSIX_TRACE_SYS_MAX"}, {sysconf.SC_TRACE_USER_EVENT_MAX, C._SC_TRACE_USER_EVENT_MAX, "_POSIX_TRACE_USER_EVENT_MAX"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, {sysconf.SC_XOPEN_CRYPT, C._SC_XOPEN_CRYPT, "_XOPEN_CRYPT"}, {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, {sysconf.SC_XOPEN_XCU_VERSION, C._SC_XOPEN_XCU_VERSION, "_XOPEN_XCU_VERSION"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } testMacOSVersionDeps(t) } func testMacOSVersionDeps(t *testing.T) { var u unix.Utsname err := unix.Uname(&u) if err != nil { t.Fatalf("Uname: %v", err) } rel := string(u.Release[:]) t.Logf("macOS release: %s", rel) ver := strings.Split(rel, ".") maj, _ := strconv.Atoi(ver[0]) // _POSIX_V6_ILP32_OFFBIG was fixed in macOS 10.15 (Catalina) if maj >= 19 { v6Ilp32Offbig := testCase{sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"} testSysconfGoCgo(t, v6Ilp32Offbig) } else { t.Skip("skipping _POSIX_V6_ILP32_OFFBIG on macOS < 10.15") } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_dragonfly.go000066400000000000000000000213751411312062400230740ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_RTSIG_MAX, C._SC_RTSIG_MAX, "RTSIG_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, /* {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, */ {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, {sysconf.SC_XOPEN_CRYPT, C._SC_XOPEN_CRYPT, "_XOPEN_CRYPT"}, {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } testCasesInvalid := []testCase{ {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, {sysconf.SC_XOPEN_XCU_VERSION, C._SC_XOPEN_XCU_VERSION, "_XOPEN_XCU_VERSION"}, } for _, tc := range testCasesInvalid { testSysconfGoCgoInvalid(t, tc) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_freebsd.go000066400000000000000000000213751411312062400225210ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_RTSIG_MAX, C._SC_RTSIG_MAX, "RTSIG_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, /* {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, */ {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, {sysconf.SC_XOPEN_CRYPT, C._SC_XOPEN_CRYPT, "_XOPEN_CRYPT"}, {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } testCasesInvalid := []testCase{ {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, {sysconf.SC_XOPEN_XCU_VERSION, C._SC_XOPEN_XCU_VERSION, "_XOPEN_XCU_VERSION"}, } for _, tc := range testCasesInvalid { testSysconfGoCgoInvalid(t, tc) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_linux.go000066400000000000000000000260451411312062400222450ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include #include #include */ import "C" import ( "strconv" "strings" "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_RTSIG_MAX, C._SC_RTSIG_MAX, "RTSIG_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_EVENT_NAME_MAX, C._SC_TRACE_EVENT_NAME_MAX, "_POSIX_TRACE_EVENT_NAME_MAX"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_TRACE_NAME_MAX, C._SC_TRACE_NAME_MAX, "_POSIX_TRACE_NAME_MAX"}, {sysconf.SC_TRACE_SYS_MAX, C._SC_TRACE_SYS_MAX, "_POSIX_TRACE_SYS_MAX"}, {sysconf.SC_TRACE_USER_EVENT_MAX, C._SC_TRACE_USER_EVENT_MAX, "_POSIX_TRACE_USER_EVENT_MAX"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, {sysconf.SC_V7_ILP32_OFF32, C._SC_V7_ILP32_OFF32, "_POSIX_V7_ILP32_OFF32"}, {sysconf.SC_V7_ILP32_OFFBIG, C._SC_V7_ILP32_OFFBIG, "_POSIX_V7_ILP32_OFFBIG"}, {sysconf.SC_V7_LP64_OFF64, C._SC_V7_LP64_OFF64, "_POSIX_V7_LP64_OFF64"}, {sysconf.SC_V7_LPBIG_OFFBIG, C._SC_V7_LPBIG_OFFBIG, "_POSIX_V7_LPBIG_OFFBIG"}, {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, // glibc version < 2.22 does not define _POSIX2_C_VERSION // despite supporting the standard, see glibc bug BZ 438. Test it // in testPosix2CVersion below. // {sysconf.SC_2_C_VERSION, C._SC_2_C_VERSION, "_POSIX2_C_VERSION"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_FORT_DEV, C._SC_2_FORT_DEV, "_POSIX2_FORT_DEV"}, {sysconf.SC_2_FORT_RUN, C._SC_2_FORT_RUN, "_POSIX2_FORT_RUN"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, // _XOPEN_CRYPT was removed in glibc 2.28, don't test it {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, {sysconf.SC_XOPEN_XCU_VERSION, C._SC_XOPEN_XCU_VERSION, "_XOPEN_XCU_VERSION"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, {sysconf.SC_UIO_MAXIOV, C._SC_UIO_MAXIOV, "UIO_MAXIOV"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } // These _SC_* are defined but no longer supported by sysconf(3) testCasesInvalid := []testCase{ {sysconf.SC_SS_REPL_MAX, C._SC_SS_REPL_MAX, "_POSIX_SS_REPL_MAX"}, {sysconf.SC_THREAD_ROBUST_PRIO_INHERIT, C._SC_THREAD_ROBUST_PRIO_INHERIT, "_POSIX_THREAD_ROBUST_PRIO_INHERIT"}, {sysconf.SC_THREAD_ROBUST_PRIO_PROTECT, C._SC_THREAD_ROBUST_PRIO_PROTECT, "_POSIX_THREAD_ROBUST_PRIO_PROTECT"}, } for _, tc := range testCasesInvalid { testSysconfGoCgoInvalid(t, tc) } testGlibcVersionDeps(t) } func testGlibcVersionDeps(t *testing.T) { glibcVer := C.GoString(C.gnu_get_libc_version()) majMin := strings.Split(glibcVer, ".") if len(majMin) < 2 { t.Fatalf("unexpected glibc version: %v\n", glibcVer) } t.Logf("glibc version: %v\n", glibcVer) maj, _ := strconv.Atoi(majMin[0]) min, _ := strconv.Atoi(majMin[1]) // _POSIX2_C_VERSION was fixed in glibc 2.22, see glibc commit // 4e5f9259f352 ("Restore _POSIX2_C_VERSION definition (bug 438).") if maj == 2 && min >= 22 { cVersion := testCase{sysconf.SC_2_C_VERSION, C._SC_2_C_VERSION, "_POSIX2_C_VERSION"} testSysconfGoCgo(t, cVersion) } else { t.Skipf("skipping _POSIX2_C_VERSION test on glibc %d.%d (< 2.22)", maj, min) } // _TZNAME_MAX was changed in glibc 2.26, see glibc commit // 8492c4dd699e ("timezone: Remove TZNAME_MAX limit from sysconf [BZ #15576]") if maj == 2 && min >= 26 { tzname := testCase{sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"} testSysconfGoCgo(t, tzname) } else { t.Skipf("skipping _TZNAME_MAX test on glibc %d.%d (< 2.26)", maj, min) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_netbsd.go000066400000000000000000000070011411312062400223540ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []struct { goVar int cVar C.int name string }{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "MONOTONIC_CLOCK"}, {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_openbsd.go000066400000000000000000000225061411312062400225360ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_DESTRUCTOR_ITERATIONS, C._SC_THREAD_DESTRUCTOR_ITERATIONS, "PTHREAD_DESTRUCTOR_ITERATIONS"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_TZNAME_MAX, C._SC_TZNAME_MAX, "TZNAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_EVENT_NAME_MAX, C._SC_TRACE_EVENT_NAME_MAX, "_POSIX_TRACE_EVENT_NAME_MAX"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, {sysconf.SC_V7_ILP32_OFF32, C._SC_V7_ILP32_OFF32, "_POSIX_V7_ILP32_OFF32"}, {sysconf.SC_V7_ILP32_OFFBIG, C._SC_V7_ILP32_OFFBIG, "_POSIX_V7_ILP32_OFFBIG"}, {sysconf.SC_V7_LP64_OFF64, C._SC_V7_LP64_OFF64, "_POSIX_V7_LP64_OFF64"}, {sysconf.SC_V7_LPBIG_OFFBIG, C._SC_V7_LPBIG_OFFBIG, "_POSIX_V7_LPBIG_OFFBIG"}, {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_FORT_DEV, C._SC_2_FORT_DEV, "_POSIX2_FORT_DEV"}, {sysconf.SC_2_FORT_RUN, C._SC_2_FORT_RUN, "_POSIX2_FORT_RUN"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, {sysconf.SC_XOPEN_CRYPT, C._SC_XOPEN_CRYPT, "_XOPEN_CRYPT"}, {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, {sysconf.SC_XOPEN_UUCP, C._SC_XOPEN_UUCP, "_XOPEN_UUCP"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, // AV_PHYS_PAGES might change between calling Go and C version // of sysconf. Don't test it for now. {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } testCasesInvalid := []testCase{ {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_SS_REPL_MAX, C._SC_SS_REPL_MAX, "_POSIX_SS_REPL_MAX"}, {sysconf.SC_TRACE_NAME_MAX, C._SC_TRACE_NAME_MAX, "_POSIX_TRACE_NAME_MAX"}, {sysconf.SC_TRACE_SYS_MAX, C._SC_TRACE_SYS_MAX, "_POSIX_TRACE_SYS_MAX"}, {sysconf.SC_TRACE_USER_EVENT_MAX, C._SC_TRACE_USER_EVENT_MAX, "_POSIX_TRACE_USER_EVENT_MAX"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, } for _, tc := range testCasesInvalid { testSysconfGoCgoInvalid(t, tc) } } go-sysconf-0.3.9/cgotest/sysconf_cgotest_solaris.go000066400000000000000000000214301411312062400225530ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest /* #include */ import "C" import ( "testing" "github.com/tklauser/go-sysconf" ) func testSysconfCgoMatch(t *testing.T) { testCases := []testCase{ {sysconf.SC_AIO_LISTIO_MAX, C._SC_AIO_LISTIO_MAX, "AIO_LISTIO_MAX"}, {sysconf.SC_AIO_MAX, C._SC_AIO_MAX, "AIO_MAX"}, {sysconf.SC_AIO_PRIO_DELTA_MAX, C._SC_AIO_PRIO_DELTA_MAX, "AIO_PRIO_DELTA_MAX"}, {sysconf.SC_ARG_MAX, C._SC_ARG_MAX, "ARG_MAX"}, {sysconf.SC_ATEXIT_MAX, C._SC_ATEXIT_MAX, "ATEXIT_MAX"}, {sysconf.SC_BC_BASE_MAX, C._SC_BC_BASE_MAX, "BC_BASE_MAX"}, {sysconf.SC_BC_DIM_MAX, C._SC_BC_DIM_MAX, "BC_DIM_MAX"}, {sysconf.SC_BC_SCALE_MAX, C._SC_BC_SCALE_MAX, "BC_SCALE_MAX"}, {sysconf.SC_BC_STRING_MAX, C._SC_BC_STRING_MAX, "BC_STRING_MAX"}, {sysconf.SC_CHILD_MAX, C._SC_CHILD_MAX, "CHILD_MAX"}, {sysconf.SC_CLK_TCK, C._SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_COLL_WEIGHTS_MAX, C._SC_COLL_WEIGHTS_MAX, "COLL_WEIGHTS_MAX"}, {sysconf.SC_DELAYTIMER_MAX, C._SC_DELAYTIMER_MAX, "DELAYTIMER_MAX"}, {sysconf.SC_EXPR_NEST_MAX, C._SC_EXPR_NEST_MAX, "EXPR_NEST_MAX"}, {sysconf.SC_GETGR_R_SIZE_MAX, C._SC_GETGR_R_SIZE_MAX, "GETGR_R_SIZE_MAX"}, {sysconf.SC_GETPW_R_SIZE_MAX, C._SC_GETPW_R_SIZE_MAX, "GETPW_R_SIZE_MAX"}, {sysconf.SC_HOST_NAME_MAX, C._SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_IOV_MAX, C._SC_IOV_MAX, "IOV_MAX"}, {sysconf.SC_LINE_MAX, C._SC_LINE_MAX, "LINE_MAX"}, {sysconf.SC_LOGIN_NAME_MAX, C._SC_LOGIN_NAME_MAX, "LOGIN_NAME_MAX"}, {sysconf.SC_MQ_OPEN_MAX, C._SC_MQ_OPEN_MAX, "MQ_OPEN_MAX"}, {sysconf.SC_MQ_PRIO_MAX, C._SC_MQ_PRIO_MAX, "MQ_PRIO_MAX"}, {sysconf.SC_NGROUPS_MAX, C._SC_NGROUPS_MAX, "NGROUPS_MAX"}, {sysconf.SC_OPEN_MAX, C._SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, C._SC_PAGE_SIZE, "PAGE_SIZE"}, {sysconf.SC_PAGESIZE, C._SC_PAGESIZE, "PAGESIZE"}, {sysconf.SC_THREAD_KEYS_MAX, C._SC_THREAD_KEYS_MAX, "PTHREAD_KEYS_MAX"}, {sysconf.SC_THREAD_STACK_MIN, C._SC_THREAD_STACK_MIN, "PTHREAD_STACK_MIN"}, {sysconf.SC_THREAD_THREADS_MAX, C._SC_THREAD_THREADS_MAX, "PTHREAD_THREADS_MAX"}, {sysconf.SC_RE_DUP_MAX, C._SC_RE_DUP_MAX, "RE_DUP_MAX"}, {sysconf.SC_RTSIG_MAX, C._SC_RTSIG_MAX, "RTSIG_MAX"}, {sysconf.SC_SEM_NSEMS_MAX, C._SC_SEM_NSEMS_MAX, "SEM_NSEMS_MAX"}, {sysconf.SC_SEM_VALUE_MAX, C._SC_SEM_VALUE_MAX, "SEM_VALUE_MAX"}, {sysconf.SC_SIGQUEUE_MAX, C._SC_SIGQUEUE_MAX, "SIGQUEUE_MAX"}, {sysconf.SC_STREAM_MAX, C._SC_STREAM_MAX, "STREAM_MAX"}, {sysconf.SC_SYMLOOP_MAX, C._SC_SYMLOOP_MAX, "SYMLOOP_MAX"}, {sysconf.SC_TIMER_MAX, C._SC_TIMER_MAX, "TIMER_MAX"}, {sysconf.SC_TTY_NAME_MAX, C._SC_TTY_NAME_MAX, "TTY_NAME_MAX"}, {sysconf.SC_ADVISORY_INFO, C._SC_ADVISORY_INFO, "_POSIX_ADVISORY_INFO"}, {sysconf.SC_ASYNCHRONOUS_IO, C._SC_ASYNCHRONOUS_IO, "_POSIX_ASYNCHRONOUS_IO"}, {sysconf.SC_BARRIERS, C._SC_BARRIERS, "_POSIX_BARRIERS"}, {sysconf.SC_CLOCK_SELECTION, C._SC_CLOCK_SELECTION, "_POSIX_CLOCK_SELECTION"}, {sysconf.SC_CPUTIME, C._SC_CPUTIME, "_POSIX_CPUTIME"}, {sysconf.SC_FSYNC, C._SC_FSYNC, "_POSIX_FSYNC"}, {sysconf.SC_IPV6, C._SC_IPV6, "_POSIX_IPV6"}, {sysconf.SC_JOB_CONTROL, C._SC_JOB_CONTROL, "_POSIX_JOB_CONTROL"}, {sysconf.SC_MAPPED_FILES, C._SC_MAPPED_FILES, "_POSIX_MAPPED_FILES"}, {sysconf.SC_MEMLOCK, C._SC_MEMLOCK, "_POSIX_MEMLOCK"}, {sysconf.SC_MEMLOCK_RANGE, C._SC_MEMLOCK_RANGE, "_POSIX_MEMLOCK_RANGE"}, {sysconf.SC_MEMORY_PROTECTION, C._SC_MEMORY_PROTECTION, "_POSIX_MEMORY_PROTECTION"}, {sysconf.SC_MESSAGE_PASSING, C._SC_MESSAGE_PASSING, "_POSIX_MESSAGE_PASSING"}, {sysconf.SC_MONOTONIC_CLOCK, C._SC_MONOTONIC_CLOCK, "_POSIX_MONOTONIC_CLOCK"}, {sysconf.SC_PRIORITIZED_IO, C._SC_PRIORITIZED_IO, "_POSIX_PRIORITIZED_IO"}, {sysconf.SC_PRIORITY_SCHEDULING, C._SC_PRIORITY_SCHEDULING, "_POSIX_PRIORITY_SCHEDULING"}, {sysconf.SC_RAW_SOCKETS, C._SC_RAW_SOCKETS, "_POSIX_RAW_SOCKETS"}, {sysconf.SC_READER_WRITER_LOCKS, C._SC_READER_WRITER_LOCKS, "_POSIX_READER_WRITER_LOCKS"}, {sysconf.SC_REALTIME_SIGNALS, C._SC_REALTIME_SIGNALS, "_POSIX_REALTIME_SIGNALS"}, {sysconf.SC_REGEXP, C._SC_REGEXP, "_POSIX_REGEXP"}, {sysconf.SC_SAVED_IDS, C._SC_SAVED_IDS, "_POSIX_SAVED_IDS"}, {sysconf.SC_SEMAPHORES, C._SC_SEMAPHORES, "_POSIX_SEMAPHORES"}, {sysconf.SC_SHARED_MEMORY_OBJECTS, C._SC_SHARED_MEMORY_OBJECTS, "_POSIX_SHARED_MEMORY_OBJECTS"}, {sysconf.SC_SHELL, C._SC_SHELL, "_POSIX_SHELL"}, {sysconf.SC_SPAWN, C._SC_SPAWN, "_POSIX_SPAWN"}, {sysconf.SC_SPIN_LOCKS, C._SC_SPIN_LOCKS, "_POSIX_SPIN_LOCKS"}, {sysconf.SC_SPORADIC_SERVER, C._SC_SPORADIC_SERVER, "_POSIX_SPORADIC_SERVER"}, {sysconf.SC_SS_REPL_MAX, C._SC_SS_REPL_MAX, "_POSIX_SS_REPL_MAX"}, {sysconf.SC_SYNCHRONIZED_IO, C._SC_SYNCHRONIZED_IO, "_POSIX_SYNCHRONIZED_IO"}, {sysconf.SC_THREAD_ATTR_STACKADDR, C._SC_THREAD_ATTR_STACKADDR, "_POSIX_THREAD_ATTR_STACKADDR"}, {sysconf.SC_THREAD_ATTR_STACKSIZE, C._SC_THREAD_ATTR_STACKSIZE, "_POSIX_THREAD_ATTR_STACKSIZE"}, {sysconf.SC_THREAD_CPUTIME, C._SC_THREAD_CPUTIME, "_POSIX_THREAD_CPUTIME"}, {sysconf.SC_THREAD_PRIO_INHERIT, C._SC_THREAD_PRIO_INHERIT, "_POSIX_THREAD_PRIO_INHERIT"}, {sysconf.SC_THREAD_PRIO_PROTECT, C._SC_THREAD_PRIO_PROTECT, "_POSIX_THREAD_PRIO_PROTECT"}, {sysconf.SC_THREAD_PRIORITY_SCHEDULING, C._SC_THREAD_PRIORITY_SCHEDULING, "_POSIX_THREAD_PRIORITY_SCHEDULING"}, {sysconf.SC_THREAD_PROCESS_SHARED, C._SC_THREAD_PROCESS_SHARED, "_POSIX_THREAD_PROCESS_SHARED"}, {sysconf.SC_THREAD_SAFE_FUNCTIONS, C._SC_THREAD_SAFE_FUNCTIONS, "_POSIX_THREAD_SAFE_FUNCTIONS"}, {sysconf.SC_THREAD_SPORADIC_SERVER, C._SC_THREAD_SPORADIC_SERVER, "_POSIX_THREAD_SPORADIC_SERVER"}, {sysconf.SC_THREADS, C._SC_THREADS, "_POSIX_THREADS"}, {sysconf.SC_TIMEOUTS, C._SC_TIMEOUTS, "_POSIX_TIMEOUTS"}, {sysconf.SC_TIMERS, C._SC_TIMERS, "_POSIX_TIMERS"}, {sysconf.SC_TRACE, C._SC_TRACE, "_POSIX_TRACE"}, {sysconf.SC_TRACE_EVENT_FILTER, C._SC_TRACE_EVENT_FILTER, "_POSIX_TRACE_EVENT_FILTER"}, {sysconf.SC_TRACE_EVENT_NAME_MAX, C._SC_TRACE_EVENT_NAME_MAX, "_POSIX_TRACE_EVENT_NAME_MAX"}, {sysconf.SC_TRACE_INHERIT, C._SC_TRACE_INHERIT, "_POSIX_TRACE_INHERIT"}, {sysconf.SC_TRACE_LOG, C._SC_TRACE_LOG, "_POSIX_TRACE_LOG"}, {sysconf.SC_TRACE_NAME_MAX, C._SC_TRACE_NAME_MAX, "_POSIX_TRACE_NAME_MAX"}, {sysconf.SC_TRACE_SYS_MAX, C._SC_TRACE_SYS_MAX, "_POSIX_TRACE_SYS_MAX"}, {sysconf.SC_TRACE_USER_EVENT_MAX, C._SC_TRACE_USER_EVENT_MAX, "_POSIX_TRACE_USER_EVENT_MAX"}, {sysconf.SC_TYPED_MEMORY_OBJECTS, C._SC_TYPED_MEMORY_OBJECTS, "_POSIX_TYPED_MEMORY_OBJECTS"}, {sysconf.SC_VERSION, C._SC_VERSION, "_POSIX_VERSION"}, {sysconf.SC_V6_ILP32_OFF32, C._SC_V6_ILP32_OFF32, "_POSIX_V6_ILP32_OFF32"}, {sysconf.SC_V6_ILP32_OFFBIG, C._SC_V6_ILP32_OFFBIG, "_POSIX_V6_ILP32_OFFBIG"}, {sysconf.SC_V6_LP64_OFF64, C._SC_V6_LP64_OFF64, "_POSIX_V6_LP64_OFF64"}, {sysconf.SC_V6_LPBIG_OFFBIG, C._SC_V6_LPBIG_OFFBIG, "_POSIX_V6_LPBIG_OFFBIG"}, {sysconf.SC_2_C_BIND, C._SC_2_C_BIND, "_POSIX2_C_BIND"}, {sysconf.SC_2_C_DEV, C._SC_2_C_DEV, "_POSIX2_C_DEV"}, {sysconf.SC_2_C_VERSION, C._SC_2_C_VERSION, "_POSIX2_C_VERSION"}, {sysconf.SC_2_CHAR_TERM, C._SC_2_CHAR_TERM, "_POSIX2_CHAR_TERM"}, {sysconf.SC_2_FORT_DEV, C._SC_2_FORT_DEV, "_POSIX2_FORT_DEV"}, {sysconf.SC_2_FORT_RUN, C._SC_2_FORT_RUN, "_POSIX2_FORT_RUN"}, {sysconf.SC_2_LOCALEDEF, C._SC_2_LOCALEDEF, "_POSIX2_LOCALEDEF"}, {sysconf.SC_2_PBS, C._SC_2_PBS, "_POSIX2_PBS"}, {sysconf.SC_2_PBS_ACCOUNTING, C._SC_2_PBS_ACCOUNTING, "_POSIX2_PBS_ACCOUNTING"}, {sysconf.SC_2_PBS_CHECKPOINT, C._SC_2_PBS_CHECKPOINT, "_POSIX2_PBS_CHECKPOINT"}, {sysconf.SC_2_PBS_LOCATE, C._SC_2_PBS_LOCATE, "_POSIX2_PBS_LOCATE"}, {sysconf.SC_2_PBS_MESSAGE, C._SC_2_PBS_MESSAGE, "_POSIX2_PBS_MESSAGE"}, {sysconf.SC_2_PBS_TRACK, C._SC_2_PBS_TRACK, "_POSIX2_PBS_TRACK"}, {sysconf.SC_2_SW_DEV, C._SC_2_SW_DEV, "_POSIX2_SW_DEV"}, {sysconf.SC_2_UPE, C._SC_2_UPE, "_POSIX2_UPE"}, {sysconf.SC_2_VERSION, C._SC_2_VERSION, "_POSIX2_VERSION"}, {sysconf.SC_XOPEN_ENH_I18N, C._SC_XOPEN_ENH_I18N, "_XOPEN_ENH_I18N"}, {sysconf.SC_XOPEN_REALTIME, C._SC_XOPEN_REALTIME, "_XOPEN_REALTIME"}, {sysconf.SC_XOPEN_REALTIME_THREADS, C._SC_XOPEN_REALTIME_THREADS, "_XOPEN_REALTIME_THREADS"}, {sysconf.SC_XOPEN_SHM, C._SC_XOPEN_SHM, "_XOPEN_SHM"}, {sysconf.SC_XOPEN_STREAMS, C._SC_XOPEN_STREAMS, "_XOPEN_STREAMS"}, {sysconf.SC_XOPEN_UNIX, C._SC_XOPEN_UNIX, "_XOPEN_UNIX"}, {sysconf.SC_XOPEN_VERSION, C._SC_XOPEN_VERSION, "_XOPEN_VERSION"}, {sysconf.SC_XOPEN_XCU_VERSION, C._SC_XOPEN_XCU_VERSION, "_XOPEN_XCU_VERSION"}, // non-standard {sysconf.SC_PHYS_PAGES, C._SC_PHYS_PAGES, "_PHYS_PAGES"}, {sysconf.SC_AVPHYS_PAGES, C._SC_AVPHYS_PAGES, "_AVPHYS_PAGES"}, {sysconf.SC_NPROCESSORS_CONF, C._SC_NPROCESSORS_CONF, "_NPROCESSORS_CONF"}, {sysconf.SC_NPROCESSORS_ONLN, C._SC_NPROCESSORS_ONLN, "_NPROCESSORS_ONLN"}, } for _, tc := range testCases { testSysconfGoCgo(t, tc) } } go-sysconf-0.3.9/cgotest/sysconf_test.go000066400000000000000000000005321411312062400203260ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf_cgotest import "testing" // The actual test function is in sysconf_cgotest.go so that it can use cgo. func TestSysconfCgoMatch(t *testing.T) { testSysconfCgoMatch(t) } go-sysconf-0.3.9/example_test.go000066400000000000000000000013201411312062400166210ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris // +build darwin dragonfly freebsd linux netbsd openbsd solaris package sysconf_test import ( "fmt" "os" "github.com/tklauser/go-sysconf" ) func ExampleSysconf_clktck() { clktck, err := sysconf.Sysconf(sysconf.SC_CLK_TCK) if err != nil { fmt.Fprintf(os.Stderr, "Sysconf: %v\n", err) } fmt.Printf("sysconf(SC_CLK_TCK) = %v\n", clktck) } func ExampleSysconf_invalidParameter() { _, err := sysconf.Sysconf(-1) fmt.Print(err) // Output: invalid parameter value } go-sysconf-0.3.9/go.mod000066400000000000000000000002251411312062400147110ustar00rootroot00000000000000module github.com/tklauser/go-sysconf go 1.13 require ( github.com/tklauser/numcpus v0.3.0 golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71 ) go-sysconf-0.3.9/go.sum000066400000000000000000000005741411312062400147450ustar00rootroot00000000000000github.com/tklauser/numcpus v0.3.0 h1:ILuRUQBtssgnxw0XXIjKUC56fgnOrFoQQ/4+DeU2biQ= github.com/tklauser/numcpus v0.3.0/go.mod h1:yFGUr7TUHQRAhyqBcEg0Ge34zDBAsIvJJcyE6boqnA8= golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71 h1:ikCpsnYR+Ew0vu99XlDp55lGgDJdIMx3f4a18jfse/s= golang.org/x/sys v0.0.0-20210816074244-15123e1e1f71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= go-sysconf-0.3.9/mksysconf.go000066400000000000000000000031731411312062400161530ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package main import ( "fmt" "go/format" "io/ioutil" "os" "os/exec" "regexp" "runtime" ) func gensysconf(in, out, goos, goarch string) error { if _, err := os.Stat(in); err != nil { if os.IsNotExist(err) { return nil } else { return err } } cmd := exec.Command("go", "tool", "cgo", "-godefs", in) defer os.RemoveAll("_obj") b, err := cmd.CombinedOutput() if err != nil { fmt.Fprintln(os.Stderr, string(b)) return err } goBuild, build := goos, goos if goarch != "" { goBuild = fmt.Sprintf("%s && %s", goos, goarch) build = fmt.Sprintf("%s,%s", goos, goarch) } r := fmt.Sprintf(`$1 //go:build %s // +build %s`, goBuild, build) cgoCommandRegex := regexp.MustCompile(`(cgo -godefs .*)`) b = cgoCommandRegex.ReplaceAll(b, []byte(r)) b, err = format.Source(b) if err != nil { return err } return ioutil.WriteFile(out, b, 0644) } func main() { goos, goarch := runtime.GOOS, runtime.GOARCH if goos == "illumos" { goos = "solaris" } defs := fmt.Sprintf("sysconf_defs_%s.go", goos) if err := gensysconf(defs, "z"+defs, goos, ""); err != nil { fmt.Fprintln(os.Stderr, err) os.Exit(1) } vals := fmt.Sprintf("sysconf_values_%s.go", runtime.GOOS) // sysconf variable values are GOARCH-specific, thus write per GOARCH zvals := fmt.Sprintf("zsysconf_values_%s_%s.go", runtime.GOOS, runtime.GOARCH) if err := gensysconf(vals, zvals, goos, goarch); err != nil { fmt.Fprintln(os.Stderr, err) os.Exit(1) } } go-sysconf-0.3.9/sysconf.go000066400000000000000000000013401411312062400156150ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Package sysconf implements the sysconf(3) function and provides the // associated SC_* constants to query system configuration values. package sysconf import "errors" //go:generate go run mksysconf.go var errInvalid = errors.New("invalid parameter value") // Sysconf returns the value of a sysconf(3) runtime system parameter. // The name parameter should be a SC_* constant define in this package. The // implementation is GOOS-specific and certain SC_* constants might not be // defined for all GOOSes. func Sysconf(name int) (int64, error) { return sysconf(name) } go-sysconf-0.3.9/sysconf_bsd.go000066400000000000000000000014231411312062400164470ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || netbsd || openbsd // +build darwin dragonfly freebsd netbsd openbsd package sysconf import "golang.org/x/sys/unix" func pathconf(path string, name int) int64 { if val, err := unix.Pathconf(path, name); err == nil { return int64(val) } return -1 } func sysctl32(name string) int64 { if val, err := unix.SysctlUint32(name); err == nil { return int64(val) } return -1 } func sysctl64(name string) int64 { if val, err := unix.SysctlUint64(name); err == nil { return int64(val) } return -1 } func yesno(val int64) int64 { if val == 0 { return -1 } return val } go-sysconf-0.3.9/sysconf_darwin.go000066400000000000000000000160351411312062400171700ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import ( "golang.org/x/sys/unix" ) const ( _HOST_NAME_MAX = _MAXHOSTNAMELEN - 1 _LOGIN_NAME_MAX = _MAXLOGNAME _SYMLOOP_MAX = _MAXSYMLINKS ) // sysconf implements sysconf(3) as in the Darwin libc, version 1244.30.3 // (derived from the FreeBSD libc). func sysconf(name int) (int64, error) { switch name { case SC_AIO_LISTIO_MAX: fallthrough case SC_AIO_MAX: return sysctl32("kern.aiomax"), nil case SC_AIO_PRIO_DELTA_MAX: return -1, nil case SC_ARG_MAX: return sysctl32("kern.argmax"), nil case SC_ATEXIT_MAX: return _INT_MAX, nil case SC_CHILD_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return int64(rlim.Cur), nil } } return -1, nil case SC_CLK_TCK: return _CLK_TCK, nil case SC_DELAYTIMER_MAX: return -1, nil case SC_GETGR_R_SIZE_MAX: return 4096, nil case SC_GETPW_R_SIZE_MAX: return 4096, nil case SC_IOV_MAX: return _IOV_MAX, nil case SC_MQ_OPEN_MAX: return -1, nil case SC_MQ_PRIO_MAX: return -1, nil case SC_NGROUPS_MAX: return sysctl32("kern.ngroups"), nil case SC_OPEN_MAX, SC_STREAM_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return int64(rlim.Cur), nil } } return -1, nil case SC_RTSIG_MAX: return -1, nil case SC_SEM_NSEMS_MAX: return sysctl32("kern.sysv.semmns"), nil case SC_SEM_VALUE_MAX: return _POSIX_SEM_VALUE_MAX, nil case SC_SIGQUEUE_MAX: return -1, nil case SC_THREAD_DESTRUCTOR_ITERATIONS: return _PTHREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _PTHREAD_KEYS_MAX, nil case SC_THREAD_PRIO_INHERIT: return _POSIX_THREAD_PRIO_INHERIT, nil case SC_THREAD_PRIO_PROTECT: return _POSIX_THREAD_PRIO_PROTECT, nil case SC_THREAD_STACK_MIN: return _PTHREAD_STACK_MIN, nil case SC_THREAD_THREADS_MAX: return -1, nil case SC_TIMER_MAX: return -1, nil case SC_TTY_NAME_MAX: // should be _PATH_DEV instead of "/" return pathconf("/", _PC_NAME_MAX), nil case SC_TZNAME_MAX: return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil case SC_IPV6: if _POSIX_IPV6 == 0 { fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0) if err == nil && fd >= 0 { unix.Close(fd) return int64(200112), nil } return 0, nil } return _POSIX_IPV6, nil case SC_MESSAGE_PASSING: if _POSIX_MESSAGE_PASSING == 0 { return yesno(sysctl32("p1003_1b.message_passing")), nil } return _POSIX_MESSAGE_PASSING, nil case SC_PRIORITIZED_IO: if _POSIX_PRIORITIZED_IO == 0 { return yesno(sysctl32("p1003_1b.prioritized_io")), nil } return _POSIX_PRIORITIZED_IO, nil case SC_PRIORITY_SCHEDULING: if _POSIX_PRIORITY_SCHEDULING == 0 { return yesno(sysctl32("p1003_1b.priority_scheduling")), nil } return _POSIX_PRIORITY_SCHEDULING, nil case SC_REALTIME_SIGNALS: if _POSIX_REALTIME_SIGNALS == 0 { return yesno(sysctl32("p1003_1b.realtime_signals")), nil } return _POSIX_REALTIME_SIGNALS, nil case SC_SAVED_IDS: return yesno(sysctl32("kern.saved_ids")), nil case SC_SEMAPHORES: if _POSIX_SEMAPHORES == 0 { return yesno(sysctl32("p1003_1b.semaphores")), nil } return _POSIX_SEMAPHORES, nil case SC_SPAWN: return _POSIX_SPAWN, nil case SC_SPIN_LOCKS: return _POSIX_SPIN_LOCKS, nil case SC_SPORADIC_SERVER: return _POSIX_SPORADIC_SERVER, nil case SC_SS_REPL_MAX: return _POSIX_SS_REPL_MAX, nil case SC_SYNCHRONIZED_IO: if _POSIX_SYNCHRONIZED_IO == 0 { return yesno(sysctl32("p1003_1b.synchronized_io")), nil } return _POSIX_SYNCHRONIZED_IO, nil case SC_THREAD_ATTR_STACKADDR: return _POSIX_THREAD_ATTR_STACKADDR, nil case SC_THREAD_ATTR_STACKSIZE: return _POSIX_THREAD_ATTR_STACKSIZE, nil case SC_THREAD_CPUTIME: return _POSIX_THREAD_CPUTIME, nil case SC_THREAD_PRIORITY_SCHEDULING: return _POSIX_THREAD_PRIORITY_SCHEDULING, nil case SC_THREAD_PROCESS_SHARED: return _POSIX_THREAD_PROCESS_SHARED, nil case SC_THREAD_SAFE_FUNCTIONS: return _POSIX_THREAD_SAFE_FUNCTIONS, nil case SC_THREAD_SPORADIC_SERVER: return _POSIX_THREAD_SPORADIC_SERVER, nil case SC_TIMERS: if _POSIX_TIMERS == 0 { return yesno(sysctl32("p1003_1b.timers")), nil } return _POSIX_TIMERS, nil case SC_TRACE: return _POSIX_TRACE, nil case SC_TRACE_EVENT_FILTER: return _POSIX_TRACE_EVENT_FILTER, nil case SC_TRACE_EVENT_NAME_MAX: return _POSIX_TRACE_EVENT_NAME_MAX, nil case SC_TRACE_INHERIT: return _POSIX_TRACE_INHERIT, nil case SC_TRACE_LOG: return _POSIX_TRACE_LOG, nil case SC_TRACE_NAME_MAX: return _POSIX_TRACE_NAME_MAX, nil case SC_TRACE_SYS_MAX: return _POSIX_TRACE_SYS_MAX, nil case SC_TRACE_USER_EVENT_MAX: return _POSIX_TRACE_USER_EVENT_MAX, nil case SC_TYPED_MEMORY_OBJECTS: return _POSIX_TYPED_MEMORY_OBJECTS, nil case SC_VERSION: // TODO(tk): darwin libc uses sysctl(CTL_KERN, KERN_POSIX1) return _POSIX_VERSION, nil case SC_V6_ILP32_OFF32: if _V6_ILP32_OFF32 == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofInt == unix.SizeofLong && unix.SizeofLong == unix.SizeofPtr && unix.SizeofPtr == sizeofOffT { return 1, nil } return -1, nil } return _V6_ILP32_OFF32, nil case SC_V6_ILP32_OFFBIG: if _V6_ILP32_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofInt == unix.SizeofLong && unix.SizeofLong == unix.SizeofPtr && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _V6_ILP32_OFFBIG, nil case SC_V6_LP64_OFF64: if _V6_LP64_OFF64 == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofLong*_CHAR_BIT == 64 && unix.SizeofLong == unix.SizeofPtr && unix.SizeofPtr == sizeofOffT { return 1, nil } return -1, nil } return _V6_LP64_OFF64, nil case SC_V6_LPBIG_OFFBIG: if _V6_LPBIG_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT >= 32 && unix.SizeofLong*_CHAR_BIT >= 64 && unix.SizeofPtr*_CHAR_BIT >= 64 && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _V6_LPBIG_OFFBIG, nil case SC_2_CHAR_TERM: return _POSIX2_CHAR_TERM, nil case SC_2_PBS, SC_2_PBS_ACCOUNTING, SC_2_PBS_CHECKPOINT, SC_2_PBS_LOCATE, SC_2_PBS_MESSAGE, SC_2_PBS_TRACK: return _POSIX2_PBS, nil case SC_2_UPE: return _POSIX2_UPE, nil case SC_XOPEN_CRYPT: return _XOPEN_CRYPT, nil case SC_XOPEN_ENH_I18N: return _XOPEN_ENH_I18N, nil case SC_XOPEN_REALTIME: return _XOPEN_REALTIME, nil case SC_XOPEN_REALTIME_THREADS: return _XOPEN_REALTIME_THREADS, nil case SC_XOPEN_SHM: return _XOPEN_SHM, nil case SC_XOPEN_STREAMS: return -1, nil case SC_XOPEN_UNIX: return _XOPEN_UNIX, nil case SC_XOPEN_VERSION: return _XOPEN_VERSION, nil case SC_XOPEN_XCU_VERSION: return _XOPEN_XCU_VERSION, nil case SC_PHYS_PAGES: return sysctl64("hw.memsize") / int64(unix.Getpagesize()), nil case SC_NPROCESSORS_CONF: fallthrough case SC_NPROCESSORS_ONLN: return sysctl32("hw.ncpu"), nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_defs_darwin.go000066400000000000000000000274451411312062400202000ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include #include #ifndef _PATH_ZONEINFO # define _PATH_ZONEINFO "/usr/share/zoneinfo" // TZDATA from tzcode/stdtime/tzfile.h #endif // off_t always __int64_t on darwin, see /usr/include/_types.h enum { sizeofOffT = sizeof(__int64_t) }; */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_RTSIG_MAX = C._SC_RTSIG_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SS_REPL_MAX = C._SC_SS_REPL_MAX SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_EVENT_NAME_MAX = C._SC_TRACE_EVENT_NAME_MAX SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TRACE_NAME_MAX = C._SC_TRACE_NAME_MAX SC_TRACE_SYS_MAX = C._SC_TRACE_SYS_MAX SC_TRACE_USER_EVENT_MAX = C._SC_TRACE_USER_EVENT_MAX SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_VERSION = C._SC_XOPEN_VERSION SC_XOPEN_XCU_VERSION = C._SC_XOPEN_XCU_VERSION // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) // sysconf values const ( _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _IOV_MAX = C.IOV_MAX _LINE_MAX = C.LINE_MAX _NAME_MAX = C.NAME_MAX _RE_DUP_MAX = C.RE_DUP_MAX _CLK_TCK = C.CLK_TCK _MAXHOSTNAMELEN = C.MAXHOSTNAMELEN _MAXLOGNAME = C.MAXLOGNAME _MAXSYMLINKS = C.MAXSYMLINKS _POSIX_ADVISORY_INFO = C._POSIX_ADVISORY_INFO _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_ASYNCHRONOUS_IO = C._POSIX_ASYNCHRONOUS_IO _POSIX_BARRIERS = C._POSIX_BARRIERS _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_CLOCK_SELECTION = C._POSIX_CLOCK_SELECTION _POSIX_CPUTIME = C._POSIX_CPUTIME _POSIX_FSYNC = C._POSIX_FSYNC _POSIX_IPV6 = C._POSIX_IPV6 _POSIX_JOB_CONTROL = C._POSIX_JOB_CONTROL _POSIX_MAPPED_FILES = C._POSIX_MAPPED_FILES _POSIX_MEMLOCK = C._POSIX_MEMLOCK _POSIX_MEMLOCK_RANGE = C._POSIX_MEMLOCK_RANGE _POSIX_MEMORY_PROTECTION = C._POSIX_MEMORY_PROTECTION _POSIX_MESSAGE_PASSING = C._POSIX_MESSAGE_PASSING _POSIX_MONOTONIC_CLOCK = C._POSIX_MONOTONIC_CLOCK _POSIX_PRIORITIZED_IO = C._POSIX_PRIORITIZED_IO _POSIX_PRIORITY_SCHEDULING = C._POSIX_PRIORITY_SCHEDULING _POSIX_RAW_SOCKETS = C._POSIX_RAW_SOCKETS _POSIX_READER_WRITER_LOCKS = C._POSIX_READER_WRITER_LOCKS _POSIX_REALTIME_SIGNALS = C._POSIX_REALTIME_SIGNALS _POSIX_REGEXP = C._POSIX_REGEXP _POSIX_SEM_VALUE_MAX = C._POSIX_SEM_VALUE_MAX _POSIX_SEMAPHORES = C._POSIX_SEMAPHORES _POSIX_SHARED_MEMORY_OBJECTS = C._POSIX_SHARED_MEMORY_OBJECTS _POSIX_SHELL = C._POSIX_SHELL _POSIX_SIGQUEUE_MAX = C._POSIX_SIGQUEUE_MAX _POSIX_SPAWN = C._POSIX_SPAWN _POSIX_SPIN_LOCKS = C._POSIX_SPIN_LOCKS _POSIX_SPORADIC_SERVER = C._POSIX_SPORADIC_SERVER _POSIX_SS_REPL_MAX = C._POSIX_SS_REPL_MAX _POSIX_SYNCHRONIZED_IO = C._POSIX_SYNCHRONIZED_IO _POSIX_THREAD_ATTR_STACKADDR = C._POSIX_THREAD_ATTR_STACKADDR _POSIX_THREAD_ATTR_STACKSIZE = C._POSIX_THREAD_ATTR_STACKSIZE _POSIX_THREAD_CPUTIME = C._POSIX_THREAD_CPUTIME _POSIX_THREAD_DESTRUCTOR_ITERATIONS = C._POSIX_THREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_KEYS_MAX = C._POSIX_THREAD_KEYS_MAX _POSIX_THREAD_PRIO_INHERIT = C._POSIX_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_PROTECT = C._POSIX_THREAD_PRIO_PROTECT _POSIX_THREAD_PRIORITY_SCHEDULING = C._POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_THREAD_PROCESS_SHARED = C._POSIX_THREAD_PROCESS_SHARED _POSIX_THREAD_SAFE_FUNCTIONS = C._POSIX_THREAD_SAFE_FUNCTIONS _POSIX_THREAD_SPORADIC_SERVER = C._POSIX_THREAD_SPORADIC_SERVER _POSIX_THREADS = C._POSIX_THREADS _POSIX_TIMEOUTS = C._POSIX_TIMEOUTS _POSIX_TIMERS = C._POSIX_TIMERS _POSIX_TRACE = C._POSIX_TRACE _POSIX_TRACE_EVENT_FILTER = C._POSIX_TRACE_EVENT_FILTER _POSIX_TRACE_EVENT_NAME_MAX = C._POSIX_TRACE_EVENT_NAME_MAX _POSIX_TRACE_INHERIT = C._POSIX_TRACE_INHERIT _POSIX_TRACE_LOG = C._POSIX_TRACE_LOG _POSIX_TRACE_NAME_MAX = C._POSIX_TRACE_NAME_MAX _POSIX_TRACE_SYS_MAX = C._POSIX_TRACE_SYS_MAX _POSIX_TRACE_USER_EVENT_MAX = C._POSIX_TRACE_USER_EVENT_MAX _POSIX_TYPED_MEMORY_OBJECTS = C._POSIX_TYPED_MEMORY_OBJECTS _POSIX_VERSION = C._POSIX_VERSION _V6_ILP32_OFF32 = C._V6_ILP32_OFF32 _V6_ILP32_OFFBIG = C._V6_ILP32_OFFBIG _V6_LP64_OFF64 = C._V6_LP64_OFF64 _V6_LPBIG_OFFBIG = C._V6_LPBIG_OFFBIG _POSIX2_C_BIND = C._POSIX2_C_BIND _POSIX2_C_DEV = C._POSIX2_C_DEV _POSIX2_CHAR_TERM = C._POSIX2_CHAR_TERM _POSIX2_LOCALEDEF = C._POSIX2_LOCALEDEF _POSIX2_PBS = C._POSIX2_PBS _POSIX2_SW_DEV = C._POSIX2_SW_DEV _POSIX2_UPE = C._POSIX2_UPE _POSIX2_VERSION = C._POSIX2_VERSION _XOPEN_CRYPT = C._XOPEN_CRYPT _XOPEN_ENH_I18N = C._XOPEN_ENH_I18N _XOPEN_REALTIME = C._XOPEN_REALTIME _XOPEN_REALTIME_THREADS = C._XOPEN_REALTIME_THREADS _XOPEN_SHM = C._XOPEN_SHM _XOPEN_UNIX = C._XOPEN_UNIX _XOPEN_VERSION = C._XOPEN_VERSION _XOPEN_XCU_VERSION = C._XOPEN_XCU_VERSION _PTHREAD_DESTRUCTOR_ITERATIONS = C.PTHREAD_DESTRUCTOR_ITERATIONS _PTHREAD_KEYS_MAX = C.PTHREAD_KEYS_MAX _PTHREAD_STACK_MIN = C.PTHREAD_STACK_MIN ) // pathconf const ( _PC_NAME_MAX = C._PC_NAME_MAX _PATH_ZONEINFO = C._PATH_ZONEINFO ) // integer sizes const ( _CHAR_BIT = C.CHAR_BIT _INT_MAX = C.INT_MAX sizeofOffT = C.sizeofOffT ) go-sysconf-0.3.9/sysconf_defs_dragonfly.go000066400000000000000000000251041411312062400206670ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include #include #include #ifndef ATEXIT_SIZE # define ATEXIT_SIZE 32 // from /usr/src/lib/libc/stdlib/atexit.h #endif #ifndef _PATH_ZONEINFO # define _PATH_ZONEINFO "/usr/share/zoneinfo" // TZDATA from tzcode/stdtime/tzfile.h #endif */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_RTSIG_MAX = C._SC_RTSIG_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_VERSION = C._SC_XOPEN_VERSION SC_XOPEN_XCU_VERSION = C._SC_XOPEN_XCU_VERSION // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) // sysconf values const ( _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _LINE_MAX = C.LINE_MAX _RE_DUP_MAX = C.RE_DUP_MAX _CLK_TCK = C.CLK_TCK _MAXHOSTNAMELEN = C.MAXHOSTNAMELEN _MAXLOGNAME = C.MAXLOGNAME _MAXSYMLINKS = C.MAXSYMLINKS _ATEXIT_SIZE = C.ATEXIT_SIZE _POSIX_ADVISORY_INFO = C._POSIX_ADVISORY_INFO _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_ASYNCHRONOUS_IO = C._POSIX_ASYNCHRONOUS_IO _POSIX_BARRIERS = C._POSIX_BARRIERS _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_CLOCK_SELECTION = C._POSIX_CLOCK_SELECTION _POSIX_CPUTIME = C._POSIX_CPUTIME _POSIX_FSYNC = C._POSIX_FSYNC _POSIX_IPV6 = C._POSIX_IPV6 _POSIX_JOB_CONTROL = C._POSIX_JOB_CONTROL _POSIX_MAPPED_FILES = C._POSIX_MAPPED_FILES _POSIX_MEMLOCK = C._POSIX_MEMLOCK _POSIX_MEMLOCK_RANGE = C._POSIX_MEMLOCK_RANGE _POSIX_MEMORY_PROTECTION = C._POSIX_MEMORY_PROTECTION _POSIX_MESSAGE_PASSING = C._POSIX_MESSAGE_PASSING _POSIX_MONOTONIC_CLOCK = C._POSIX_MONOTONIC_CLOCK _POSIX_PRIORITIZED_IO = C._POSIX_PRIORITIZED_IO _POSIX_PRIORITY_SCHEDULING = C._POSIX_PRIORITY_SCHEDULING _POSIX_RAW_SOCKETS = C._POSIX_RAW_SOCKETS _POSIX_READER_WRITER_LOCKS = C._POSIX_READER_WRITER_LOCKS _POSIX_REALTIME_SIGNALS = C._POSIX_REALTIME_SIGNALS _POSIX_REGEXP = C._POSIX_REGEXP _POSIX_SEM_VALUE_MAX = C._POSIX_SEM_VALUE_MAX _POSIX_SEMAPHORES = C._POSIX_SEMAPHORES _POSIX_SHARED_MEMORY_OBJECTS = C._POSIX_SHARED_MEMORY_OBJECTS _POSIX_SHELL = C._POSIX_SHELL _POSIX_SPAWN = C._POSIX_SPAWN _POSIX_SPIN_LOCKS = C._POSIX_SPIN_LOCKS _POSIX_SPORADIC_SERVER = C._POSIX_SPORADIC_SERVER _POSIX_SYNCHRONIZED_IO = C._POSIX_SYNCHRONIZED_IO _POSIX_THREAD_ATTR_STACKADDR = C._POSIX_THREAD_ATTR_STACKADDR _POSIX_THREAD_ATTR_STACKSIZE = C._POSIX_THREAD_ATTR_STACKSIZE _POSIX_THREAD_CPUTIME = C._POSIX_THREAD_CPUTIME _POSIX_THREAD_PRIO_INHERIT = C._POSIX_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_PROTECT = C._POSIX_THREAD_PRIO_PROTECT _POSIX_THREAD_PRIORITY_SCHEDULING = C._POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_THREAD_PROCESS_SHARED = C._POSIX_THREAD_PROCESS_SHARED _POSIX_THREAD_SAFE_FUNCTIONS = C._POSIX_THREAD_SAFE_FUNCTIONS _POSIX_THREAD_SPORADIC_SERVER = C._POSIX_THREAD_SPORADIC_SERVER _POSIX_THREADS = C._POSIX_THREADS _POSIX_TIMEOUTS = C._POSIX_TIMEOUTS _POSIX_TIMERS = C._POSIX_TIMERS _POSIX_TRACE = C._POSIX_TRACE _POSIX_TYPED_MEMORY_OBJECTS = C._POSIX_TYPED_MEMORY_OBJECTS _POSIX_VERSION = C._POSIX_VERSION _V6_ILP32_OFF32 = C._V6_ILP32_OFF32 _V6_ILP32_OFFBIG = C._V6_ILP32_OFFBIG _V6_LP64_OFF64 = C._V6_LP64_OFF64 _V6_LPBIG_OFFBIG = C._V6_LPBIG_OFFBIG _POSIX2_C_BIND = C._POSIX2_C_BIND _POSIX2_C_DEV = C._POSIX2_C_DEV _POSIX2_CHAR_TERM = C._POSIX2_CHAR_TERM _POSIX2_LOCALEDEF = C._POSIX2_LOCALEDEF _POSIX2_PBS = C._POSIX2_PBS _POSIX2_SW_DEV = C._POSIX2_SW_DEV _POSIX2_UPE = C._POSIX2_UPE _POSIX2_VERSION = C._POSIX2_VERSION _XOPEN_CRYPT = C._XOPEN_CRYPT _XOPEN_ENH_I18N = C._XOPEN_ENH_I18N _XOPEN_REALTIME = C._XOPEN_REALTIME _XOPEN_REALTIME_THREADS = C._XOPEN_REALTIME_THREADS _XOPEN_SHM = C._XOPEN_SHM _XOPEN_UNIX = C._XOPEN_UNIX _PTHREAD_DESTRUCTOR_ITERATIONS = C.PTHREAD_DESTRUCTOR_ITERATIONS _PTHREAD_KEYS_MAX = C.PTHREAD_KEYS_MAX _PTHREAD_STACK_MIN = C.PTHREAD_STACK_MIN ) // pathconf variables const ( _PC_NAME_MAX = C._PC_NAME_MAX _PATH_DEV = C._PATH_DEV _PATH_ZONEINFO = C._PATH_ZONEINFO ) go-sysconf-0.3.9/sysconf_defs_freebsd.go000066400000000000000000000251071411312062400203170ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include #include #include #ifndef ATEXIT_SIZE # define ATEXIT_SIZE 32 // from /usr/src/lib/libc/stdlib/atexit.h #endif #ifndef _PATH_ZONEINFO # define _PATH_ZONEINFO "/usr/share/zoneinfo" // TZDATA from tzcode/stdtime/tzfile.h #endif */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_RTSIG_MAX = C._SC_RTSIG_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_VERSION = C._SC_XOPEN_VERSION SC_XOPEN_XCU_VERSION = C._SC_XOPEN_XCU_VERSION // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) // sysconf values const ( _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _LINE_MAX = C.LINE_MAX _MQ_PRIO_MAX = C.MQ_PRIO_MAX _RE_DUP_MAX = C.RE_DUP_MAX _SEM_VALUE_MAX = C.SEM_VALUE_MAX _CLK_TCK = C.CLK_TCK _MAXHOSTNAMELEN = C.MAXHOSTNAMELEN _MAXLOGNAME = C.MAXLOGNAME _MAXSYMLINKS = C.MAXSYMLINKS _ATEXIT_SIZE = C.ATEXIT_SIZE _POSIX_ADVISORY_INFO = C._POSIX_ADVISORY_INFO _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_ASYNCHRONOUS_IO = C._POSIX_ASYNCHRONOUS_IO _POSIX_BARRIERS = C._POSIX_BARRIERS _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_CLOCK_SELECTION = C._POSIX_CLOCK_SELECTION _POSIX_CPUTIME = C._POSIX_CPUTIME _POSIX_FSYNC = C._POSIX_FSYNC _POSIX_IPV6 = C._POSIX_IPV6 _POSIX_JOB_CONTROL = C._POSIX_JOB_CONTROL _POSIX_MAPPED_FILES = C._POSIX_MAPPED_FILES _POSIX_MEMLOCK = C._POSIX_MEMLOCK _POSIX_MEMLOCK_RANGE = C._POSIX_MEMLOCK_RANGE _POSIX_MEMORY_PROTECTION = C._POSIX_MEMORY_PROTECTION _POSIX_MESSAGE_PASSING = C._POSIX_MESSAGE_PASSING _POSIX_MONOTONIC_CLOCK = C._POSIX_MONOTONIC_CLOCK _POSIX_PRIORITIZED_IO = C._POSIX_PRIORITIZED_IO _POSIX_PRIORITY_SCHEDULING = C._POSIX_PRIORITY_SCHEDULING _POSIX_RAW_SOCKETS = C._POSIX_RAW_SOCKETS _POSIX_READER_WRITER_LOCKS = C._POSIX_READER_WRITER_LOCKS _POSIX_REALTIME_SIGNALS = C._POSIX_REALTIME_SIGNALS _POSIX_REGEXP = C._POSIX_REGEXP _POSIX_SEM_VALUE_MAX = C._POSIX_SEM_VALUE_MAX _POSIX_SEMAPHORES = C._POSIX_SEMAPHORES _POSIX_SHARED_MEMORY_OBJECTS = C._POSIX_SHARED_MEMORY_OBJECTS _POSIX_SHELL = C._POSIX_SHELL _POSIX_SPAWN = C._POSIX_SPAWN _POSIX_SPIN_LOCKS = C._POSIX_SPIN_LOCKS _POSIX_SPORADIC_SERVER = C._POSIX_SPORADIC_SERVER _POSIX_SYNCHRONIZED_IO = C._POSIX_SYNCHRONIZED_IO _POSIX_THREAD_ATTR_STACKADDR = C._POSIX_THREAD_ATTR_STACKADDR _POSIX_THREAD_ATTR_STACKSIZE = C._POSIX_THREAD_ATTR_STACKSIZE _POSIX_THREAD_CPUTIME = C._POSIX_THREAD_CPUTIME _POSIX_THREAD_PRIO_INHERIT = C._POSIX_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_PROTECT = C._POSIX_THREAD_PRIO_PROTECT _POSIX_THREAD_PRIORITY_SCHEDULING = C._POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_THREAD_PROCESS_SHARED = C._POSIX_THREAD_PROCESS_SHARED _POSIX_THREAD_SAFE_FUNCTIONS = C._POSIX_THREAD_SAFE_FUNCTIONS _POSIX_THREADS = C._POSIX_THREADS _POSIX_TIMEOUTS = C._POSIX_TIMEOUTS _POSIX_TIMERS = C._POSIX_TIMERS _POSIX_TRACE = C._POSIX_TRACE _POSIX_TYPED_MEMORY_OBJECTS = C._POSIX_TYPED_MEMORY_OBJECTS _POSIX_VERSION = C._POSIX_VERSION _V6_ILP32_OFF32 = C._V6_ILP32_OFF32 _V6_ILP32_OFFBIG = C._V6_ILP32_OFFBIG _V6_LP64_OFF64 = C._V6_LP64_OFF64 _V6_LPBIG_OFFBIG = C._V6_LPBIG_OFFBIG _POSIX2_C_BIND = C._POSIX2_C_BIND _POSIX2_C_DEV = C._POSIX2_C_DEV _POSIX2_CHAR_TERM = C._POSIX2_CHAR_TERM _POSIX2_LOCALEDEF = C._POSIX2_LOCALEDEF _POSIX2_PBS = C._POSIX2_PBS _POSIX2_SW_DEV = C._POSIX2_SW_DEV _POSIX2_UPE = C._POSIX2_UPE _POSIX2_VERSION = C._POSIX2_VERSION _XOPEN_CRYPT = C._XOPEN_CRYPT _XOPEN_ENH_I18N = C._XOPEN_ENH_I18N _XOPEN_REALTIME = C._XOPEN_REALTIME _XOPEN_REALTIME_THREADS = C._XOPEN_REALTIME_THREADS _XOPEN_SHM = C._XOPEN_SHM _XOPEN_UNIX = C._XOPEN_UNIX _PTHREAD_DESTRUCTOR_ITERATIONS = C.PTHREAD_DESTRUCTOR_ITERATIONS _PTHREAD_KEYS_MAX = C.PTHREAD_KEYS_MAX _PTHREAD_STACK_MIN = C.PTHREAD_STACK_MIN ) // pathconf variables const ( _PC_NAME_MAX = C._PC_NAME_MAX _PATH_DEV = C._PATH_DEV _PATH_ZONEINFO = C._PATH_ZONEINFO ) go-sysconf-0.3.9/sysconf_defs_linux.go000066400000000000000000000164031411312062400200430ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include // for NSS_BUFLEN_GROUP #include // for NSS_BUFLEN_PASSWD // This comes from the Linux kernel header. #ifndef OPEN_MAX # define OPEN_MAX 256 #endif // POSIX_STREAM_MAX is 8, but glibc returns FOPEN_MAX if STREAM_MAX is not // defined. #ifndef STREAM_MAX # define STREAM_MAX FOPEN_MAX #endif #ifndef SYMLOOP_MAX # define SYMLOOP_MAX -1 // undefined #endif */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_RTSIG_MAX = C._SC_RTSIG_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SS_REPL_MAX = C._SC_SS_REPL_MAX SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_ROBUST_PRIO_INHERIT = C._SC_THREAD_ROBUST_PRIO_INHERIT SC_THREAD_ROBUST_PRIO_PROTECT = C._SC_THREAD_ROBUST_PRIO_PROTECT SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_EVENT_NAME_MAX = C._SC_TRACE_EVENT_NAME_MAX SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TRACE_NAME_MAX = C._SC_TRACE_NAME_MAX SC_TRACE_SYS_MAX = C._SC_TRACE_SYS_MAX SC_TRACE_USER_EVENT_MAX = C._SC_TRACE_USER_EVENT_MAX SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V7_ILP32_OFF32 = C._SC_V7_ILP32_OFF32 SC_V7_ILP32_OFFBIG = C._SC_V7_ILP32_OFFBIG SC_V7_LP64_OFF64 = C._SC_V7_LP64_OFF64 SC_V7_LPBIG_OFFBIG = C._SC_V7_LPBIG_OFFBIG SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_C_VERSION = C._SC_2_C_VERSION SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_VERSION = C._SC_XOPEN_VERSION SC_XOPEN_XCU_VERSION = C._SC_XOPEN_XCU_VERSION // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_AVPHYS_PAGES = C._SC_AVPHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN SC_UIO_MAXIOV = C._SC_UIO_MAXIOV ) go-sysconf-0.3.9/sysconf_defs_netbsd.go000066400000000000000000000076021411312062400201640ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include #include #ifndef _PATH_ZONEINFO # define _PATH_ZONEINFO "/usr/share/zoneinfo" // TZDATA from tzcode/stdtime/tzfile.h #endif */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_FSYNC = C._SC_FSYNC SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHELL = C._SC_SHELL SC_THREADS = C._SC_THREADS SC_TIMERS = C._SC_TIMERS SC_VERSION = C._SC_VERSION SC_2_VERSION = C._SC_2_VERSION SC_2_C_DEV = C._SC_2_C_DEV SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) // sysconf values const ( _MAXHOSTNAMELEN = C.MAXHOSTNAMELEN _MAXLOGNAME = C.MAXLOGNAME _MAXSYMLINKS = C.MAXSYMLINKS _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_SHELL = C._POSIX_SHELL _POSIX_THREAD_DESTRUCTOR_ITERATIONS = C._POSIX_THREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_KEYS_MAX = C._POSIX_THREAD_KEYS_MAX _POSIX_VERSION = C._POSIX_VERSION _POSIX2_VERSION = C._POSIX2_VERSION _FOPEN_MAX = C.FOPEN_MAX _NAME_MAX = C.NAME_MAX _RE_DUP_MAX = C.RE_DUP_MAX _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _LINE_MAX = C.LINE_MAX _PATH_DEV = C._PATH_DEV _PATH_ZONEINFO = C._PATH_ZONEINFO ) // pathconf variables const _PC_NAME_MAX = C._PC_NAME_MAX go-sysconf-0.3.9/sysconf_defs_openbsd.go000066400000000000000000000301131411312062400203300ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include #include #include #include // for _GR_BUF_LEN #include // for _PW_BUF_LEN #ifndef _PATH_ZONEINFO # define _PATH_ZONEINFO "/usr/share/zoneinfo" // TZDATA from tzcode/stdtime/tzfile.h #endif // off_t is always __int64_t on OpenBSD, see /usr/include/_types.h enum { sizeofOffT = sizeof(__int64_t) }; */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SS_REPL_MAX = C._SC_SS_REPL_MAX SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_ROBUST_PRIO_INHERIT = C._SC_THREAD_ROBUST_PRIO_INHERIT SC_THREAD_ROBUST_PRIO_PROTECT = C._SC_THREAD_ROBUST_PRIO_PROTECT SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_EVENT_NAME_MAX = C._SC_TRACE_EVENT_NAME_MAX SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TRACE_NAME_MAX = C._SC_TRACE_NAME_MAX SC_TRACE_SYS_MAX = C._SC_TRACE_SYS_MAX SC_TRACE_USER_EVENT_MAX = C._SC_TRACE_USER_EVENT_MAX SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V7_ILP32_OFF32 = C._SC_V7_ILP32_OFF32 SC_V7_ILP32_OFFBIG = C._SC_V7_ILP32_OFFBIG SC_V7_LP64_OFF64 = C._SC_V7_LP64_OFF64 SC_V7_LPBIG_OFFBIG = C._SC_V7_LPBIG_OFFBIG SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_UUCP = C._SC_XOPEN_UUCP SC_XOPEN_VERSION = C._SC_XOPEN_VERSION // non-standard variables SC_AVPHYS_PAGES = C._SC_AVPHYS_PAGES SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) // sysconf values const ( _HOST_NAME_MAX = C.HOST_NAME_MAX _IOV_MAX = C.IOV_MAX _LOGIN_NAME_MAX = C.LOGIN_NAME_MAX _PTHREAD_DESTRUCTOR_ITERATIONS = C.PTHREAD_DESTRUCTOR_ITERATIONS _PTHREAD_KEYS_MAX = C.PTHREAD_KEYS_MAX _PTHREAD_STACK_MIN = C.PTHREAD_STACK_MIN _PTHREAD_THREADS_MAX = C.PTHREAD_THREADS_MAX _SEM_VALUE_MAX = C.SEM_VALUE_MAX _SYMLOOP_MAX = C.SYMLOOP_MAX _TTY_NAME_MAX = C.TTY_NAME_MAX _GR_BUF_LEN = C._GR_BUF_LEN _PW_BUF_LEN = C._PW_BUF_LEN _CLK_TCK = C.CLK_TCK _POSIX_ADVISORY_INFO = C._POSIX_ADVISORY_INFO _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_ASYNCHRONOUS_IO = C._POSIX_ASYNCHRONOUS_IO _POSIX_BARRIERS = C._POSIX_BARRIERS _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_CLOCK_SELECTION = C._POSIX_CLOCK_SELECTION _POSIX_CPUTIME = C._POSIX_CPUTIME _POSIX_FSYNC = C._POSIX_FSYNC _POSIX_IPV6 = C._POSIX_IPV6 _POSIX_JOB_CONTROL = C._POSIX_JOB_CONTROL _POSIX_MAPPED_FILES = C._POSIX_MAPPED_FILES _POSIX_MEMLOCK = C._POSIX_MEMLOCK _POSIX_MEMLOCK_RANGE = C._POSIX_MEMLOCK_RANGE _POSIX_MEMORY_PROTECTION = C._POSIX_MEMORY_PROTECTION _POSIX_MESSAGE_PASSING = C._POSIX_MESSAGE_PASSING _POSIX_MONOTONIC_CLOCK = C._POSIX_MONOTONIC_CLOCK _POSIX_PRIORITIZED_IO = C._POSIX_PRIORITIZED_IO _POSIX_PRIORITY_SCHEDULING = C._POSIX_PRIORITY_SCHEDULING _POSIX_RAW_SOCKETS = C._POSIX_RAW_SOCKETS _POSIX_READER_WRITER_LOCKS = C._POSIX_READER_WRITER_LOCKS _POSIX_REALTIME_SIGNALS = C._POSIX_REALTIME_SIGNALS _POSIX_REGEXP = C._POSIX_REGEXP _POSIX_SAVED_IDS = C._POSIX_SAVED_IDS _POSIX_SEMAPHORES = C._POSIX_SEMAPHORES _POSIX_SHARED_MEMORY_OBJECTS = C._POSIX_SHARED_MEMORY_OBJECTS _POSIX_SHELL = C._POSIX_SHELL _POSIX_SPAWN = C._POSIX_SPAWN _POSIX_SPIN_LOCKS = C._POSIX_SPIN_LOCKS _POSIX_SPORADIC_SERVER = C._POSIX_SPORADIC_SERVER _POSIX_SYNCHRONIZED_IO = C._POSIX_SYNCHRONIZED_IO _POSIX_THREAD_ATTR_STACKADDR = C._POSIX_THREAD_ATTR_STACKADDR _POSIX_THREAD_ATTR_STACKSIZE = C._POSIX_THREAD_ATTR_STACKSIZE _POSIX_THREAD_CPUTIME = C._POSIX_THREAD_CPUTIME _POSIX_THREAD_KEYS_MAX = C._POSIX_THREAD_KEYS_MAX _POSIX_THREAD_PRIO_INHERIT = C._POSIX_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_PROTECT = C._POSIX_THREAD_PRIO_PROTECT _POSIX_THREAD_PRIORITY_SCHEDULING = C._POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_THREAD_PROCESS_SHARED = C._POSIX_THREAD_PROCESS_SHARED _POSIX_THREAD_ROBUST_PRIO_INHERIT = C._POSIX_THREAD_ROBUST_PRIO_INHERIT _POSIX_THREAD_ROBUST_PRIO_PROTECT = C._POSIX_THREAD_ROBUST_PRIO_PROTECT _POSIX_THREAD_SAFE_FUNCTIONS = C._POSIX_THREAD_SAFE_FUNCTIONS _POSIX_THREAD_SPORADIC_SERVER = C._POSIX_THREAD_SPORADIC_SERVER _POSIX_THREADS = C._POSIX_THREADS _POSIX_TIMERS = C._POSIX_TIMERS _POSIX_TIMEOUTS = C._POSIX_TIMEOUTS _POSIX_TRACE = C._POSIX_TRACE _POSIX_TYPED_MEMORY_OBJECTS = C._POSIX_TYPED_MEMORY_OBJECTS _POSIX_VERSION = C._POSIX_VERSION _POSIX_V7_ILP32_OFF32 = C._POSIX_V7_ILP32_OFF32 _POSIX_V7_ILP32_OFFBIG = C._POSIX_V7_ILP32_OFFBIG _POSIX_V7_LP64_OFF64 = C._POSIX_V7_LP64_OFF64 _POSIX_V7_LPBIG_OFFBIG = C._POSIX_V7_LPBIG_OFFBIG _POSIX_V6_ILP32_OFF32 = C._POSIX_V6_ILP32_OFF32 _POSIX_V6_ILP32_OFFBIG = C._POSIX_V6_ILP32_OFFBIG _POSIX_V6_LP64_OFF64 = C._POSIX_V6_LP64_OFF64 _POSIX_V6_LPBIG_OFFBIG = C._POSIX_V6_LPBIG_OFFBIG _POSIX2_C_BIND = C._POSIX2_C_BIND _POSIX2_C_DEV = C._POSIX2_C_DEV _POSIX2_CHAR_TERM = C._POSIX2_CHAR_TERM _POSIX2_LOCALEDEF = C._POSIX2_LOCALEDEF _POSIX2_PBS = C._POSIX2_PBS _POSIX2_SW_DEV = C._POSIX2_SW_DEV _POSIX2_UPE = C._POSIX2_UPE _POSIX2_VERSION = C._POSIX2_VERSION _XOPEN_CRYPT = C._XOPEN_CRYPT _XOPEN_ENH_I18N = C._XOPEN_ENH_I18N _XOPEN_REALTIME = C._XOPEN_REALTIME _XOPEN_REALTIME_THREADS = C._XOPEN_REALTIME_THREADS _XOPEN_SHM = C._XOPEN_SHM _XOPEN_STREAMS = C._XOPEN_STREAMS _XOPEN_UNIX = C._XOPEN_UNIX _XOPEN_UUCP = C._XOPEN_UUCP _FOPEN_MAX = C.FOPEN_MAX _NAME_MAX = C.NAME_MAX _RE_DUP_MAX = C.RE_DUP_MAX _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _LINE_MAX = C.LINE_MAX _SHRT_MAX = C.SHRT_MAX _PATH_ZONEINFO = C._PATH_ZONEINFO ) // integer sizes const ( _CHAR_BIT = C.CHAR_BIT _INT_MAX = C.INT_MAX sizeofOffT = C.sizeofOffT ) go-sysconf-0.3.9/sysconf_defs_solaris.go000066400000000000000000000150471411312062400203630ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include */ import "C" // sysconf variables const ( SC_AIO_LISTIO_MAX = C._SC_AIO_LISTIO_MAX SC_AIO_MAX = C._SC_AIO_MAX SC_AIO_PRIO_DELTA_MAX = C._SC_AIO_PRIO_DELTA_MAX SC_ARG_MAX = C._SC_ARG_MAX SC_ATEXIT_MAX = C._SC_ATEXIT_MAX SC_BC_BASE_MAX = C._SC_BC_BASE_MAX SC_BC_DIM_MAX = C._SC_BC_DIM_MAX SC_BC_SCALE_MAX = C._SC_BC_SCALE_MAX SC_BC_STRING_MAX = C._SC_BC_STRING_MAX SC_CHILD_MAX = C._SC_CHILD_MAX SC_CLK_TCK = C._SC_CLK_TCK SC_COLL_WEIGHTS_MAX = C._SC_COLL_WEIGHTS_MAX SC_DELAYTIMER_MAX = C._SC_DELAYTIMER_MAX SC_EXPR_NEST_MAX = C._SC_EXPR_NEST_MAX SC_GETGR_R_SIZE_MAX = C._SC_GETGR_R_SIZE_MAX SC_GETPW_R_SIZE_MAX = C._SC_GETPW_R_SIZE_MAX SC_HOST_NAME_MAX = C._SC_HOST_NAME_MAX SC_IOV_MAX = C._SC_IOV_MAX SC_LINE_MAX = C._SC_LINE_MAX SC_LOGIN_NAME_MAX = C._SC_LOGIN_NAME_MAX SC_MQ_OPEN_MAX = C._SC_MQ_OPEN_MAX SC_MQ_PRIO_MAX = C._SC_MQ_PRIO_MAX SC_NGROUPS_MAX = C._SC_NGROUPS_MAX SC_OPEN_MAX = C._SC_OPEN_MAX SC_PAGE_SIZE = C._SC_PAGE_SIZE SC_PAGESIZE = C._SC_PAGESIZE SC_THREAD_DESTRUCTOR_ITERATIONS = C._SC_THREAD_DESTRUCTOR_ITERATIONS SC_THREAD_KEYS_MAX = C._SC_THREAD_KEYS_MAX SC_THREAD_STACK_MIN = C._SC_THREAD_STACK_MIN SC_THREAD_THREADS_MAX = C._SC_THREAD_THREADS_MAX SC_RE_DUP_MAX = C._SC_RE_DUP_MAX SC_RTSIG_MAX = C._SC_RTSIG_MAX SC_SEM_NSEMS_MAX = C._SC_SEM_NSEMS_MAX SC_SEM_VALUE_MAX = C._SC_SEM_VALUE_MAX SC_SIGQUEUE_MAX = C._SC_SIGQUEUE_MAX SC_STREAM_MAX = C._SC_STREAM_MAX SC_SYMLOOP_MAX = C._SC_SYMLOOP_MAX SC_TIMER_MAX = C._SC_TIMER_MAX SC_TTY_NAME_MAX = C._SC_TTY_NAME_MAX SC_TZNAME_MAX = C._SC_TZNAME_MAX SC_ADVISORY_INFO = C._SC_ADVISORY_INFO SC_ASYNCHRONOUS_IO = C._SC_ASYNCHRONOUS_IO SC_BARRIERS = C._SC_BARRIERS SC_CLOCK_SELECTION = C._SC_CLOCK_SELECTION SC_CPUTIME = C._SC_CPUTIME SC_FSYNC = C._SC_FSYNC SC_IPV6 = C._SC_IPV6 SC_JOB_CONTROL = C._SC_JOB_CONTROL SC_MAPPED_FILES = C._SC_MAPPED_FILES SC_MEMLOCK = C._SC_MEMLOCK SC_MEMLOCK_RANGE = C._SC_MEMLOCK_RANGE SC_MEMORY_PROTECTION = C._SC_MEMORY_PROTECTION SC_MESSAGE_PASSING = C._SC_MESSAGE_PASSING SC_MONOTONIC_CLOCK = C._SC_MONOTONIC_CLOCK SC_PRIORITIZED_IO = C._SC_PRIORITIZED_IO SC_PRIORITY_SCHEDULING = C._SC_PRIORITY_SCHEDULING SC_RAW_SOCKETS = C._SC_RAW_SOCKETS SC_READER_WRITER_LOCKS = C._SC_READER_WRITER_LOCKS SC_REALTIME_SIGNALS = C._SC_REALTIME_SIGNALS SC_REGEXP = C._SC_REGEXP SC_SAVED_IDS = C._SC_SAVED_IDS SC_SEMAPHORES = C._SC_SEMAPHORES SC_SHARED_MEMORY_OBJECTS = C._SC_SHARED_MEMORY_OBJECTS SC_SHELL = C._SC_SHELL SC_SPAWN = C._SC_SPAWN SC_SPIN_LOCKS = C._SC_SPIN_LOCKS SC_SPORADIC_SERVER = C._SC_SPORADIC_SERVER SC_SS_REPL_MAX = C._SC_SS_REPL_MAX SC_SYNCHRONIZED_IO = C._SC_SYNCHRONIZED_IO SC_THREAD_ATTR_STACKADDR = C._SC_THREAD_ATTR_STACKADDR SC_THREAD_ATTR_STACKSIZE = C._SC_THREAD_ATTR_STACKSIZE SC_THREAD_CPUTIME = C._SC_THREAD_CPUTIME SC_THREAD_PRIO_INHERIT = C._SC_THREAD_PRIO_INHERIT SC_THREAD_PRIO_PROTECT = C._SC_THREAD_PRIO_PROTECT SC_THREAD_PRIORITY_SCHEDULING = C._SC_THREAD_PRIORITY_SCHEDULING SC_THREAD_PROCESS_SHARED = C._SC_THREAD_PROCESS_SHARED SC_THREAD_SAFE_FUNCTIONS = C._SC_THREAD_SAFE_FUNCTIONS SC_THREAD_SPORADIC_SERVER = C._SC_THREAD_SPORADIC_SERVER SC_THREADS = C._SC_THREADS SC_TIMEOUTS = C._SC_TIMEOUTS SC_TIMERS = C._SC_TIMERS SC_TRACE = C._SC_TRACE SC_TRACE_EVENT_FILTER = C._SC_TRACE_EVENT_FILTER SC_TRACE_EVENT_NAME_MAX = C._SC_TRACE_EVENT_NAME_MAX SC_TRACE_INHERIT = C._SC_TRACE_INHERIT SC_TRACE_LOG = C._SC_TRACE_LOG SC_TRACE_NAME_MAX = C._SC_TRACE_NAME_MAX SC_TRACE_SYS_MAX = C._SC_TRACE_SYS_MAX SC_TRACE_USER_EVENT_MAX = C._SC_TRACE_USER_EVENT_MAX SC_TYPED_MEMORY_OBJECTS = C._SC_TYPED_MEMORY_OBJECTS SC_VERSION = C._SC_VERSION SC_V6_ILP32_OFF32 = C._SC_V6_ILP32_OFF32 SC_V6_ILP32_OFFBIG = C._SC_V6_ILP32_OFFBIG SC_V6_LP64_OFF64 = C._SC_V6_LP64_OFF64 SC_V6_LPBIG_OFFBIG = C._SC_V6_LPBIG_OFFBIG SC_2_C_BIND = C._SC_2_C_BIND SC_2_C_DEV = C._SC_2_C_DEV SC_2_C_VERSION = C._SC_2_C_VERSION SC_2_CHAR_TERM = C._SC_2_CHAR_TERM SC_2_FORT_DEV = C._SC_2_FORT_DEV SC_2_FORT_RUN = C._SC_2_FORT_RUN SC_2_LOCALEDEF = C._SC_2_LOCALEDEF SC_2_PBS = C._SC_2_PBS SC_2_PBS_ACCOUNTING = C._SC_2_PBS_ACCOUNTING SC_2_PBS_CHECKPOINT = C._SC_2_PBS_CHECKPOINT SC_2_PBS_LOCATE = C._SC_2_PBS_LOCATE SC_2_PBS_MESSAGE = C._SC_2_PBS_MESSAGE SC_2_PBS_TRACK = C._SC_2_PBS_TRACK SC_2_SW_DEV = C._SC_2_SW_DEV SC_2_UPE = C._SC_2_UPE SC_2_VERSION = C._SC_2_VERSION SC_XOPEN_CRYPT = C._SC_XOPEN_CRYPT SC_XOPEN_ENH_I18N = C._SC_XOPEN_ENH_I18N SC_XOPEN_REALTIME = C._SC_XOPEN_REALTIME SC_XOPEN_REALTIME_THREADS = C._SC_XOPEN_REALTIME_THREADS SC_XOPEN_SHM = C._SC_XOPEN_SHM SC_XOPEN_STREAMS = C._SC_XOPEN_STREAMS SC_XOPEN_UNIX = C._SC_XOPEN_UNIX SC_XOPEN_VERSION = C._SC_XOPEN_VERSION SC_XOPEN_XCU_VERSION = C._SC_XOPEN_XCU_VERSION // non-standard variables SC_PHYS_PAGES = C._SC_PHYS_PAGES SC_AVPHYS_PAGES = C._SC_AVPHYS_PAGES SC_NPROCESSORS_CONF = C._SC_NPROCESSORS_CONF SC_NPROCESSORS_ONLN = C._SC_NPROCESSORS_ONLN ) go-sysconf-0.3.9/sysconf_dragonfly.go000066400000000000000000000140741411312062400176720ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import "golang.org/x/sys/unix" const ( _HOST_NAME_MAX = _MAXHOSTNAMELEN - 1 _LOGIN_NAME_MAX = _MAXLOGNAME _SYMLOOP_MAX = _MAXSYMLINKS ) // sysconf implements sysconf(3) as in the FreeBSD 12 libc. func sysconf(name int) (int64, error) { switch name { case SC_AIO_LISTIO_MAX: return sysctl32("p1003_1b.aio_listio_max"), nil case SC_AIO_MAX: return sysctl32("p1003_1b.aio_max"), nil case SC_AIO_PRIO_DELTA_MAX: return sysctl32("p1003_1b.aio_prio_delta_max"), nil case SC_ARG_MAX: return sysctl32("kern.argmax"), nil case SC_ATEXIT_MAX: return _ATEXIT_SIZE, nil case SC_CHILD_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return rlim.Cur, nil } } return -1, nil case SC_CLK_TCK: return _CLK_TCK, nil case SC_DELAYTIMER_MAX: return yesno(sysctl32("p1003_1b.delaytimer_max")), nil case SC_GETGR_R_SIZE_MAX, SC_GETPW_R_SIZE_MAX: return -1, nil case SC_IOV_MAX: return sysctl32("kern.iov_max"), nil case SC_MQ_OPEN_MAX: return sysctl32("kern.mqueue.mq_open_max"), nil case SC_MQ_PRIO_MAX: return sysctl32("kern.mqueue.mq_prio_max"), nil case SC_NGROUPS_MAX: return sysctl32("kern.ngroups"), nil case SC_OPEN_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return rlim.Cur, nil } } return -1, nil case SC_RTSIG_MAX: return yesno(sysctl32("p1003_1b.rtsig_max")), nil case SC_SEM_NSEMS_MAX: return -1, nil case SC_SEM_VALUE_MAX: return -1, nil case SC_SIGQUEUE_MAX: return yesno(sysctl32("p1003_1b.sigqueue_max")), nil case SC_STREAM_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return rlim.Cur, nil } } return -1, nil case SC_THREAD_DESTRUCTOR_ITERATIONS: return _PTHREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _PTHREAD_KEYS_MAX, nil case SC_THREAD_PRIO_INHERIT: return _POSIX_THREAD_PRIO_INHERIT, nil case SC_THREAD_PRIO_PROTECT: return _POSIX_THREAD_PRIO_PROTECT, nil case SC_THREAD_STACK_MIN: return _PTHREAD_STACK_MIN, nil case SC_THREAD_THREADS_MAX: return -1, nil case SC_TIMER_MAX: return yesno(sysctl32("p1003_1b.timer_max")), nil case SC_TTY_NAME_MAX: return pathconf(_PATH_DEV, _PC_NAME_MAX), nil case SC_TZNAME_MAX: return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil case SC_ASYNCHRONOUS_IO: if _POSIX_ASYNCHRONOUS_IO == 0 { return sysctl64("p1003_1b.asynchronous_io"), nil } return _POSIX_ASYNCHRONOUS_IO, nil case SC_IPV6: if _POSIX_IPV6 == 0 { fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0) if err == nil && fd >= 0 { unix.Close(fd) return int64(200112), nil } return 0, nil } return _POSIX_IPV6, nil case SC_MESSAGE_PASSING: if _POSIX_MESSAGE_PASSING == 0 { return yesno(sysctl32("p1003_1b.message_passing")), nil } return _POSIX_MESSAGE_PASSING, nil case SC_PRIORITIZED_IO: if _POSIX_PRIORITIZED_IO == 0 { return yesno(sysctl32("p1003_1b.prioritized_io")), nil } return _POSIX_PRIORITIZED_IO, nil case SC_PRIORITY_SCHEDULING: if _POSIX_PRIORITY_SCHEDULING == 0 { return yesno(sysctl32("p1003_1b.priority_scheduling")), nil } return _POSIX_PRIORITY_SCHEDULING, nil case SC_REALTIME_SIGNALS: if _POSIX_REALTIME_SIGNALS == 0 { return yesno(sysctl32("p1003_1b.realtime_signals")), nil } return _POSIX_REALTIME_SIGNALS, nil case SC_SAVED_IDS: return yesno(sysctl32("kern.saved_ids")), nil case SC_SEMAPHORES: if _POSIX_SEMAPHORES == 0 { return yesno(sysctl32("p1003_1b.semaphores")), nil } return _POSIX_SEMAPHORES, nil case SC_SPAWN: return _POSIX_SPAWN, nil case SC_SPIN_LOCKS: return _POSIX_SPIN_LOCKS, nil case SC_SPORADIC_SERVER: return _POSIX_SPORADIC_SERVER, nil case SC_SYNCHRONIZED_IO: if _POSIX_SYNCHRONIZED_IO == 0 { return yesno(sysctl32("p1003_1b.synchronized_io")), nil } return _POSIX_SYNCHRONIZED_IO, nil case SC_THREAD_ATTR_STACKADDR: return _POSIX_THREAD_ATTR_STACKADDR, nil case SC_THREAD_ATTR_STACKSIZE: return _POSIX_THREAD_ATTR_STACKSIZE, nil case SC_THREAD_CPUTIME: return _POSIX_THREAD_CPUTIME, nil case SC_THREAD_PRIORITY_SCHEDULING: return _POSIX_THREAD_PRIORITY_SCHEDULING, nil case SC_THREAD_PROCESS_SHARED: return _POSIX_THREAD_PROCESS_SHARED, nil case SC_THREAD_SAFE_FUNCTIONS: return _POSIX_THREAD_SAFE_FUNCTIONS, nil case SC_THREAD_SPORADIC_SERVER: return _POSIX_THREAD_SPORADIC_SERVER, nil case SC_TIMERS: if _POSIX_TIMERS == 0 { return yesno(sysctl32("p1003_1b.timers")), nil } return _POSIX_TIMERS, nil case SC_TRACE: return _POSIX_TRACE, nil case SC_TYPED_MEMORY_OBJECTS: return _POSIX_TYPED_MEMORY_OBJECTS, nil case SC_VERSION: // TODO(tk): FreeBSD libc uses sysctl(CTL_KERN, KERN_POSIX1) return _POSIX_VERSION, nil /* TODO(tk): these need GOARCH-dependent integer size checks case SC_V6_ILP32_OFF32: return _V6_ILP32_OFF32, nil case SC_V6_ILP32_OFFBIG: return _V6_ILP32_OFFBIG, nil case SC_V6_LP64_OFF64: return _V6_LP64_OFF64, nil case SC_V6_LPBIG_OFFBIG: return _V6_LPBIG_OFFBIG, nil */ case SC_2_CHAR_TERM: return _POSIX2_CHAR_TERM, nil case SC_2_PBS, SC_2_PBS_ACCOUNTING, SC_2_PBS_CHECKPOINT, SC_2_PBS_LOCATE, SC_2_PBS_MESSAGE, SC_2_PBS_TRACK: return _POSIX2_PBS, nil case SC_2_UPE: return _POSIX2_UPE, nil case SC_XOPEN_CRYPT: return _XOPEN_CRYPT, nil case SC_XOPEN_ENH_I18N: return _XOPEN_ENH_I18N, nil case SC_XOPEN_REALTIME: return _XOPEN_REALTIME, nil case SC_XOPEN_REALTIME_THREADS: return _XOPEN_REALTIME_THREADS, nil case SC_XOPEN_SHM: return _XOPEN_SHM, nil case SC_XOPEN_STREAMS: return -1, nil case SC_XOPEN_UNIX: return _XOPEN_UNIX, nil case SC_PHYS_PAGES: return sysctl64("hw.availpages"), nil case SC_NPROCESSORS_CONF: fallthrough case SC_NPROCESSORS_ONLN: return sysctl32("hw.ncpu"), nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_freebsd.go000066400000000000000000000141201411312062400173070ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import "golang.org/x/sys/unix" const ( _HOST_NAME_MAX = _MAXHOSTNAMELEN - 1 _LOGIN_NAME_MAX = _MAXLOGNAME _SYMLOOP_MAX = _MAXSYMLINKS ) // sysconf implements sysconf(3) as in the FreeBSD 12 libc. func sysconf(name int) (int64, error) { switch name { case SC_AIO_LISTIO_MAX: return sysctl32("p1003_1b.aio_listio_max"), nil case SC_AIO_MAX: return sysctl32("p1003_1b.aio_max"), nil case SC_AIO_PRIO_DELTA_MAX: return sysctl32("p1003_1b.aio_prio_delta_max"), nil case SC_ARG_MAX: return sysctl32("kern.argmax"), nil case SC_ATEXIT_MAX: return _ATEXIT_SIZE, nil case SC_CHILD_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return rlim.Cur, nil } } return -1, nil case SC_CLK_TCK: return _CLK_TCK, nil case SC_DELAYTIMER_MAX: return sysctl32("p1003_1b.delaytimer_max"), nil case SC_GETGR_R_SIZE_MAX, SC_GETPW_R_SIZE_MAX: return -1, nil case SC_IOV_MAX: return sysctl32("kern.iov_max"), nil case SC_MQ_OPEN_MAX: return yesno(sysctl32("p1003_1b.mq_open_max")), nil case SC_MQ_PRIO_MAX: return _MQ_PRIO_MAX, nil case SC_NGROUPS_MAX: return sysctl32("kern.ngroups"), nil case SC_OPEN_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return rlim.Cur, nil } } return -1, nil case SC_RTSIG_MAX: return sysctl32("p1003_1b.rtsig_max"), nil case SC_SEM_NSEMS_MAX: return -1, nil case SC_SEM_VALUE_MAX: return _SEM_VALUE_MAX, nil case SC_SIGQUEUE_MAX: return sysctl32("p1003_1b.sigqueue_max"), nil case SC_STREAM_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err != nil { return -1, nil } if rlim.Cur == unix.RLIM_INFINITY { return -1, nil } if rlim.Cur > _LONG_MAX { return -1, unix.EOVERFLOW } if rlim.Cur > _SHRT_MAX { return _SHRT_MAX, nil } return rlim.Cur, nil case SC_THREAD_DESTRUCTOR_ITERATIONS: return _PTHREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _PTHREAD_KEYS_MAX, nil case SC_THREAD_PRIO_INHERIT: return _POSIX_THREAD_PRIO_INHERIT, nil case SC_THREAD_PRIO_PROTECT: return _POSIX_THREAD_PRIO_PROTECT, nil case SC_THREAD_STACK_MIN: return _PTHREAD_STACK_MIN, nil case SC_THREAD_THREADS_MAX: return -1, nil case SC_TIMER_MAX: return yesno(sysctl32("p1003_1b.timer_max")), nil case SC_TTY_NAME_MAX: return pathconf(_PATH_DEV, _PC_NAME_MAX), nil case SC_TZNAME_MAX: return pathconf(_PATH_ZONEINFO, _PC_NAME_MAX), nil case SC_IPV6: if _POSIX_IPV6 == 0 { fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0) if err == nil && fd >= 0 { unix.Close(fd) return int64(200112), nil } return 0, nil } return _POSIX_IPV6, nil case SC_MESSAGE_PASSING: if _POSIX_MESSAGE_PASSING == 0 { return yesno(sysctl32("p1003_1b.message_passing")), nil } return _POSIX_MESSAGE_PASSING, nil case SC_PRIORITIZED_IO: if _POSIX_PRIORITIZED_IO == 0 { return yesno(sysctl32("p1003_1b.prioritized_io")), nil } return _POSIX_PRIORITIZED_IO, nil case SC_PRIORITY_SCHEDULING: if _POSIX_PRIORITY_SCHEDULING == 0 { return yesno(sysctl32("p1003_1b.priority_scheduling")), nil } return _POSIX_PRIORITY_SCHEDULING, nil case SC_REALTIME_SIGNALS: if _POSIX_REALTIME_SIGNALS == 0 { return yesno(sysctl32("p1003_1b.realtime_signals")), nil } return _POSIX_REALTIME_SIGNALS, nil case SC_SAVED_IDS: return yesno(sysctl32("kern.saved_ids")), nil case SC_SEMAPHORES: if _POSIX_SEMAPHORES == 0 { return yesno(sysctl32("p1003_1b.semaphores")), nil } return _POSIX_SEMAPHORES, nil case SC_SPAWN: return _POSIX_SPAWN, nil case SC_SPIN_LOCKS: return _POSIX_SPIN_LOCKS, nil case SC_SPORADIC_SERVER: return _POSIX_SPORADIC_SERVER, nil case SC_SYNCHRONIZED_IO: if _POSIX_SYNCHRONIZED_IO == 0 { return yesno(sysctl32("p1003_1b.synchronized_io")), nil } return _POSIX_SYNCHRONIZED_IO, nil case SC_THREAD_ATTR_STACKADDR: return _POSIX_THREAD_ATTR_STACKADDR, nil case SC_THREAD_ATTR_STACKSIZE: return _POSIX_THREAD_ATTR_STACKSIZE, nil case SC_THREAD_CPUTIME: return _POSIX_THREAD_CPUTIME, nil case SC_THREAD_PRIORITY_SCHEDULING: return _POSIX_THREAD_PRIORITY_SCHEDULING, nil case SC_THREAD_PROCESS_SHARED: return _POSIX_THREAD_PROCESS_SHARED, nil case SC_THREAD_SAFE_FUNCTIONS: return _POSIX_THREAD_SAFE_FUNCTIONS, nil case SC_TIMERS: if _POSIX_TIMERS == 0 { return yesno(sysctl32("p1003_1b.timers")), nil } return _POSIX_TIMERS, nil case SC_TRACE: return _POSIX_TRACE, nil case SC_TYPED_MEMORY_OBJECTS: return _POSIX_TYPED_MEMORY_OBJECTS, nil case SC_VERSION: // TODO(tk): FreeBSD libc uses sysctl(CTL_KERN, KERN_POSIX1) return _POSIX_VERSION, nil /* TODO(tk): these need GOARCH-dependent integer size checks case SC_V6_ILP32_OFF32: return _V6_ILP32_OFF32, nil case SC_V6_ILP32_OFFBIG: return _V6_ILP32_OFFBIG, nil case SC_V6_LP64_OFF64: return _V6_LP64_OFF64, nil case SC_V6_LPBIG_OFFBIG: return _V6_LPBIG_OFFBIG, nil */ case SC_2_CHAR_TERM: return _POSIX2_CHAR_TERM, nil case SC_2_PBS, SC_2_PBS_ACCOUNTING, SC_2_PBS_CHECKPOINT, SC_2_PBS_LOCATE, SC_2_PBS_MESSAGE, SC_2_PBS_TRACK: return _POSIX2_PBS, nil case SC_2_UPE: return _POSIX2_UPE, nil case SC_XOPEN_CRYPT: return _XOPEN_CRYPT, nil case SC_XOPEN_ENH_I18N: return _XOPEN_ENH_I18N, nil case SC_XOPEN_REALTIME: return _XOPEN_REALTIME, nil case SC_XOPEN_REALTIME_THREADS: return _XOPEN_REALTIME_THREADS, nil case SC_XOPEN_SHM: return _XOPEN_SHM, nil case SC_XOPEN_STREAMS: return -1, nil case SC_XOPEN_UNIX: return _XOPEN_UNIX, nil case SC_PHYS_PAGES: if val, err := unix.SysctlUint64("hw.availpages"); err == nil { return int64(val), nil } return -1, nil case SC_NPROCESSORS_CONF: fallthrough case SC_NPROCESSORS_ONLN: if val, err := unix.SysctlUint32("hw.ncpu"); err == nil { return int64(val), nil } return -1, nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_generic.go000066400000000000000000000021701411312062400173130ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd // +build darwin dragonfly freebsd linux netbsd openbsd package sysconf import "os" func sysconfGeneric(name int) (int64, error) { // POSIX default values if sc, err := sysconfPOSIX(name); err == nil { return sc, nil } switch name { case SC_BC_BASE_MAX: return _BC_BASE_MAX, nil case SC_BC_DIM_MAX: return _BC_DIM_MAX, nil case SC_BC_SCALE_MAX: return _BC_SCALE_MAX, nil case SC_BC_STRING_MAX: return _BC_STRING_MAX, nil case SC_COLL_WEIGHTS_MAX: return _COLL_WEIGHTS_MAX, nil case SC_EXPR_NEST_MAX: return _EXPR_NEST_MAX, nil case SC_HOST_NAME_MAX: return _HOST_NAME_MAX, nil case SC_LINE_MAX: return _LINE_MAX, nil case SC_LOGIN_NAME_MAX: return _LOGIN_NAME_MAX, nil case SC_PAGESIZE: // same as SC_PAGE_SIZE return int64(os.Getpagesize()), nil case SC_RE_DUP_MAX: return _RE_DUP_MAX, nil case SC_SYMLOOP_MAX: return _SYMLOOP_MAX, nil } return -1, errInvalid } go-sysconf-0.3.9/sysconf_linux.go000066400000000000000000000200761411312062400170430ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import ( "bufio" "io/ioutil" "os" "runtime" "strconv" "strings" "github.com/tklauser/numcpus" "golang.org/x/sys/unix" ) const ( // CLK_TCK is a constant on Linux for all architectures except alpha and ia64. // See e.g. // https://git.musl-libc.org/cgit/musl/tree/src/conf/sysconf.c#n30 // https://github.com/containerd/cgroups/pull/12 // https://lore.kernel.org/lkml/agtlq6$iht$1@penguin.transmeta.com/ _SYSTEM_CLK_TCK = 100 ) func readProcFsInt64(path string, fallback int64) int64 { data, err := ioutil.ReadFile(path) if err != nil { return fallback } i, err := strconv.ParseInt(string(data[:len(data)-1]), 0, 64) if err != nil { return fallback } return i } // getMemPages computes mem*unit/os.Getpagesize(), but avoids overflowing int64. func getMemPages(mem uint64, unit uint32) int64 { pageSize := os.Getpagesize() for unit > 1 && pageSize > 1 { unit >>= 1 pageSize >>= 1 } mem *= uint64(unit) for pageSize > 1 { pageSize >>= 1 mem >>= 1 } return int64(mem) } func getPhysPages() int64 { var si unix.Sysinfo_t err := unix.Sysinfo(&si) if err != nil { return int64(0) } return getMemPages(uint64(si.Totalram), si.Unit) } func getAvPhysPages() int64 { var si unix.Sysinfo_t err := unix.Sysinfo(&si) if err != nil { return int64(0) } return getMemPages(uint64(si.Freeram), si.Unit) } func getNprocsSysfs() (int64, error) { n, err := numcpus.GetOnline() return int64(n), err } func getNprocsProcStat() (int64, error) { f, err := os.Open("/proc/stat") if err != nil { return -1, err } defer f.Close() count := int64(0) s := bufio.NewScanner(f) for s.Scan() { if line := strings.TrimSpace(s.Text()); strings.HasPrefix(line, "cpu") { l := strings.SplitN(line, " ", 2) _, err := strconv.ParseInt(l[0][3:], 10, 64) if err == nil { count++ } } else { // The current format of /proc/stat has all the // cpu* lines at the beginning. Assume this // stays this way. break } } return count, nil } func getNprocs() int64 { count, err := getNprocsSysfs() if err == nil { return count } count, err = getNprocsProcStat() if err == nil { return count } // default to the value determined at runtime startup if all else fails return int64(runtime.NumCPU()) } func getNprocsConf() int64 { count, err := numcpus.GetConfigured() if err == nil { return int64(count) } // TODO(tk): fall back to reading /proc/cpuinfo on legacy systems // without sysfs? return getNprocs() } func hasClock(clockid int32) bool { var res unix.Timespec if err := unix.ClockGetres(clockid, &res); err != nil { return false } return true } func max(a, b int64) int64 { if a > b { return a } return b } func sysconf(name int) (int64, error) { switch name { case SC_AIO_LISTIO_MAX: return -1, nil case SC_AIO_MAX: return -1, nil case SC_AIO_PRIO_DELTA_MAX: return _AIO_PRIO_DELTA_MAX, nil case SC_ARG_MAX: argMax := int64(_POSIX_ARG_MAX) var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_STACK, &rlim); err == nil { argMax = max(argMax, int64(rlim.Cur/4)) } return argMax, nil case SC_ATEXIT_MAX: return _INT_MAX, nil case SC_CHILD_MAX: childMax := int64(-1) var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil && rlim.Cur != unix.RLIM_INFINITY { childMax = int64(rlim.Cur) } return childMax, nil case SC_CLK_TCK: return _SYSTEM_CLK_TCK, nil case SC_DELAYTIMER_MAX: return _DELAYTIMER_MAX, nil case SC_GETGR_R_SIZE_MAX: return _NSS_BUFLEN_GROUP, nil case SC_GETPW_R_SIZE_MAX: return _NSS_BUFLEN_PASSWD, nil case SC_MQ_OPEN_MAX: return -1, nil case SC_MQ_PRIO_MAX: return _MQ_PRIO_MAX, nil case SC_NGROUPS_MAX: return readProcFsInt64("/proc/sys/kernel/ngroups_max", _NGROUPS_MAX), nil case SC_OPEN_MAX: openMax := int64(_OPEN_MAX) var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { openMax = int64(rlim.Cur) } return openMax, nil case SC_RTSIG_MAX: return _RTSIG_MAX, nil case SC_SEM_NSEMS_MAX: return -1, nil case SC_SEM_VALUE_MAX: return _SEM_VALUE_MAX, nil case SC_SIGQUEUE_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_SIGPENDING, &rlim); err == nil { return int64(rlim.Cur), nil } return readProcFsInt64("/proc/sys/kernel/rtsig-max", _POSIX_SIGQUEUE_MAX), nil case SC_STREAM_MAX: return _STREAM_MAX, nil case SC_THREAD_DESTRUCTOR_ITERATIONS: return _POSIX_THREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _PTHREAD_KEYS_MAX, nil case SC_THREAD_PRIO_INHERIT: return _POSIX_THREAD_PRIO_INHERIT, nil case SC_THREAD_PRIO_PROTECT: return _POSIX_THREAD_PRIO_PROTECT, nil case SC_THREAD_STACK_MIN: return _PTHREAD_STACK_MIN, nil case SC_THREAD_THREADS_MAX: return -1, nil case SC_TIMER_MAX: return -1, nil case SC_TTY_NAME_MAX: return _TTY_NAME_MAX, nil case SC_TZNAME_MAX: return -1, nil case SC_CPUTIME: if hasClock(unix.CLOCK_PROCESS_CPUTIME_ID) { return _POSIX_VERSION, nil } return -1, nil case SC_MONOTONIC_CLOCK: if hasClock(unix.CLOCK_MONOTONIC) { return _POSIX_VERSION, nil } return -1, nil case SC_SAVED_IDS: return _POSIX_SAVED_IDS, nil case SC_SPAWN: return _POSIX_SPAWN, nil case SC_SPIN_LOCKS: return _POSIX_SPIN_LOCKS, nil case SC_SPORADIC_SERVER: return _POSIX_SPORADIC_SERVER, nil case SC_SYNCHRONIZED_IO: return _POSIX_SYNCHRONIZED_IO, nil case SC_THREAD_ATTR_STACKADDR: return _POSIX_THREAD_ATTR_STACKADDR, nil case SC_THREAD_ATTR_STACKSIZE: return _POSIX_THREAD_ATTR_STACKSIZE, nil case SC_THREAD_CPUTIME: if hasClock(unix.CLOCK_THREAD_CPUTIME_ID) { return _POSIX_VERSION, nil } return -1, nil case SC_THREAD_PRIORITY_SCHEDULING: return _POSIX_THREAD_PRIORITY_SCHEDULING, nil case SC_THREAD_PROCESS_SHARED: return _POSIX_THREAD_PROCESS_SHARED, nil case SC_THREAD_SAFE_FUNCTIONS: return _POSIX_THREAD_SAFE_FUNCTIONS, nil case SC_THREAD_SPORADIC_SERVER: return _POSIX_THREAD_SPORADIC_SERVER, nil case SC_TRACE: return _POSIX_TRACE, nil case SC_TRACE_EVENT_FILTER: return _POSIX_TRACE_EVENT_FILTER, nil case SC_TRACE_EVENT_NAME_MAX: return -1, nil case SC_TRACE_INHERIT: return _POSIX_TRACE_INHERIT, nil case SC_TRACE_LOG: return _POSIX_TRACE_LOG, nil case SC_TRACE_NAME_MAX: return -1, nil case SC_TRACE_SYS_MAX: return -1, nil case SC_TRACE_USER_EVENT_MAX: return -1, nil case SC_TYPED_MEMORY_OBJECTS: return _POSIX_TYPED_MEMORY_OBJECTS, nil case SC_V7_ILP32_OFF32: return _POSIX_V7_ILP32_OFF32, nil case SC_V7_ILP32_OFFBIG: return _POSIX_V7_ILP32_OFFBIG, nil case SC_V7_LP64_OFF64: return _POSIX_V7_LP64_OFF64, nil case SC_V7_LPBIG_OFFBIG: return _POSIX_V7_LPBIG_OFFBIG, nil case SC_V6_ILP32_OFF32: return _POSIX_V6_ILP32_OFF32, nil case SC_V6_ILP32_OFFBIG: return _POSIX_V6_ILP32_OFFBIG, nil case SC_V6_LP64_OFF64: return _POSIX_V6_LP64_OFF64, nil case SC_V6_LPBIG_OFFBIG: return _POSIX_V6_LPBIG_OFFBIG, nil case SC_2_C_VERSION: return _POSIX2_C_VERSION, nil case SC_2_CHAR_TERM: return _POSIX2_CHAR_TERM, nil case SC_2_PBS, SC_2_PBS_ACCOUNTING, SC_2_PBS_CHECKPOINT, SC_2_PBS_LOCATE, SC_2_PBS_MESSAGE, SC_2_PBS_TRACK: return -1, nil case SC_2_UPE: return -1, nil case SC_XOPEN_CRYPT: // removed in glibc 2.28 return -1, nil case SC_XOPEN_ENH_I18N: return _XOPEN_ENH_I18N, nil case SC_XOPEN_REALTIME: return _XOPEN_REALTIME, nil case SC_XOPEN_REALTIME_THREADS: return _XOPEN_REALTIME_THREADS, nil case SC_XOPEN_SHM: return _XOPEN_SHM, nil case SC_XOPEN_STREAMS: return -1, nil case SC_XOPEN_UNIX: return _XOPEN_UNIX, nil case SC_XOPEN_VERSION: return _XOPEN_VERSION, nil case SC_XOPEN_XCU_VERSION: return _XOPEN_XCU_VERSION, nil case SC_PHYS_PAGES: return getPhysPages(), nil case SC_AVPHYS_PAGES: return getAvPhysPages(), nil case SC_NPROCESSORS_CONF: return getNprocsConf(), nil case SC_NPROCESSORS_ONLN: return getNprocs(), nil case SC_UIO_MAXIOV: // same as _SC_IOV_MAX return _UIO_MAXIOV, nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_linux_test.go000066400000000000000000000014671411312062400201050ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import ( "os" "testing" ) // TestGetNproc tests that sysfs and /proc/stat report the same number of online // CPUs. func TestGetNproc(t *testing.T) { if _, err := os.Stat("/sys/devices/system/cpu/online"); err != nil { t.Skipf("sysfs not mounted, skipping") } nprocSysfs, err := getNprocsSysfs() if err != nil { t.Fatalf("getNprocsSysfs: %v", err) } nprocProcStat, err := getNprocsProcStat() if err != nil { t.Fatalf("getNprocsProcStat: %v", err) } if nprocSysfs != nprocProcStat { t.Errorf("Number of online CPUs not matching. getNprocsSysfs returned %v, getNprocsProcStat returned %v", nprocSysfs, nprocProcStat) } } go-sysconf-0.3.9/sysconf_netbsd.go000066400000000000000000000072541411312062400171660ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import ( "sync" "golang.org/x/sys/unix" ) const ( _HOST_NAME_MAX = _MAXHOSTNAMELEN _LOGIN_NAME_MAX = _MAXLOGNAME + 1 _SYMLOOP_MAX = _MAXSYMLINKS _POSIX2_C_DEV = -1 _POSIX2_UPE = -1 ) var ( clktck int64 clktckOnce sync.Once ) func sysconfPOSIX(name int) (int64, error) { // NetBSD does not define all _POSIX_* values used in sysconf_posix.go // Handle the supported ones here. switch name { case SC_SHELL: return _POSIX_SHELL, nil case SC_VERSION: return _POSIX_VERSION, nil } return -1, errInvalid } func sysconf(name int) (int64, error) { // NetBSD uses sysctl to get some of these values. For the user.* namespace, // calls get handled by user_sysctl in /usr/src/lib/libc/gen/sysctl.c // Duplicate the relevant values here. switch name { case SC_ARG_MAX: return sysctl32("kern.argmax"), nil case SC_CHILD_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return int64(rlim.Cur), nil } } return -1, nil case SC_STREAM_MAX: // sysctl("user.stream_max") return _FOPEN_MAX, nil case SC_TTY_NAME_MAX: return pathconf(_PATH_DEV, _PC_NAME_MAX), nil case SC_CLK_TCK: clktckOnce.Do(func() { clktck = -1 if ci, err := unix.SysctlClockinfo("kern.clockrate"); err == nil { clktck = int64(ci.Hz) } }) return clktck, nil case SC_NGROUPS_MAX: return sysctl32("kern.ngroups"), nil case SC_JOB_CONTROL: return sysctl32("kern.job_control"), nil case SC_OPEN_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { return int64(rlim.Cur), nil } return -1, nil case SC_TZNAME_MAX: // sysctl("user.tzname_max") return _NAME_MAX, nil // 1003.1b case SC_FSYNC: return sysctl32("kern.fsync"), nil case SC_MAPPED_FILES: return sysctl32("kern.mapped_files"), nil case SC_MONOTONIC_CLOCK: return sysctl32("kern.monotonic_clock"), nil case SC_SEMAPHORES: return sysctl32("kern.posix_semaphores"), nil case SC_TIMERS: return sysctl32("kern.posix_timers"), nil // 1003.1c case SC_LOGIN_NAME_MAX: return sysctl32("kern.login_name_max"), nil case SC_THREADS: return sysctl32("kern.posix_threads"), nil // 1003.1j case SC_BARRIERS: return sysctl32("kern.posix_barriers"), nil // 1003.2 case SC_2_VERSION: // sysctl("user.posix2_version") return _POSIX2_VERSION, nil case SC_2_UPE: // sysctl("user.posix2_upe") return _POSIX2_UPE, nil // XPG 4.2 case SC_IOV_MAX: return sysctl32("kern.iov_max"), nil // 1003.1-2001, XSI Option Group case SC_AIO_LISTIO_MAX: return sysctl32("kern.aio_listio_max"), nil case SC_AIO_MAX: return sysctl32("kern.aio_max"), nil case SC_ASYNCHRONOUS_IO: return sysctl32("kern.posix_aio"), nil case SC_MQ_OPEN_MAX: return sysctl32("kern.mqueue.mq_open_max"), nil case SC_MQ_PRIO_MAX: return sysctl32("kern.mqueue.mq_prio_max"), nil case SC_ATEXIT_MAX: // sysctl("user.atexit_max") return -1, nil // TODO // Extensions case SC_NPROCESSORS_CONF: return sysctl32("hw.ncpu"), nil case SC_NPROCESSORS_ONLN: return sysctl32("hw.ncpuonline"), nil // Linux/Solaris case SC_PHYS_PAGES: return sysctl64("hw.physmem64") / int64(unix.Getpagesize()), nil // Native case SC_THREAD_DESTRUCTOR_ITERATIONS: return _POSIX_THREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _POSIX_THREAD_KEYS_MAX, nil case SC_THREAD_STACK_MIN: return int64(unix.Getpagesize()), nil case SC_THREAD_THREADS_MAX: return sysctl32("kern.maxproc"), nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_openbsd.go000066400000000000000000000157121411312062400173370ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import "golang.org/x/sys/unix" // sysconf implements sysconf(3) as in the OpenBSD 6.3 libc. func sysconf(name int) (int64, error) { switch name { case SC_AIO_LISTIO_MAX, SC_AIO_MAX, SC_AIO_PRIO_DELTA_MAX: return -1, nil case SC_ARG_MAX: return sysctl32("kern.argmax"), nil case SC_ATEXIT_MAX: return -1, nil case SC_CHILD_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NPROC, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return int64(rlim.Cur), nil } } return -1, nil case SC_CLK_TCK: return _CLK_TCK, nil case SC_DELAYTIMER_MAX: return -1, nil case SC_GETGR_R_SIZE_MAX: return _GR_BUF_LEN, nil case SC_GETPW_R_SIZE_MAX: return _PW_BUF_LEN, nil case SC_IOV_MAX: return _IOV_MAX, nil case SC_LOGIN_NAME_MAX: return _LOGIN_NAME_MAX, nil case SC_NGROUPS_MAX: return sysctl32("kern.ngroups"), nil case SC_OPEN_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { return int64(rlim.Cur), nil } } return -1, nil case SC_SEM_NSEMS_MAX: return -1, nil case SC_SEM_VALUE_MAX: return _SEM_VALUE_MAX, nil case SC_SIGQUEUE_MAX: return -1, nil case SC_STREAM_MAX: var rlim unix.Rlimit if err := unix.Getrlimit(unix.RLIMIT_NOFILE, &rlim); err == nil { if rlim.Cur != unix.RLIM_INFINITY { if rlim.Cur > _SHRT_MAX { return _SHRT_MAX, nil } return int64(rlim.Cur), nil } } return -1, nil case SC_THREAD_DESTRUCTOR_ITERATIONS: return _PTHREAD_DESTRUCTOR_ITERATIONS, nil case SC_THREAD_KEYS_MAX: return _PTHREAD_KEYS_MAX, nil case SC_THREAD_STACK_MIN: return _PTHREAD_STACK_MIN, nil case SC_THREAD_THREADS_MAX: return -1, nil case SC_TIMER_MAX: return -1, nil case SC_TTY_NAME_MAX: return _TTY_NAME_MAX, nil case SC_TZNAME_MAX: return _NAME_MAX, nil case SC_BARRIERS: return _POSIX_BARRIERS, nil case SC_FSYNC: return _POSIX_FSYNC, nil case SC_IPV6: if _POSIX_IPV6 == 0 { fd, err := unix.Socket(unix.AF_INET6, unix.SOCK_DGRAM, 0) if err == nil && fd >= 0 { unix.Close(fd) return int64(200112), nil } return 0, nil } return _POSIX_IPV6, nil case SC_JOB_CONTROL: return _POSIX_JOB_CONTROL, nil case SC_MAPPED_FILES: return _POSIX_MAPPED_FILES, nil case SC_MONOTONIC_CLOCK: return _POSIX_MONOTONIC_CLOCK, nil case SC_SAVED_IDS: return _POSIX_SAVED_IDS, nil case SC_SEMAPHORES: return _POSIX_SEMAPHORES, nil case SC_SPAWN: return _POSIX_SPAWN, nil case SC_SPIN_LOCKS: return _POSIX_SPIN_LOCKS, nil case SC_SPORADIC_SERVER: return _POSIX_SPORADIC_SERVER, nil case SC_SYNCHRONIZED_IO: return _POSIX_SYNCHRONIZED_IO, nil case SC_THREAD_ATTR_STACKADDR: return _POSIX_THREAD_ATTR_STACKADDR, nil case SC_THREAD_ATTR_STACKSIZE: return _POSIX_THREAD_ATTR_STACKSIZE, nil case SC_THREAD_CPUTIME: return _POSIX_THREAD_CPUTIME, nil case SC_THREAD_PRIO_INHERIT: return _POSIX_THREAD_PRIO_INHERIT, nil case SC_THREAD_PRIO_PROTECT: return _POSIX_THREAD_PRIO_PROTECT, nil case SC_THREAD_PRIORITY_SCHEDULING: return _POSIX_THREAD_PRIORITY_SCHEDULING, nil case SC_THREAD_PROCESS_SHARED: return _POSIX_THREAD_PROCESS_SHARED, nil case SC_THREAD_ROBUST_PRIO_INHERIT: return _POSIX_THREAD_ROBUST_PRIO_INHERIT, nil case SC_THREAD_ROBUST_PRIO_PROTECT: return _POSIX_THREAD_ROBUST_PRIO_PROTECT, nil case SC_THREAD_SAFE_FUNCTIONS: return _POSIX_THREAD_SAFE_FUNCTIONS, nil case SC_THREAD_SPORADIC_SERVER: return _POSIX_THREAD_SPORADIC_SERVER, nil case SC_THREADS: return _POSIX_THREADS, nil case SC_TIMEOUTS: return _POSIX_TIMEOUTS, nil case SC_TIMERS: return _POSIX_TIMERS, nil case SC_TRACE, SC_TRACE_EVENT_FILTER, SC_TRACE_EVENT_NAME_MAX, SC_TRACE_INHERIT, SC_TRACE_LOG: return _POSIX_TRACE, nil case SC_TYPED_MEMORY_OBJECTS: return _POSIX_TYPED_MEMORY_OBJECTS, nil case SC_V7_ILP32_OFF32: return _POSIX_V7_ILP32_OFF32, nil case SC_V7_ILP32_OFFBIG: if _POSIX_V7_ILP32_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofLong*_CHAR_BIT == 32 && unix.SizeofPtr*_CHAR_BIT == 32 && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _POSIX_V7_ILP32_OFFBIG, nil case SC_V7_LP64_OFF64: if _POSIX_V7_LP64_OFF64 == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofLong*_CHAR_BIT == 64 && unix.SizeofPtr*_CHAR_BIT == 64 && sizeofOffT*_CHAR_BIT == 64 { return 1, nil } return -1, nil } return _POSIX_V7_LP64_OFF64, nil case SC_V7_LPBIG_OFFBIG: if _POSIX_V7_LPBIG_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT >= 32 && unix.SizeofLong*_CHAR_BIT >= 64 && unix.SizeofPtr*_CHAR_BIT >= 64 && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _POSIX_V7_LPBIG_OFFBIG, nil case SC_V6_ILP32_OFF32: return _POSIX_V6_ILP32_OFF32, nil case SC_V6_ILP32_OFFBIG: if _POSIX_V6_ILP32_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofLong*_CHAR_BIT == 32 && unix.SizeofPtr*_CHAR_BIT == 32 && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _POSIX_V6_ILP32_OFFBIG, nil case SC_V6_LP64_OFF64: if _POSIX_V6_LP64_OFF64 == 0 { if unix.SizeofInt*_CHAR_BIT == 32 && unix.SizeofLong*_CHAR_BIT == 64 && unix.SizeofPtr*_CHAR_BIT == 64 && sizeofOffT*_CHAR_BIT == 64 { return 1, nil } return -1, nil } return _POSIX_V6_LP64_OFF64, nil case SC_V6_LPBIG_OFFBIG: if _POSIX_V6_LPBIG_OFFBIG == 0 { if unix.SizeofInt*_CHAR_BIT >= 32 && unix.SizeofLong*_CHAR_BIT >= 64 && unix.SizeofPtr*_CHAR_BIT >= 64 && sizeofOffT*_CHAR_BIT >= 64 { return 1, nil } return -1, nil } return _POSIX_V6_LPBIG_OFFBIG, nil case SC_2_CHAR_TERM: return _POSIX2_CHAR_TERM, nil case SC_2_PBS, SC_2_PBS_ACCOUNTING, SC_2_PBS_CHECKPOINT, SC_2_PBS_LOCATE, SC_2_PBS_MESSAGE, SC_2_PBS_TRACK: return _POSIX2_PBS, nil case SC_2_UPE: return _POSIX2_UPE, nil case SC_2_VERSION: return _POSIX2_VERSION, nil case SC_XOPEN_CRYPT: return _XOPEN_CRYPT, nil case SC_XOPEN_ENH_I18N: return _XOPEN_ENH_I18N, nil case SC_XOPEN_REALTIME: return _XOPEN_REALTIME, nil case SC_XOPEN_REALTIME_THREADS: return _XOPEN_REALTIME_THREADS, nil case SC_XOPEN_SHM: return _XOPEN_SHM, nil case SC_XOPEN_STREAMS: return _XOPEN_STREAMS, nil case SC_XOPEN_UNIX: return _XOPEN_UNIX, nil case SC_XOPEN_UUCP: return _XOPEN_UUCP, nil case SC_AVPHYS_PAGES: if uvm, err := unix.SysctlUvmexp("vm.uvmexp"); err == nil { return int64(uvm.Free), nil } return -1, nil case SC_PHYS_PAGES: return sysctl64("hw.physmem") / int64(unix.Getpagesize()), nil case SC_NPROCESSORS_CONF: return sysctl32("hw.ncpu"), nil case SC_NPROCESSORS_ONLN: if val, err := unix.SysctlUint32("hw.ncpuonline"); err == nil { return int64(val), nil } return sysctl32("hw.ncpu"), nil } return sysconfGeneric(name) } go-sysconf-0.3.9/sysconf_posix.go000066400000000000000000000042331411312062400170430ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || linux || openbsd // +build darwin dragonfly freebsd linux openbsd package sysconf func sysconfPOSIX(name int) (int64, error) { switch name { case SC_ADVISORY_INFO: return _POSIX_ADVISORY_INFO, nil case SC_ASYNCHRONOUS_IO: return _POSIX_ASYNCHRONOUS_IO, nil case SC_BARRIERS: return _POSIX_BARRIERS, nil case SC_CLOCK_SELECTION: return _POSIX_CLOCK_SELECTION, nil case SC_CPUTIME: return _POSIX_CPUTIME, nil case SC_FSYNC: return _POSIX_FSYNC, nil case SC_IPV6: return _POSIX_IPV6, nil case SC_JOB_CONTROL: return _POSIX_JOB_CONTROL, nil case SC_MAPPED_FILES: return _POSIX_MAPPED_FILES, nil case SC_MEMLOCK: return _POSIX_MEMLOCK, nil case SC_MEMLOCK_RANGE: return _POSIX_MEMLOCK_RANGE, nil case SC_MONOTONIC_CLOCK: return _POSIX_MONOTONIC_CLOCK, nil case SC_MEMORY_PROTECTION: return _POSIX_MEMORY_PROTECTION, nil case SC_MESSAGE_PASSING: return _POSIX_MESSAGE_PASSING, nil case SC_PRIORITIZED_IO: return _POSIX_PRIORITIZED_IO, nil case SC_PRIORITY_SCHEDULING: return _POSIX_PRIORITY_SCHEDULING, nil case SC_RAW_SOCKETS: return _POSIX_RAW_SOCKETS, nil case SC_READER_WRITER_LOCKS: return _POSIX_READER_WRITER_LOCKS, nil case SC_REALTIME_SIGNALS: return _POSIX_REALTIME_SIGNALS, nil case SC_REGEXP: return _POSIX_REGEXP, nil case SC_SEMAPHORES: return _POSIX_SEMAPHORES, nil case SC_SHARED_MEMORY_OBJECTS: return _POSIX_SHARED_MEMORY_OBJECTS, nil case SC_SHELL: return _POSIX_SHELL, nil case SC_THREADS: return _POSIX_THREADS, nil case SC_TIMEOUTS: return _POSIX_TIMEOUTS, nil case SC_TIMERS: return _POSIX_TIMERS, nil case SC_VERSION: return _POSIX_VERSION, nil case SC_2_C_BIND: return _POSIX2_C_BIND, nil case SC_2_C_DEV: return _POSIX2_C_DEV, nil case SC_2_FORT_DEV: return -1, nil case SC_2_FORT_RUN: return -1, nil case SC_2_LOCALEDEF: return _POSIX2_LOCALEDEF, nil case SC_2_SW_DEV: return _POSIX2_SW_DEV, nil case SC_2_VERSION: return _POSIX2_VERSION, nil } return -1, errInvalid } go-sysconf-0.3.9/sysconf_solaris.go000066400000000000000000000005001411312062400173460ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package sysconf import "golang.org/x/sys/unix" func sysconf(name int) (int64, error) { if name < 0 { return -1, errInvalid } return unix.Sysconf(name) } go-sysconf-0.3.9/sysconf_test.go000066400000000000000000000044051411312062400166610ustar00rootroot00000000000000// Copyright 2018 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris // +build darwin dragonfly freebsd linux netbsd openbsd solaris package sysconf_test import ( "bytes" "os/exec" "strconv" "strings" "testing" "github.com/tklauser/go-sysconf" ) func TestSysconf(t *testing.T) { // Just test the basic functionality here. The comparison tests against // C.sysconf are in the test directory. val, err := sysconf.Sysconf(sysconf.SC_CLK_TCK) if err != nil { t.Errorf("Sysconf(SC_CLK_TCK): %v", err) } t.Logf("clock ticks = %v", val) _, err = sysconf.Sysconf(-1) if err == nil { t.Errorf("Sysconf(-1) returned %v, want non-nil", err) } } func TestOpenMax(t *testing.T) { openMax, err := sysconf.Sysconf(sysconf.SC_OPEN_MAX) if err != nil { t.Fatalf("Sysconf(SC_OPEN_MAX): %v", err) } // from https://pubs.opengroup.org/onlinepubs/009695399/basedefs/limits.h.html _POSIX_OPEN_MAX := int64(20) // according to sysconf(3), OPEN_MAX must be ≥ _POSIX_OPEN_MAX if openMax < _POSIX_OPEN_MAX { t.Errorf("Sysconf(SC_OPEN_MAX) (%d) expected to be greater or equal _POSIX_OPEN_MAX (%d)", openMax, _POSIX_OPEN_MAX) } } func TestGetconf(t *testing.T) { testCases := []struct { goVar int name string }{ {sysconf.SC_CLK_TCK, "CLK_TCK"}, {sysconf.SC_HOST_NAME_MAX, "HOST_NAME_MAX"}, {sysconf.SC_OPEN_MAX, "OPEN_MAX"}, {sysconf.SC_PAGE_SIZE, "PAGE_SIZE"}, } getconf, err := exec.LookPath("getconf") if err != nil { t.Skipf("getconf not found in PATH: %v", err) } for _, tc := range testCases { cmd := exec.Command(getconf, tc.name) var out bytes.Buffer cmd.Stdout = &out if err := cmd.Run(); err != nil { // Ignore getconf errors and skip the test t.Skipf("failed to invoke getconf: %v", err) break } want, err := strconv.ParseInt(strings.TrimSpace(out.String()), 10, 64) if err != nil { t.Errorf("strconv.ParseInt: %v", err) } got, err := sysconf.Sysconf(tc.goVar) if err != nil { t.Errorf("Sysconf(%s/%d): %v", tc.name, tc.goVar, err) } if got != want { t.Errorf("Sysconf(%v/%d) returned %v, want %v", tc.name, tc.goVar, got, want) } } } go-sysconf-0.3.9/sysconf_unsupported.go000066400000000000000000000007251411312062400202730ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris package sysconf import ( "fmt" "runtime" ) func sysconf(name int) (int64, error) { return -1, fmt.Errorf("unsupported on %s", runtime.GOOS) } go-sysconf-0.3.9/sysconf_values_freebsd.go000066400000000000000000000004651411312062400206750ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include */ import "C" const ( _LONG_MAX = C.LONG_MAX _SHRT_MAX = C.SHRT_MAX ) go-sysconf-0.3.9/sysconf_values_linux.go000066400000000000000000000145461411312062400204270ustar00rootroot00000000000000// Copyright 2021 Tobias Klauser. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. //go:build ignore // +build ignore package sysconf /* #include #include #include #include #include // for NSS_BUFLEN_GROUP #include // for NSS_BUFLEN_PASSWD // This comes from the Linux kernel header. #ifndef OPEN_MAX # define OPEN_MAX 256 #endif // POSIX_STREAM_MAX is 8, but glibc returns FOPEN_MAX if STREAM_MAX is not // defined. #ifndef STREAM_MAX # define STREAM_MAX FOPEN_MAX #endif #ifndef SYMLOOP_MAX # define SYMLOOP_MAX -1 // undefined #endif // These are not defined in on all platforms. #ifndef _POSIX_V6_ILP32_OFF32 # define _POSIX_V6_ILP32_OFF32 -1 #endif #ifndef _POSIX_V6_ILP32_OFFBIG # define _POSIX_V6_ILP32_OFFBIG -1 #endif #ifndef _POSIX_V6_LP64_OFF64 # define _POSIX_V6_LP64_OFF64 -1 #endif #ifndef _POSIX_V6_LPBIG_OFFBIG # define _POSIX_V6_LPBIG_OFFBIG -1 #endif #ifndef _POSIX_V6_LPBIG_OFFBIG # define _POSIX_V6_LPBIG_OFFBIG -1 #endif #ifndef _POSIX_V7_ILP32_OFF32 # define _POSIX_V7_ILP32_OFF32 -1 #endif #ifndef _POSIX_V7_ILP32_OFFBIG # define _POSIX_V7_ILP32_OFFBIG -1 #endif #ifndef _POSIX_V7_LP64_OFF64 # define _POSIX_V7_LP64_OFF64 -1 #endif #ifndef _POSIX_V7_LPBIG_OFFBIG # define _POSIX_V7_LPBIG_OFFBIG -1 #endif */ import "C" // sysconf values, some of these are GOARCH-dependent const ( _AIO_PRIO_DELTA_MAX = C.AIO_PRIO_DELTA_MAX _BC_BASE_MAX = C.BC_BASE_MAX _BC_DIM_MAX = C.BC_DIM_MAX _BC_SCALE_MAX = C.BC_SCALE_MAX _BC_STRING_MAX = C.BC_STRING_MAX _COLL_WEIGHTS_MAX = C.COLL_WEIGHTS_MAX _DELAYTIMER_MAX = C.DELAYTIMER_MAX _EXPR_NEST_MAX = C.EXPR_NEST_MAX _HOST_NAME_MAX = C.HOST_NAME_MAX _LINE_MAX = C.LINE_MAX _LOGIN_NAME_MAX = C.LOGIN_NAME_MAX _MQ_PRIO_MAX = C.MQ_PRIO_MAX _NGROUPS_MAX = C.NGROUPS_MAX _NSS_BUFLEN_GROUP = C.NSS_BUFLEN_GROUP _NSS_BUFLEN_PASSWD = C.NSS_BUFLEN_PASSWD _OPEN_MAX = C.OPEN_MAX _PTHREAD_KEYS_MAX = C.PTHREAD_KEYS_MAX _PTHREAD_STACK_MIN = C.PTHREAD_STACK_MIN _RE_DUP_MAX = C.RE_DUP_MAX _RTSIG_MAX = C.RTSIG_MAX _SEM_VALUE_MAX = C.SEM_VALUE_MAX _STREAM_MAX = C.STREAM_MAX _SYMLOOP_MAX = C.SYMLOOP_MAX _TTY_NAME_MAX = C.TTY_NAME_MAX _UIO_MAXIOV = C.UIO_MAXIOV _INT_MAX = C.INT_MAX _POSIX_ADVISORY_INFO = C._POSIX_ADVISORY_INFO _POSIX_ARG_MAX = C._POSIX_ARG_MAX _POSIX_ASYNCHRONOUS_IO = C._POSIX_ASYNCHRONOUS_IO _POSIX_BARRIERS = C._POSIX_BARRIERS _POSIX_CHILD_MAX = C._POSIX_CHILD_MAX _POSIX_CLOCK_SELECTION = C._POSIX_CLOCK_SELECTION _POSIX_CPUTIME = C._POSIX_CPUTIME _POSIX_FSYNC = C._POSIX_FSYNC _POSIX_IPV6 = C._POSIX_IPV6 _POSIX_JOB_CONTROL = C._POSIX_JOB_CONTROL _POSIX_MAPPED_FILES = C._POSIX_MAPPED_FILES _POSIX_MEMLOCK = C._POSIX_MEMLOCK _POSIX_MEMLOCK_RANGE = C._POSIX_MEMLOCK_RANGE _POSIX_MEMORY_PROTECTION = C._POSIX_MEMORY_PROTECTION _POSIX_MESSAGE_PASSING = C._POSIX_MESSAGE_PASSING _POSIX_MONOTONIC_CLOCK = C._POSIX_MONOTONIC_CLOCK _POSIX_PRIORITIZED_IO = C._POSIX_PRIORITIZED_IO _POSIX_PRIORITY_SCHEDULING = C._POSIX_PRIORITY_SCHEDULING _POSIX_RAW_SOCKETS = C._POSIX_RAW_SOCKETS _POSIX_READER_WRITER_LOCKS = C._POSIX_READER_WRITER_LOCKS _POSIX_REALTIME_SIGNALS = C._POSIX_REALTIME_SIGNALS _POSIX_REGEXP = C._POSIX_REGEXP _POSIX_SAVED_IDS = C._POSIX_SAVED_IDS _POSIX_SEMAPHORES = C._POSIX_SEMAPHORES _POSIX_SHARED_MEMORY_OBJECTS = C._POSIX_SHARED_MEMORY_OBJECTS _POSIX_SHELL = C._POSIX_SHELL _POSIX_SIGQUEUE_MAX = C._POSIX_SIGQUEUE_MAX _POSIX_SPAWN = C._POSIX_SPAWN _POSIX_SPIN_LOCKS = C._POSIX_SPIN_LOCKS _POSIX_SPORADIC_SERVER = C._POSIX_SPORADIC_SERVER _POSIX_SYNCHRONIZED_IO = C._POSIX_SYNCHRONIZED_IO _POSIX_THREAD_ATTR_STACKADDR = C._POSIX_THREAD_ATTR_STACKADDR _POSIX_THREAD_ATTR_STACKSIZE = C._POSIX_THREAD_ATTR_STACKSIZE _POSIX_THREAD_DESTRUCTOR_ITERATIONS = C._POSIX_THREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_PRIO_INHERIT = C._POSIX_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_PROTECT = C._POSIX_THREAD_PRIO_PROTECT _POSIX_THREAD_PRIORITY_SCHEDULING = C._POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_THREAD_PROCESS_SHARED = C._POSIX_THREAD_PROCESS_SHARED _POSIX_THREAD_SAFE_FUNCTIONS = C._POSIX_THREAD_SAFE_FUNCTIONS _POSIX_THREAD_SPORADIC_SERVER = C._POSIX_THREAD_SPORADIC_SERVER _POSIX_THREADS = C._POSIX_THREADS _POSIX_TIMEOUTS = C._POSIX_TIMEOUTS _POSIX_TIMERS = C._POSIX_TIMERS _POSIX_TRACE = C._POSIX_TRACE _POSIX_TRACE_EVENT_FILTER = C._POSIX_TRACE_EVENT_FILTER _POSIX_TRACE_INHERIT = C._POSIX_TRACE_INHERIT _POSIX_TRACE_LOG = C._POSIX_TRACE_LOG _POSIX_TYPED_MEMORY_OBJECTS = C._POSIX_TYPED_MEMORY_OBJECTS _POSIX_VERSION = C._POSIX_VERSION _POSIX_V7_ILP32_OFF32 = C._POSIX_V7_ILP32_OFF32 _POSIX_V7_ILP32_OFFBIG = C._POSIX_V7_ILP32_OFFBIG _POSIX_V7_LP64_OFF64 = C._POSIX_V7_LP64_OFF64 _POSIX_V7_LPBIG_OFFBIG = C._POSIX_V7_LPBIG_OFFBIG _POSIX_V6_ILP32_OFF32 = C._POSIX_V6_ILP32_OFF32 _POSIX_V6_ILP32_OFFBIG = C._POSIX_V6_ILP32_OFFBIG _POSIX_V6_LP64_OFF64 = C._POSIX_V6_LP64_OFF64 _POSIX_V6_LPBIG_OFFBIG = C._POSIX_V6_LPBIG_OFFBIG _POSIX2_C_BIND = C._POSIX2_C_BIND _POSIX2_C_DEV = C._POSIX2_C_DEV _POSIX2_C_VERSION = C._POSIX2_C_VERSION _POSIX2_CHAR_TERM = C._POSIX2_CHAR_TERM _POSIX2_LOCALEDEF = C._POSIX2_LOCALEDEF _POSIX2_SW_DEV = C._POSIX2_SW_DEV _POSIX2_VERSION = C._POSIX2_VERSION _XOPEN_ENH_I18N = C._XOPEN_ENH_I18N _XOPEN_REALTIME = C._XOPEN_REALTIME _XOPEN_REALTIME_THREADS = C._XOPEN_REALTIME_THREADS _XOPEN_SHM = C._XOPEN_SHM _XOPEN_UNIX = C._XOPEN_UNIX _XOPEN_VERSION = C._XOPEN_VERSION _XOPEN_XCU_VERSION = C._XOPEN_XCU_VERSION ) go-sysconf-0.3.9/zsysconf_defs_darwin.go000066400000000000000000000201751411312062400203630ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_defs_darwin.go //go:build darwin // +build darwin package sysconf const ( SC_AIO_LISTIO_MAX = 0x2a SC_AIO_MAX = 0x2b SC_AIO_PRIO_DELTA_MAX = 0x2c SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x6b SC_BC_BASE_MAX = 0x9 SC_BC_DIM_MAX = 0xa SC_BC_SCALE_MAX = 0xb SC_BC_STRING_MAX = 0xc SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x3 SC_COLL_WEIGHTS_MAX = 0xd SC_DELAYTIMER_MAX = 0x2d SC_EXPR_NEST_MAX = 0xe SC_GETGR_R_SIZE_MAX = 0x46 SC_GETPW_R_SIZE_MAX = 0x47 SC_HOST_NAME_MAX = 0x48 SC_IOV_MAX = 0x38 SC_LINE_MAX = 0xf SC_LOGIN_NAME_MAX = 0x49 SC_MQ_OPEN_MAX = 0x2e SC_MQ_PRIO_MAX = 0x4b SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0x1d SC_PAGESIZE = 0x1d SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55 SC_THREAD_KEYS_MAX = 0x56 SC_THREAD_STACK_MIN = 0x5d SC_THREAD_THREADS_MAX = 0x5e SC_RE_DUP_MAX = 0x10 SC_RTSIG_MAX = 0x30 SC_SEM_NSEMS_MAX = 0x31 SC_SEM_VALUE_MAX = 0x32 SC_SIGQUEUE_MAX = 0x33 SC_STREAM_MAX = 0x1a SC_SYMLOOP_MAX = 0x78 SC_TIMER_MAX = 0x34 SC_TTY_NAME_MAX = 0x65 SC_TZNAME_MAX = 0x1b SC_ADVISORY_INFO = 0x41 SC_ASYNCHRONOUS_IO = 0x1c SC_BARRIERS = 0x42 SC_CLOCK_SELECTION = 0x43 SC_CPUTIME = 0x44 SC_FSYNC = 0x26 SC_IPV6 = 0x76 SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x2f SC_MEMLOCK = 0x1e SC_MEMLOCK_RANGE = 0x1f SC_MEMORY_PROTECTION = 0x20 SC_MESSAGE_PASSING = 0x21 SC_MONOTONIC_CLOCK = 0x4a SC_PRIORITIZED_IO = 0x22 SC_PRIORITY_SCHEDULING = 0x23 SC_RAW_SOCKETS = 0x77 SC_READER_WRITER_LOCKS = 0x4c SC_REALTIME_SIGNALS = 0x24 SC_REGEXP = 0x4d SC_SAVED_IDS = 0x7 SC_SEMAPHORES = 0x25 SC_SHARED_MEMORY_OBJECTS = 0x27 SC_SHELL = 0x4e SC_SPAWN = 0x4f SC_SPIN_LOCKS = 0x50 SC_SPORADIC_SERVER = 0x51 SC_SS_REPL_MAX = 0x7e SC_SYNCHRONIZED_IO = 0x28 SC_THREAD_ATTR_STACKADDR = 0x52 SC_THREAD_ATTR_STACKSIZE = 0x53 SC_THREAD_CPUTIME = 0x54 SC_THREAD_PRIO_INHERIT = 0x57 SC_THREAD_PRIO_PROTECT = 0x58 SC_THREAD_PRIORITY_SCHEDULING = 0x59 SC_THREAD_PROCESS_SHARED = 0x5a SC_THREAD_SAFE_FUNCTIONS = 0x5b SC_THREAD_SPORADIC_SERVER = 0x5c SC_THREADS = 0x60 SC_TIMEOUTS = 0x5f SC_TIMERS = 0x29 SC_TRACE = 0x61 SC_TRACE_EVENT_FILTER = 0x62 SC_TRACE_EVENT_NAME_MAX = 0x7f SC_TRACE_INHERIT = 0x63 SC_TRACE_LOG = 0x64 SC_TRACE_NAME_MAX = 0x80 SC_TRACE_SYS_MAX = 0x81 SC_TRACE_USER_EVENT_MAX = 0x82 SC_TYPED_MEMORY_OBJECTS = 0x66 SC_VERSION = 0x8 SC_V6_ILP32_OFF32 = 0x67 SC_V6_ILP32_OFFBIG = 0x68 SC_V6_LP64_OFF64 = 0x69 SC_V6_LPBIG_OFFBIG = 0x6a SC_2_C_BIND = 0x12 SC_2_C_DEV = 0x13 SC_2_CHAR_TERM = 0x14 SC_2_FORT_DEV = 0x15 SC_2_FORT_RUN = 0x16 SC_2_LOCALEDEF = 0x17 SC_2_PBS = 0x3b SC_2_PBS_ACCOUNTING = 0x3c SC_2_PBS_CHECKPOINT = 0x3d SC_2_PBS_LOCATE = 0x3e SC_2_PBS_MESSAGE = 0x3f SC_2_PBS_TRACK = 0x40 SC_2_SW_DEV = 0x18 SC_2_UPE = 0x19 SC_2_VERSION = 0x11 SC_XOPEN_CRYPT = 0x6c SC_XOPEN_ENH_I18N = 0x6d SC_XOPEN_REALTIME = 0x6f SC_XOPEN_REALTIME_THREADS = 0x70 SC_XOPEN_SHM = 0x71 SC_XOPEN_STREAMS = 0x72 SC_XOPEN_UNIX = 0x73 SC_XOPEN_VERSION = 0x74 SC_XOPEN_XCU_VERSION = 0x79 SC_PHYS_PAGES = 0xc8 SC_NPROCESSORS_CONF = 0x39 SC_NPROCESSORS_ONLN = 0x3a ) const ( _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0x2 _EXPR_NEST_MAX = 0x20 _IOV_MAX = 0x400 _LINE_MAX = 0x800 _NAME_MAX = 0xff _RE_DUP_MAX = 0xff _CLK_TCK = 0x64 _MAXHOSTNAMELEN = 0x100 _MAXLOGNAME = 0xff _MAXSYMLINKS = 0x20 _POSIX_ADVISORY_INFO = -0x1 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = -0x1 _POSIX_BARRIERS = -0x1 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = -0x1 _POSIX_CPUTIME = -0x1 _POSIX_FSYNC = 0x30db0 _POSIX_IPV6 = 0x30db0 _POSIX_JOB_CONTROL = 0x30db0 _POSIX_MAPPED_FILES = 0x30db0 _POSIX_MEMLOCK = -0x1 _POSIX_MEMLOCK_RANGE = -0x1 _POSIX_MEMORY_PROTECTION = 0x30db0 _POSIX_MESSAGE_PASSING = -0x1 _POSIX_MONOTONIC_CLOCK = -0x1 _POSIX_PRIORITIZED_IO = -0x1 _POSIX_PRIORITY_SCHEDULING = -0x1 _POSIX_RAW_SOCKETS = -0x1 _POSIX_READER_WRITER_LOCKS = 0x30db0 _POSIX_REALTIME_SIGNALS = -0x1 _POSIX_REGEXP = 0x30db0 _POSIX_SEM_VALUE_MAX = 0x7fff _POSIX_SEMAPHORES = -0x1 _POSIX_SHARED_MEMORY_OBJECTS = -0x1 _POSIX_SHELL = 0x30db0 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = -0x1 _POSIX_SPIN_LOCKS = -0x1 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SS_REPL_MAX = 0x4 _POSIX_SYNCHRONIZED_IO = -0x1 _POSIX_THREAD_ATTR_STACKADDR = 0x30db0 _POSIX_THREAD_ATTR_STACKSIZE = 0x30db0 _POSIX_THREAD_CPUTIME = -0x1 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_KEYS_MAX = 0x80 _POSIX_THREAD_PRIO_INHERIT = -0x1 _POSIX_THREAD_PRIO_PROTECT = -0x1 _POSIX_THREAD_PRIORITY_SCHEDULING = -0x1 _POSIX_THREAD_PROCESS_SHARED = 0x30db0 _POSIX_THREAD_SAFE_FUNCTIONS = 0x30db0 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x30db0 _POSIX_TIMEOUTS = -0x1 _POSIX_TIMERS = -0x1 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_EVENT_NAME_MAX = 0x1e _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TRACE_NAME_MAX = 0x8 _POSIX_TRACE_SYS_MAX = 0x8 _POSIX_TRACE_USER_EVENT_MAX = 0x20 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x30db0 _V6_ILP32_OFF32 = -0x1 _V6_ILP32_OFFBIG = -0x1 _V6_LP64_OFF64 = 0x1 _V6_LPBIG_OFFBIG = 0x1 _POSIX2_C_BIND = 0x30db0 _POSIX2_C_DEV = 0x30db0 _POSIX2_CHAR_TERM = 0x30db0 _POSIX2_LOCALEDEF = 0x30db0 _POSIX2_PBS = -0x1 _POSIX2_SW_DEV = 0x30db0 _POSIX2_UPE = 0x30db0 _POSIX2_VERSION = 0x30db0 _XOPEN_CRYPT = 0x1 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = -0x1 _XOPEN_REALTIME_THREADS = -0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x258 _XOPEN_XCU_VERSION = 0x4 _PTHREAD_DESTRUCTOR_ITERATIONS = 0x4 _PTHREAD_KEYS_MAX = 0x200 _PTHREAD_STACK_MIN = 0x2000 ) const ( _PC_NAME_MAX = 0x4 _PATH_ZONEINFO = "/usr/share/zoneinfo" ) const ( _CHAR_BIT = 0x8 _INT_MAX = 0x7fffffff sizeofOffT = 0x8 ) go-sysconf-0.3.9/zsysconf_defs_dragonfly.go000066400000000000000000000164421411312062400210660ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_defs_dragonfly.go //go:build dragonfly // +build dragonfly package sysconf const ( SC_AIO_LISTIO_MAX = 0x2a SC_AIO_MAX = 0x2b SC_AIO_PRIO_DELTA_MAX = 0x2c SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x6b SC_BC_BASE_MAX = 0x9 SC_BC_DIM_MAX = 0xa SC_BC_SCALE_MAX = 0xb SC_BC_STRING_MAX = 0xc SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x3 SC_COLL_WEIGHTS_MAX = 0xd SC_DELAYTIMER_MAX = 0x2d SC_EXPR_NEST_MAX = 0xe SC_GETGR_R_SIZE_MAX = 0x46 SC_GETPW_R_SIZE_MAX = 0x47 SC_HOST_NAME_MAX = 0x48 SC_IOV_MAX = 0x38 SC_LINE_MAX = 0xf SC_LOGIN_NAME_MAX = 0x49 SC_MQ_OPEN_MAX = 0x2e SC_MQ_PRIO_MAX = 0x4b SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0x2f SC_PAGESIZE = 0x2f SC_RE_DUP_MAX = 0x10 SC_RTSIG_MAX = 0x30 SC_SEM_NSEMS_MAX = 0x31 SC_SEM_VALUE_MAX = 0x32 SC_SIGQUEUE_MAX = 0x33 SC_STREAM_MAX = 0x1a SC_SYMLOOP_MAX = 0x78 SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55 SC_THREAD_KEYS_MAX = 0x56 SC_THREAD_STACK_MIN = 0x5d SC_THREAD_THREADS_MAX = 0x5e SC_TIMER_MAX = 0x34 SC_TTY_NAME_MAX = 0x65 SC_TZNAME_MAX = 0x1b SC_ADVISORY_INFO = 0x41 SC_ASYNCHRONOUS_IO = 0x1c SC_BARRIERS = 0x42 SC_CLOCK_SELECTION = 0x43 SC_CPUTIME = 0x44 SC_FSYNC = 0x26 SC_IPV6 = 0x76 SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x1d SC_MEMLOCK = 0x1e SC_MEMLOCK_RANGE = 0x1f SC_MEMORY_PROTECTION = 0x20 SC_MESSAGE_PASSING = 0x21 SC_MONOTONIC_CLOCK = 0x4a SC_PRIORITIZED_IO = 0x22 SC_PRIORITY_SCHEDULING = 0x23 SC_RAW_SOCKETS = 0x77 SC_READER_WRITER_LOCKS = 0x4c SC_REALTIME_SIGNALS = 0x24 SC_REGEXP = 0x4d SC_SAVED_IDS = 0x7 SC_SEMAPHORES = 0x25 SC_SHARED_MEMORY_OBJECTS = 0x27 SC_SHELL = 0x4e SC_SPAWN = 0x4f SC_SPIN_LOCKS = 0x50 SC_SPORADIC_SERVER = 0x51 SC_SYNCHRONIZED_IO = 0x28 SC_THREAD_ATTR_STACKADDR = 0x52 SC_THREAD_ATTR_STACKSIZE = 0x53 SC_THREAD_CPUTIME = 0x54 SC_THREAD_PRIO_INHERIT = 0x57 SC_THREAD_PRIO_PROTECT = 0x58 SC_THREAD_PRIORITY_SCHEDULING = 0x59 SC_THREAD_PROCESS_SHARED = 0x5a SC_THREAD_SAFE_FUNCTIONS = 0x5b SC_THREAD_SPORADIC_SERVER = 0x5c SC_THREADS = 0x60 SC_TIMEOUTS = 0x5f SC_TIMERS = 0x29 SC_TRACE = 0x61 SC_TRACE_EVENT_FILTER = 0x62 SC_TRACE_INHERIT = 0x63 SC_TRACE_LOG = 0x64 SC_TYPED_MEMORY_OBJECTS = 0x66 SC_VERSION = 0x8 SC_V6_ILP32_OFF32 = 0x67 SC_V6_ILP32_OFFBIG = 0x68 SC_V6_LP64_OFF64 = 0x69 SC_V6_LPBIG_OFFBIG = 0x6a SC_2_C_BIND = 0x12 SC_2_C_DEV = 0x13 SC_2_CHAR_TERM = 0x14 SC_2_FORT_DEV = 0x15 SC_2_FORT_RUN = 0x16 SC_2_LOCALEDEF = 0x17 SC_2_PBS = 0x3b SC_2_PBS_ACCOUNTING = 0x3c SC_2_PBS_CHECKPOINT = 0x3d SC_2_PBS_LOCATE = 0x3e SC_2_PBS_MESSAGE = 0x3f SC_2_PBS_TRACK = 0x40 SC_2_SW_DEV = 0x18 SC_2_UPE = 0x19 SC_2_VERSION = 0x11 SC_XOPEN_CRYPT = 0x6c SC_XOPEN_ENH_I18N = 0x6d SC_XOPEN_REALTIME = 0x6f SC_XOPEN_REALTIME_THREADS = 0x70 SC_XOPEN_SHM = 0x71 SC_XOPEN_STREAMS = 0x72 SC_XOPEN_UNIX = 0x73 SC_XOPEN_VERSION = 0x74 SC_XOPEN_XCU_VERSION = 0x75 SC_PHYS_PAGES = 0x79 SC_NPROCESSORS_CONF = 0x39 SC_NPROCESSORS_ONLN = 0x3a ) const ( _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xa _EXPR_NEST_MAX = 0x20 _LINE_MAX = 0x800 _RE_DUP_MAX = 0xff _CLK_TCK = 0x80 _MAXHOSTNAMELEN = 0x100 _MAXLOGNAME = 0x11 _MAXSYMLINKS = 0x20 _ATEXIT_SIZE = 0x20 _POSIX_ADVISORY_INFO = -0x1 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x0 _POSIX_BARRIERS = 0x30db0 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = -0x1 _POSIX_CPUTIME = 0x30db0 _POSIX_FSYNC = 0x30db0 _POSIX_IPV6 = 0x0 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x30db0 _POSIX_MEMLOCK = -0x1 _POSIX_MEMLOCK_RANGE = 0x30db0 _POSIX_MEMORY_PROTECTION = 0x30db0 _POSIX_MESSAGE_PASSING = 0x30db0 _POSIX_MONOTONIC_CLOCK = 0x30db0 _POSIX_PRIORITIZED_IO = -0x1 _POSIX_PRIORITY_SCHEDULING = 0x30db0 _POSIX_RAW_SOCKETS = 0x30db0 _POSIX_READER_WRITER_LOCKS = 0x30db0 _POSIX_REALTIME_SIGNALS = 0x30db0 _POSIX_REGEXP = 0x1 _POSIX_SEM_VALUE_MAX = 0x7fff _POSIX_SEMAPHORES = 0x30db0 _POSIX_SHARED_MEMORY_OBJECTS = 0x30db0 _POSIX_SHELL = 0x1 _POSIX_SPAWN = 0x30db0 _POSIX_SPIN_LOCKS = 0x30db0 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = -0x1 _POSIX_THREAD_ATTR_STACKADDR = 0x30db0 _POSIX_THREAD_ATTR_STACKSIZE = 0x30db0 _POSIX_THREAD_CPUTIME = 0x30db0 _POSIX_THREAD_PRIO_INHERIT = 0x30db0 _POSIX_THREAD_PRIO_PROTECT = 0x30db0 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x30db0 _POSIX_THREAD_PROCESS_SHARED = -0x1 _POSIX_THREAD_SAFE_FUNCTIONS = -0x1 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x30db0 _POSIX_TIMEOUTS = 0x30db0 _POSIX_TIMERS = 0x30db0 _POSIX_TRACE = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x30db0 _V6_ILP32_OFF32 = -0x1 _V6_ILP32_OFFBIG = 0x0 _V6_LP64_OFF64 = 0x0 _V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_CHAR_TERM = 0x1 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_PBS = -0x1 _POSIX2_SW_DEV = 0x31069 _POSIX2_UPE = 0x31069 _POSIX2_VERSION = 0x30a2c _XOPEN_CRYPT = -0x1 _XOPEN_ENH_I18N = -0x1 _XOPEN_REALTIME = -0x1 _XOPEN_REALTIME_THREADS = -0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = -0x1 _PTHREAD_DESTRUCTOR_ITERATIONS = 0x4 _PTHREAD_KEYS_MAX = 0x100 _PTHREAD_STACK_MIN = 0x4000 ) const ( _PC_NAME_MAX = 0x4 _PATH_DEV = "/dev/" _PATH_ZONEINFO = "/usr/share/zoneinfo" ) go-sysconf-0.3.9/zsysconf_defs_freebsd.go000066400000000000000000000164501411312062400205120ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_defs_freebsd.go //go:build freebsd // +build freebsd package sysconf const ( SC_AIO_LISTIO_MAX = 0x2a SC_AIO_MAX = 0x2b SC_AIO_PRIO_DELTA_MAX = 0x2c SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x6b SC_BC_BASE_MAX = 0x9 SC_BC_DIM_MAX = 0xa SC_BC_SCALE_MAX = 0xb SC_BC_STRING_MAX = 0xc SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x3 SC_COLL_WEIGHTS_MAX = 0xd SC_DELAYTIMER_MAX = 0x2d SC_EXPR_NEST_MAX = 0xe SC_GETGR_R_SIZE_MAX = 0x46 SC_GETPW_R_SIZE_MAX = 0x47 SC_HOST_NAME_MAX = 0x48 SC_IOV_MAX = 0x38 SC_LINE_MAX = 0xf SC_LOGIN_NAME_MAX = 0x49 SC_MQ_OPEN_MAX = 0x2e SC_MQ_PRIO_MAX = 0x4b SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0x2f SC_PAGESIZE = 0x2f SC_RE_DUP_MAX = 0x10 SC_RTSIG_MAX = 0x30 SC_SEM_NSEMS_MAX = 0x31 SC_SEM_VALUE_MAX = 0x32 SC_SIGQUEUE_MAX = 0x33 SC_STREAM_MAX = 0x1a SC_SYMLOOP_MAX = 0x78 SC_THREAD_DESTRUCTOR_ITERATIONS = 0x55 SC_THREAD_KEYS_MAX = 0x56 SC_THREAD_STACK_MIN = 0x5d SC_THREAD_THREADS_MAX = 0x5e SC_TIMER_MAX = 0x34 SC_TTY_NAME_MAX = 0x65 SC_TZNAME_MAX = 0x1b SC_ADVISORY_INFO = 0x41 SC_ASYNCHRONOUS_IO = 0x1c SC_BARRIERS = 0x42 SC_CLOCK_SELECTION = 0x43 SC_CPUTIME = 0x44 SC_FSYNC = 0x26 SC_IPV6 = 0x76 SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x1d SC_MEMLOCK = 0x1e SC_MEMLOCK_RANGE = 0x1f SC_MEMORY_PROTECTION = 0x20 SC_MESSAGE_PASSING = 0x21 SC_MONOTONIC_CLOCK = 0x4a SC_PRIORITIZED_IO = 0x22 SC_PRIORITY_SCHEDULING = 0x23 SC_RAW_SOCKETS = 0x77 SC_READER_WRITER_LOCKS = 0x4c SC_REALTIME_SIGNALS = 0x24 SC_REGEXP = 0x4d SC_SAVED_IDS = 0x7 SC_SEMAPHORES = 0x25 SC_SHARED_MEMORY_OBJECTS = 0x27 SC_SHELL = 0x4e SC_SPAWN = 0x4f SC_SPIN_LOCKS = 0x50 SC_SPORADIC_SERVER = 0x51 SC_SYNCHRONIZED_IO = 0x28 SC_THREAD_ATTR_STACKADDR = 0x52 SC_THREAD_ATTR_STACKSIZE = 0x53 SC_THREAD_CPUTIME = 0x54 SC_THREAD_PRIO_INHERIT = 0x57 SC_THREAD_PRIO_PROTECT = 0x58 SC_THREAD_PRIORITY_SCHEDULING = 0x59 SC_THREAD_PROCESS_SHARED = 0x5a SC_THREAD_SAFE_FUNCTIONS = 0x5b SC_THREAD_SPORADIC_SERVER = 0x5c SC_THREADS = 0x60 SC_TIMEOUTS = 0x5f SC_TIMERS = 0x29 SC_TRACE = 0x61 SC_TRACE_EVENT_FILTER = 0x62 SC_TRACE_INHERIT = 0x63 SC_TRACE_LOG = 0x64 SC_TYPED_MEMORY_OBJECTS = 0x66 SC_VERSION = 0x8 SC_V6_ILP32_OFF32 = 0x67 SC_V6_ILP32_OFFBIG = 0x68 SC_V6_LP64_OFF64 = 0x69 SC_V6_LPBIG_OFFBIG = 0x6a SC_2_C_BIND = 0x12 SC_2_C_DEV = 0x13 SC_2_CHAR_TERM = 0x14 SC_2_FORT_DEV = 0x15 SC_2_FORT_RUN = 0x16 SC_2_LOCALEDEF = 0x17 SC_2_PBS = 0x3b SC_2_PBS_ACCOUNTING = 0x3c SC_2_PBS_CHECKPOINT = 0x3d SC_2_PBS_LOCATE = 0x3e SC_2_PBS_MESSAGE = 0x3f SC_2_PBS_TRACK = 0x40 SC_2_SW_DEV = 0x18 SC_2_UPE = 0x19 SC_2_VERSION = 0x11 SC_XOPEN_CRYPT = 0x6c SC_XOPEN_ENH_I18N = 0x6d SC_XOPEN_REALTIME = 0x6f SC_XOPEN_REALTIME_THREADS = 0x70 SC_XOPEN_SHM = 0x71 SC_XOPEN_STREAMS = 0x72 SC_XOPEN_UNIX = 0x73 SC_XOPEN_VERSION = 0x74 SC_XOPEN_XCU_VERSION = 0x75 SC_PHYS_PAGES = 0x79 SC_NPROCESSORS_CONF = 0x39 SC_NPROCESSORS_ONLN = 0x3a ) const ( _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xa _EXPR_NEST_MAX = 0x20 _LINE_MAX = 0x800 _MQ_PRIO_MAX = 0x40 _RE_DUP_MAX = 0xff _SEM_VALUE_MAX = 0x7fffffff _CLK_TCK = 0x80 _MAXHOSTNAMELEN = 0x100 _MAXLOGNAME = 0x21 _MAXSYMLINKS = 0x20 _ATEXIT_SIZE = 0x20 _POSIX_ADVISORY_INFO = 0x30db0 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x30db0 _POSIX_BARRIERS = 0x30db0 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = -0x1 _POSIX_CPUTIME = 0x30db0 _POSIX_FSYNC = 0x30db0 _POSIX_IPV6 = 0x0 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x30db0 _POSIX_MEMLOCK = -0x1 _POSIX_MEMLOCK_RANGE = 0x30db0 _POSIX_MEMORY_PROTECTION = 0x30db0 _POSIX_MESSAGE_PASSING = 0x30db0 _POSIX_MONOTONIC_CLOCK = 0x30db0 _POSIX_PRIORITIZED_IO = -0x1 _POSIX_PRIORITY_SCHEDULING = 0x0 _POSIX_RAW_SOCKETS = 0x30db0 _POSIX_READER_WRITER_LOCKS = 0x30db0 _POSIX_REALTIME_SIGNALS = 0x30db0 _POSIX_REGEXP = 0x1 _POSIX_SEM_VALUE_MAX = 0x7fff _POSIX_SEMAPHORES = 0x30db0 _POSIX_SHARED_MEMORY_OBJECTS = 0x30db0 _POSIX_SHELL = 0x1 _POSIX_SPAWN = 0x30db0 _POSIX_SPIN_LOCKS = 0x30db0 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = -0x1 _POSIX_THREAD_ATTR_STACKADDR = 0x30db0 _POSIX_THREAD_ATTR_STACKSIZE = 0x30db0 _POSIX_THREAD_CPUTIME = 0x30db0 _POSIX_THREAD_PRIO_INHERIT = 0x30db0 _POSIX_THREAD_PRIO_PROTECT = 0x30db0 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x30db0 _POSIX_THREAD_PROCESS_SHARED = 0x30db0 _POSIX_THREAD_SAFE_FUNCTIONS = -0x1 _POSIX_THREADS = 0x30db0 _POSIX_TIMEOUTS = 0x30db0 _POSIX_TIMERS = 0x30db0 _POSIX_TRACE = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x30db0 _V6_ILP32_OFF32 = -0x1 _V6_ILP32_OFFBIG = 0x0 _V6_LP64_OFF64 = 0x0 _V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x30db0 _POSIX2_C_DEV = -0x1 _POSIX2_CHAR_TERM = 0x1 _POSIX2_LOCALEDEF = -0x1 _POSIX2_PBS = -0x1 _POSIX2_SW_DEV = -0x1 _POSIX2_UPE = 0x30db0 _POSIX2_VERSION = 0x30a2c _XOPEN_CRYPT = -0x1 _XOPEN_ENH_I18N = -0x1 _XOPEN_REALTIME = -0x1 _XOPEN_REALTIME_THREADS = -0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = -0x1 _PTHREAD_DESTRUCTOR_ITERATIONS = 0x4 _PTHREAD_KEYS_MAX = 0x100 _PTHREAD_STACK_MIN = 0x800 ) const ( _PC_NAME_MAX = 0x4 _PATH_DEV = "/dev/" _PATH_ZONEINFO = "/usr/share/zoneinfo" ) go-sysconf-0.3.9/zsysconf_defs_linux.go000066400000000000000000000114001411312062400202250ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_defs_linux.go //go:build linux // +build linux package sysconf const ( SC_AIO_LISTIO_MAX = 0x17 SC_AIO_MAX = 0x18 SC_AIO_PRIO_DELTA_MAX = 0x19 SC_ARG_MAX = 0x0 SC_ATEXIT_MAX = 0x57 SC_BC_BASE_MAX = 0x24 SC_BC_DIM_MAX = 0x25 SC_BC_SCALE_MAX = 0x26 SC_BC_STRING_MAX = 0x27 SC_CHILD_MAX = 0x1 SC_CLK_TCK = 0x2 SC_COLL_WEIGHTS_MAX = 0x28 SC_DELAYTIMER_MAX = 0x1a SC_EXPR_NEST_MAX = 0x2a SC_GETGR_R_SIZE_MAX = 0x45 SC_GETPW_R_SIZE_MAX = 0x46 SC_HOST_NAME_MAX = 0xb4 SC_IOV_MAX = 0x3c SC_LINE_MAX = 0x2b SC_LOGIN_NAME_MAX = 0x47 SC_MQ_OPEN_MAX = 0x1b SC_MQ_PRIO_MAX = 0x1c SC_NGROUPS_MAX = 0x3 SC_OPEN_MAX = 0x4 SC_PAGE_SIZE = 0x1e SC_PAGESIZE = 0x1e SC_THREAD_DESTRUCTOR_ITERATIONS = 0x49 SC_THREAD_KEYS_MAX = 0x4a SC_THREAD_STACK_MIN = 0x4b SC_THREAD_THREADS_MAX = 0x4c SC_RE_DUP_MAX = 0x2c SC_RTSIG_MAX = 0x1f SC_SEM_NSEMS_MAX = 0x20 SC_SEM_VALUE_MAX = 0x21 SC_SIGQUEUE_MAX = 0x22 SC_STREAM_MAX = 0x5 SC_SYMLOOP_MAX = 0xad SC_TIMER_MAX = 0x23 SC_TTY_NAME_MAX = 0x48 SC_TZNAME_MAX = 0x6 SC_ADVISORY_INFO = 0x84 SC_ASYNCHRONOUS_IO = 0xc SC_BARRIERS = 0x85 SC_CLOCK_SELECTION = 0x89 SC_CPUTIME = 0x8a SC_FSYNC = 0xf SC_IPV6 = 0xeb SC_JOB_CONTROL = 0x7 SC_MAPPED_FILES = 0x10 SC_MEMLOCK = 0x11 SC_MEMLOCK_RANGE = 0x12 SC_MEMORY_PROTECTION = 0x13 SC_MESSAGE_PASSING = 0x14 SC_MONOTONIC_CLOCK = 0x95 SC_PRIORITIZED_IO = 0xd SC_PRIORITY_SCHEDULING = 0xa SC_RAW_SOCKETS = 0xec SC_READER_WRITER_LOCKS = 0x99 SC_REALTIME_SIGNALS = 0x9 SC_REGEXP = 0x9b SC_SAVED_IDS = 0x8 SC_SEMAPHORES = 0x15 SC_SHARED_MEMORY_OBJECTS = 0x16 SC_SHELL = 0x9d SC_SPAWN = 0x9f SC_SPIN_LOCKS = 0x9a SC_SPORADIC_SERVER = 0xa0 SC_SS_REPL_MAX = 0xf1 SC_SYNCHRONIZED_IO = 0xe SC_THREAD_ATTR_STACKADDR = 0x4d SC_THREAD_ATTR_STACKSIZE = 0x4e SC_THREAD_CPUTIME = 0x8b SC_THREAD_PRIO_INHERIT = 0x50 SC_THREAD_PRIO_PROTECT = 0x51 SC_THREAD_PRIORITY_SCHEDULING = 0x4f SC_THREAD_PROCESS_SHARED = 0x52 SC_THREAD_ROBUST_PRIO_INHERIT = 0xf7 SC_THREAD_ROBUST_PRIO_PROTECT = 0xf8 SC_THREAD_SAFE_FUNCTIONS = 0x44 SC_THREAD_SPORADIC_SERVER = 0xa1 SC_THREADS = 0x43 SC_TIMEOUTS = 0xa4 SC_TIMERS = 0xb SC_TRACE = 0xb5 SC_TRACE_EVENT_FILTER = 0xb6 SC_TRACE_EVENT_NAME_MAX = 0xf2 SC_TRACE_INHERIT = 0xb7 SC_TRACE_LOG = 0xb8 SC_TRACE_NAME_MAX = 0xf3 SC_TRACE_SYS_MAX = 0xf4 SC_TRACE_USER_EVENT_MAX = 0xf5 SC_TYPED_MEMORY_OBJECTS = 0xa5 SC_VERSION = 0x1d SC_V7_ILP32_OFF32 = 0xed SC_V7_ILP32_OFFBIG = 0xee SC_V7_LP64_OFF64 = 0xef SC_V7_LPBIG_OFFBIG = 0xf0 SC_V6_ILP32_OFF32 = 0xb0 SC_V6_ILP32_OFFBIG = 0xb1 SC_V6_LP64_OFF64 = 0xb2 SC_V6_LPBIG_OFFBIG = 0xb3 SC_2_C_BIND = 0x2f SC_2_C_DEV = 0x30 SC_2_C_VERSION = 0x60 SC_2_CHAR_TERM = 0x5f SC_2_FORT_DEV = 0x31 SC_2_FORT_RUN = 0x32 SC_2_LOCALEDEF = 0x34 SC_2_PBS = 0xa8 SC_2_PBS_ACCOUNTING = 0xa9 SC_2_PBS_CHECKPOINT = 0xaf SC_2_PBS_LOCATE = 0xaa SC_2_PBS_MESSAGE = 0xab SC_2_PBS_TRACK = 0xac SC_2_SW_DEV = 0x33 SC_2_UPE = 0x61 SC_2_VERSION = 0x2e SC_XOPEN_CRYPT = 0x5c SC_XOPEN_ENH_I18N = 0x5d SC_XOPEN_REALTIME = 0x82 SC_XOPEN_REALTIME_THREADS = 0x83 SC_XOPEN_SHM = 0x5e SC_XOPEN_STREAMS = 0xf6 SC_XOPEN_UNIX = 0x5b SC_XOPEN_VERSION = 0x59 SC_XOPEN_XCU_VERSION = 0x5a SC_PHYS_PAGES = 0x55 SC_AVPHYS_PAGES = 0x56 SC_NPROCESSORS_CONF = 0x53 SC_NPROCESSORS_ONLN = 0x54 SC_UIO_MAXIOV = 0x3c ) go-sysconf-0.3.9/zsysconf_defs_netbsd.go000066400000000000000000000051401411312062400203510ustar00rootroot00000000000000// Created by cgo -godefs - DO NOT EDIT // cgo -godefs sysconf_defs_netbsd.go //go:build netbsd // +build netbsd package sysconf const ( SC_AIO_LISTIO_MAX = 0x33 SC_AIO_MAX = 0x34 SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x28 SC_BC_BASE_MAX = 0x9 SC_BC_DIM_MAX = 0xa SC_BC_SCALE_MAX = 0xb SC_BC_STRING_MAX = 0xc SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x27 SC_COLL_WEIGHTS_MAX = 0xd SC_EXPR_NEST_MAX = 0xe SC_HOST_NAME_MAX = 0x45 SC_IOV_MAX = 0x20 SC_LINE_MAX = 0xf SC_LOGIN_NAME_MAX = 0x25 SC_MQ_OPEN_MAX = 0x36 SC_MQ_PRIO_MAX = 0x37 SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0x1c SC_PAGESIZE = 0x1c SC_THREAD_DESTRUCTOR_ITERATIONS = 0x39 SC_THREAD_KEYS_MAX = 0x3a SC_THREAD_STACK_MIN = 0x3b SC_THREAD_THREADS_MAX = 0x3c SC_RE_DUP_MAX = 0x10 SC_STREAM_MAX = 0x1a SC_SYMLOOP_MAX = 0x49 SC_TTY_NAME_MAX = 0x44 SC_TZNAME_MAX = 0x1b SC_ASYNCHRONOUS_IO = 0x32 SC_BARRIERS = 0x2b SC_FSYNC = 0x1d SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x21 SC_SEMAPHORES = 0x2a SC_SHELL = 0x48 SC_THREADS = 0x29 SC_TIMERS = 0x2c SC_VERSION = 0x8 SC_2_VERSION = 0x11 SC_2_C_DEV = 0x13 SC_2_FORT_DEV = 0x15 SC_2_FORT_RUN = 0x16 SC_2_LOCALEDEF = 0x17 SC_2_SW_DEV = 0x18 SC_2_UPE = 0x19 SC_PHYS_PAGES = 0x79 SC_MONOTONIC_CLOCK = 0x26 SC_NPROCESSORS_CONF = 0x3e9 SC_NPROCESSORS_ONLN = 0x3ea ) const ( _MAXHOSTNAMELEN = 0x100 _MAXLOGNAME = 0x10 _MAXSYMLINKS = 0x20 _POSIX_ARG_MAX = 0x1000 _POSIX_CHILD_MAX = 0x19 _POSIX_SHELL = 0x1 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_KEYS_MAX = 0x100 _POSIX_VERSION = 0x30db0 _POSIX2_VERSION = 0x30db0 _FOPEN_MAX = 0x14 _NAME_MAX = 0x1ff _RE_DUP_MAX = 0xff _BC_BASE_MAX = 0x7fffffff _BC_DIM_MAX = 0xffff _BC_SCALE_MAX = 0x7fffffff _BC_STRING_MAX = 0x7fffffff _COLL_WEIGHTS_MAX = 0x2 _EXPR_NEST_MAX = 0x20 _LINE_MAX = 0x800 _PATH_DEV = "/dev/" _PATH_ZONEINFO = "/usr/share/zoneinfo" ) const _PC_NAME_MAX = 0x4 go-sysconf-0.3.9/zsysconf_defs_openbsd.go000066400000000000000000000203771411312062400205350ustar00rootroot00000000000000// Created by cgo -godefs - DO NOT EDIT // cgo -godefs sysconf_defs_openbsd.go //go:build openbsd // +build openbsd package sysconf const ( SC_AIO_LISTIO_MAX = 0x2a SC_AIO_MAX = 0x2b SC_AIO_PRIO_DELTA_MAX = 0x2c SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x2e SC_BC_BASE_MAX = 0x9 SC_BC_DIM_MAX = 0xa SC_BC_SCALE_MAX = 0xb SC_BC_STRING_MAX = 0xc SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x3 SC_COLL_WEIGHTS_MAX = 0xd SC_DELAYTIMER_MAX = 0x32 SC_EXPR_NEST_MAX = 0xe SC_GETGR_R_SIZE_MAX = 0x64 SC_GETPW_R_SIZE_MAX = 0x65 SC_HOST_NAME_MAX = 0x21 SC_IOV_MAX = 0x33 SC_LINE_MAX = 0xf SC_LOGIN_NAME_MAX = 0x66 SC_MQ_OPEN_MAX = 0x3a SC_MQ_PRIO_MAX = 0x3b SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0x1c SC_PAGESIZE = 0x1c SC_THREAD_DESTRUCTOR_ITERATIONS = 0x50 SC_THREAD_KEYS_MAX = 0x51 SC_THREAD_STACK_MIN = 0x59 SC_THREAD_THREADS_MAX = 0x5a SC_RE_DUP_MAX = 0x10 SC_SEM_NSEMS_MAX = 0x1f SC_SEM_VALUE_MAX = 0x20 SC_SIGQUEUE_MAX = 0x46 SC_STREAM_MAX = 0x1a SC_SYMLOOP_MAX = 0x4c SC_TIMER_MAX = 0x5d SC_TTY_NAME_MAX = 0x6b SC_TZNAME_MAX = 0x1b SC_ADVISORY_INFO = 0x29 SC_ASYNCHRONOUS_IO = 0x2d SC_BARRIERS = 0x2f SC_CLOCK_SELECTION = 0x30 SC_CPUTIME = 0x31 SC_FSYNC = 0x1d SC_IPV6 = 0x34 SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x35 SC_MEMLOCK = 0x36 SC_MEMLOCK_RANGE = 0x37 SC_MEMORY_PROTECTION = 0x38 SC_MESSAGE_PASSING = 0x39 SC_MONOTONIC_CLOCK = 0x22 SC_PRIORITIZED_IO = 0x3c SC_PRIORITY_SCHEDULING = 0x3d SC_RAW_SOCKETS = 0x3e SC_READER_WRITER_LOCKS = 0x3f SC_REALTIME_SIGNALS = 0x40 SC_REGEXP = 0x41 SC_SAVED_IDS = 0x7 SC_SEMAPHORES = 0x43 SC_SHARED_MEMORY_OBJECTS = 0x44 SC_SHELL = 0x45 SC_SPAWN = 0x47 SC_SPIN_LOCKS = 0x48 SC_SPORADIC_SERVER = 0x49 SC_SS_REPL_MAX = 0x4a SC_SYNCHRONIZED_IO = 0x4b SC_THREAD_ATTR_STACKADDR = 0x4d SC_THREAD_ATTR_STACKSIZE = 0x4e SC_THREAD_CPUTIME = 0x4f SC_THREAD_PRIO_INHERIT = 0x52 SC_THREAD_PRIO_PROTECT = 0x53 SC_THREAD_PRIORITY_SCHEDULING = 0x54 SC_THREAD_PROCESS_SHARED = 0x55 SC_THREAD_ROBUST_PRIO_INHERIT = 0x56 SC_THREAD_ROBUST_PRIO_PROTECT = 0x57 SC_THREAD_SAFE_FUNCTIONS = 0x67 SC_THREAD_SPORADIC_SERVER = 0x58 SC_THREADS = 0x5b SC_TIMEOUTS = 0x5c SC_TIMERS = 0x5e SC_TRACE = 0x5f SC_TRACE_EVENT_FILTER = 0x60 SC_TRACE_EVENT_NAME_MAX = 0x61 SC_TRACE_INHERIT = 0x62 SC_TRACE_LOG = 0x63 SC_TRACE_NAME_MAX = 0x68 SC_TRACE_SYS_MAX = 0x69 SC_TRACE_USER_EVENT_MAX = 0x6a SC_TYPED_MEMORY_OBJECTS = 0x6c SC_VERSION = 0x8 SC_V7_ILP32_OFF32 = 0x71 SC_V7_ILP32_OFFBIG = 0x72 SC_V7_LP64_OFF64 = 0x73 SC_V7_LPBIG_OFFBIG = 0x74 SC_V6_ILP32_OFF32 = 0x6d SC_V6_ILP32_OFFBIG = 0x6e SC_V6_LP64_OFF64 = 0x6f SC_V6_LPBIG_OFFBIG = 0x70 SC_2_C_BIND = 0x12 SC_2_C_DEV = 0x13 SC_2_CHAR_TERM = 0x14 SC_2_FORT_DEV = 0x15 SC_2_FORT_RUN = 0x16 SC_2_LOCALEDEF = 0x17 SC_2_PBS = 0x23 SC_2_PBS_ACCOUNTING = 0x24 SC_2_PBS_CHECKPOINT = 0x25 SC_2_PBS_LOCATE = 0x26 SC_2_PBS_MESSAGE = 0x27 SC_2_PBS_TRACK = 0x28 SC_2_SW_DEV = 0x18 SC_2_UPE = 0x19 SC_2_VERSION = 0x11 SC_XOPEN_CRYPT = 0x75 SC_XOPEN_ENH_I18N = 0x76 SC_XOPEN_REALTIME = 0x78 SC_XOPEN_REALTIME_THREADS = 0x79 SC_XOPEN_SHM = 0x1e SC_XOPEN_STREAMS = 0x7a SC_XOPEN_UNIX = 0x7b SC_XOPEN_UUCP = 0x7c SC_XOPEN_VERSION = 0x7d SC_AVPHYS_PAGES = 0x1f5 SC_PHYS_PAGES = 0x1f4 SC_NPROCESSORS_CONF = 0x1f6 SC_NPROCESSORS_ONLN = 0x1f7 ) const ( _HOST_NAME_MAX = 0xff _IOV_MAX = 0x400 _LOGIN_NAME_MAX = 0x20 _PTHREAD_DESTRUCTOR_ITERATIONS = 0x4 _PTHREAD_KEYS_MAX = 0x100 _PTHREAD_STACK_MIN = 0x1000 _PTHREAD_THREADS_MAX = 0xffffffffffffffff _SEM_VALUE_MAX = 0xffffffff _SYMLOOP_MAX = 0x20 _TTY_NAME_MAX = 0x104 _GR_BUF_LEN = 0xa40 _PW_BUF_LEN = 0x400 _CLK_TCK = 0x64 _POSIX_ADVISORY_INFO = -0x1 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = -0x1 _POSIX_BARRIERS = 0x30db0 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = -0x1 _POSIX_CPUTIME = 0x31069 _POSIX_FSYNC = 0x30db0 _POSIX_IPV6 = 0x0 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x30db0 _POSIX_MEMLOCK = 0x30db0 _POSIX_MEMLOCK_RANGE = 0x30db0 _POSIX_MEMORY_PROTECTION = 0x30db0 _POSIX_MESSAGE_PASSING = -0x1 _POSIX_MONOTONIC_CLOCK = 0x30db0 _POSIX_PRIORITIZED_IO = -0x1 _POSIX_PRIORITY_SCHEDULING = -0x1 _POSIX_RAW_SOCKETS = 0x30db0 _POSIX_READER_WRITER_LOCKS = 0x30db0 _POSIX_REALTIME_SIGNALS = -0x1 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x30db0 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SPAWN = 0x30db0 _POSIX_SPIN_LOCKS = 0x30db0 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = -0x1 _POSIX_THREAD_ATTR_STACKADDR = 0x30db0 _POSIX_THREAD_ATTR_STACKSIZE = 0x30db0 _POSIX_THREAD_CPUTIME = 0x31069 _POSIX_THREAD_KEYS_MAX = 0x80 _POSIX_THREAD_PRIO_INHERIT = -0x1 _POSIX_THREAD_PRIO_PROTECT = -0x1 _POSIX_THREAD_PRIORITY_SCHEDULING = -0x1 _POSIX_THREAD_PROCESS_SHARED = -0x1 _POSIX_THREAD_ROBUST_PRIO_INHERIT = -0x1 _POSIX_THREAD_ROBUST_PRIO_PROTECT = -0x1 _POSIX_THREAD_SAFE_FUNCTIONS = 0x30db0 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x30db0 _POSIX_TIMERS = -0x1 _POSIX_TIMEOUTS = 0x30db0 _POSIX_TRACE = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = 0x0 _POSIX_V7_LP64_OFF64 = 0x0 _POSIX_V7_LPBIG_OFFBIG = 0x0 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = 0x0 _POSIX_V6_LP64_OFF64 = 0x0 _POSIX_V6_LPBIG_OFFBIG = 0x0 _POSIX2_C_BIND = 0x30db0 _POSIX2_C_DEV = -0x1 _POSIX2_CHAR_TERM = 0x1 _POSIX2_LOCALEDEF = -0x1 _POSIX2_PBS = -0x1 _POSIX2_SW_DEV = 0x30db0 _POSIX2_UPE = 0x30db0 _POSIX2_VERSION = 0x31069 _XOPEN_CRYPT = 0x1 _XOPEN_ENH_I18N = -0x1 _XOPEN_REALTIME = -0x1 _XOPEN_REALTIME_THREADS = -0x1 _XOPEN_SHM = 0x1 _XOPEN_STREAMS = -0x1 _XOPEN_UNIX = -0x1 _XOPEN_UUCP = -0x1 _FOPEN_MAX = 0x14 _NAME_MAX = 0xff _RE_DUP_MAX = 0xff _BC_BASE_MAX = 0x7fffffff _BC_DIM_MAX = 0xffff _BC_SCALE_MAX = 0x7fffffff _BC_STRING_MAX = 0x7fffffff _COLL_WEIGHTS_MAX = 0x2 _EXPR_NEST_MAX = 0x20 _LINE_MAX = 0x800 _SHRT_MAX = 0x7fff _PATH_ZONEINFO = "/usr/share/zoneinfo" ) const ( _CHAR_BIT = 0x8 _INT_MAX = 0x7fffffff sizeofOffT = 0x8 ) go-sysconf-0.3.9/zsysconf_defs_solaris.go000066400000000000000000000111571411312062400205530ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_defs_solaris.go //go:build solaris // +build solaris package sysconf const ( SC_AIO_LISTIO_MAX = 0x12 SC_AIO_MAX = 0x13 SC_AIO_PRIO_DELTA_MAX = 0x14 SC_ARG_MAX = 0x1 SC_ATEXIT_MAX = 0x4c SC_BC_BASE_MAX = 0x36 SC_BC_DIM_MAX = 0x37 SC_BC_SCALE_MAX = 0x38 SC_BC_STRING_MAX = 0x39 SC_CHILD_MAX = 0x2 SC_CLK_TCK = 0x3 SC_COLL_WEIGHTS_MAX = 0x3a SC_DELAYTIMER_MAX = 0x16 SC_EXPR_NEST_MAX = 0x3b SC_GETGR_R_SIZE_MAX = 0x239 SC_GETPW_R_SIZE_MAX = 0x23a SC_HOST_NAME_MAX = 0x2df SC_IOV_MAX = 0x4d SC_LINE_MAX = 0x3c SC_LOGIN_NAME_MAX = 0x23b SC_MQ_OPEN_MAX = 0x1d SC_MQ_PRIO_MAX = 0x1e SC_NGROUPS_MAX = 0x4 SC_OPEN_MAX = 0x5 SC_PAGE_SIZE = 0xb SC_PAGESIZE = 0xb SC_THREAD_DESTRUCTOR_ITERATIONS = 0x238 SC_THREAD_KEYS_MAX = 0x23c SC_THREAD_STACK_MIN = 0x23d SC_THREAD_THREADS_MAX = 0x23e SC_RE_DUP_MAX = 0x3d SC_RTSIG_MAX = 0x22 SC_SEM_NSEMS_MAX = 0x24 SC_SEM_VALUE_MAX = 0x25 SC_SIGQUEUE_MAX = 0x27 SC_STREAM_MAX = 0x10 SC_SYMLOOP_MAX = 0x2e8 SC_TIMER_MAX = 0x2c SC_TTY_NAME_MAX = 0x23f SC_TZNAME_MAX = 0x11 SC_ADVISORY_INFO = 0x2db SC_ASYNCHRONOUS_IO = 0x15 SC_BARRIERS = 0x2dc SC_CLOCK_SELECTION = 0x2dd SC_CPUTIME = 0x2de SC_FSYNC = 0x17 SC_IPV6 = 0x2fa SC_JOB_CONTROL = 0x6 SC_MAPPED_FILES = 0x18 SC_MEMLOCK = 0x19 SC_MEMLOCK_RANGE = 0x1a SC_MEMORY_PROTECTION = 0x1b SC_MESSAGE_PASSING = 0x1c SC_MONOTONIC_CLOCK = 0x2e0 SC_PRIORITIZED_IO = 0x1f SC_PRIORITY_SCHEDULING = 0x20 SC_RAW_SOCKETS = 0x2fb SC_READER_WRITER_LOCKS = 0x2e1 SC_REALTIME_SIGNALS = 0x21 SC_REGEXP = 0x2e2 SC_SAVED_IDS = 0x7 SC_SEMAPHORES = 0x23 SC_SHARED_MEMORY_OBJECTS = 0x26 SC_SHELL = 0x2e3 SC_SPAWN = 0x2e4 SC_SPIN_LOCKS = 0x2e5 SC_SPORADIC_SERVER = 0x2e6 SC_SS_REPL_MAX = 0x2e7 SC_SYNCHRONIZED_IO = 0x2a SC_THREAD_ATTR_STACKADDR = 0x241 SC_THREAD_ATTR_STACKSIZE = 0x242 SC_THREAD_CPUTIME = 0x2e9 SC_THREAD_PRIO_INHERIT = 0x244 SC_THREAD_PRIO_PROTECT = 0x245 SC_THREAD_PRIORITY_SCHEDULING = 0x243 SC_THREAD_PROCESS_SHARED = 0x246 SC_THREAD_SAFE_FUNCTIONS = 0x247 SC_THREAD_SPORADIC_SERVER = 0x2ea SC_THREADS = 0x240 SC_TIMEOUTS = 0x2eb SC_TIMERS = 0x2b SC_TRACE = 0x2ec SC_TRACE_EVENT_FILTER = 0x2ed SC_TRACE_EVENT_NAME_MAX = 0x2ee SC_TRACE_INHERIT = 0x2ef SC_TRACE_LOG = 0x2f0 SC_TRACE_NAME_MAX = 0x2f1 SC_TRACE_SYS_MAX = 0x2f2 SC_TRACE_USER_EVENT_MAX = 0x2f3 SC_TYPED_MEMORY_OBJECTS = 0x2f4 SC_VERSION = 0x8 SC_V6_ILP32_OFF32 = 0x2f5 SC_V6_ILP32_OFFBIG = 0x2f6 SC_V6_LP64_OFF64 = 0x2f7 SC_V6_LPBIG_OFFBIG = 0x2f8 SC_2_C_BIND = 0x2d SC_2_C_DEV = 0x2e SC_2_C_VERSION = 0x2f SC_2_CHAR_TERM = 0x42 SC_2_FORT_DEV = 0x30 SC_2_FORT_RUN = 0x31 SC_2_LOCALEDEF = 0x32 SC_2_PBS = 0x2d4 SC_2_PBS_ACCOUNTING = 0x2d5 SC_2_PBS_CHECKPOINT = 0x2d6 SC_2_PBS_LOCATE = 0x2d8 SC_2_PBS_MESSAGE = 0x2d9 SC_2_PBS_TRACK = 0x2da SC_2_SW_DEV = 0x33 SC_2_UPE = 0x34 SC_2_VERSION = 0x35 SC_XOPEN_CRYPT = 0x3e SC_XOPEN_ENH_I18N = 0x3f SC_XOPEN_REALTIME = 0x2ce SC_XOPEN_REALTIME_THREADS = 0x2cf SC_XOPEN_SHM = 0x40 SC_XOPEN_STREAMS = 0x2f9 SC_XOPEN_UNIX = 0x4e SC_XOPEN_VERSION = 0xc SC_XOPEN_XCU_VERSION = 0x43 SC_PHYS_PAGES = 0x1f4 SC_AVPHYS_PAGES = 0x1f5 SC_NPROCESSORS_CONF = 0xe SC_NPROCESSORS_ONLN = 0xf ) go-sysconf-0.3.9/zsysconf_values_freebsd_386.go000066400000000000000000000003251411312062400214620ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_freebsd.go //go:build freebsd && 386 // +build freebsd,386 package sysconf const ( _LONG_MAX = 0x7fffffff _SHRT_MAX = 0x7fff ) go-sysconf-0.3.9/zsysconf_values_freebsd_amd64.go000066400000000000000000000003411411312062400220530ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_freebsd.go //go:build freebsd && amd64 // +build freebsd,amd64 package sysconf const ( _LONG_MAX = 0x7fffffffffffffff _SHRT_MAX = 0x7fff ) go-sysconf-0.3.9/zsysconf_values_freebsd_arm.go000066400000000000000000000003251411312062400217210ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_freebsd.go //go:build freebsd && arm // +build freebsd,arm package sysconf const ( _LONG_MAX = 0x7fffffff _SHRT_MAX = 0x7fff ) go-sysconf-0.3.9/zsysconf_values_freebsd_arm64.go000066400000000000000000000003411411312062400220710ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_freebsd.go //go:build freebsd && arm64 // +build freebsd,arm64 package sysconf const ( _LONG_MAX = 0x7fffffffffffffff _SHRT_MAX = 0x7fff ) go-sysconf-0.3.9/zsysconf_values_linux_386.go000066400000000000000000000073641411312062400212210ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && 386 // +build linux,386 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x4000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = 0x1 _POSIX_V7_ILP32_OFFBIG = 0x1 _POSIX_V7_LP64_OFF64 = -0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = 0x1 _POSIX_V6_ILP32_OFFBIG = 0x1 _POSIX_V6_LP64_OFF64 = -0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_amd64.go000066400000000000000000000073721411312062400216130ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && amd64 // +build linux,amd64 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x4000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_arm.go000066400000000000000000000073641411312062400214600ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && arm // +build linux,arm package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x4000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = 0x1 _POSIX_V7_ILP32_OFFBIG = 0x1 _POSIX_V7_LP64_OFF64 = -0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = 0x1 _POSIX_V6_ILP32_OFFBIG = 0x1 _POSIX_V6_LP64_OFF64 = -0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_arm64.go000066400000000000000000000073731411312062400216320ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && arm64 // +build linux,arm64 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_mips.go000066400000000000000000000073671411312062400216540ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && mips // +build linux,mips package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = 0x1 _POSIX_V7_ILP32_OFFBIG = 0x1 _POSIX_V7_LP64_OFF64 = -0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = 0x1 _POSIX_V6_ILP32_OFFBIG = 0x1 _POSIX_V6_LP64_OFF64 = -0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_mips64.go000066400000000000000000000073751411312062400220250ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && mips64 // +build linux,mips64 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_mips64le.go000066400000000000000000000074011411312062400223340ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && mips64le // +build linux,mips64le package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_mipsle.go000066400000000000000000000073731411312062400221720ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && mipsle // +build linux,mipsle package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = 0x1 _POSIX_V7_ILP32_OFFBIG = 0x1 _POSIX_V7_LP64_OFF64 = -0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = 0x1 _POSIX_V6_ILP32_OFFBIG = 0x1 _POSIX_V6_LP64_OFF64 = -0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_ppc64.go000066400000000000000000000073731411312062400216350ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && ppc64 // +build linux,ppc64 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_ppc64le.go000066400000000000000000000073771411312062400221620ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && ppc64le // +build linux,ppc64le package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x20000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_riscv64.go000066400000000000000000000073761411312062400222040ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && riscv64 // +build linux,riscv64 package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x4000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 ) go-sysconf-0.3.9/zsysconf_values_linux_s390x.go000066400000000000000000000073721411312062400215660ustar00rootroot00000000000000// Code generated by cmd/cgo -godefs; DO NOT EDIT. // cgo -godefs sysconf_values_linux.go //go:build linux && s390x // +build linux,s390x package sysconf const ( _AIO_PRIO_DELTA_MAX = 0x14 _BC_BASE_MAX = 0x63 _BC_DIM_MAX = 0x800 _BC_SCALE_MAX = 0x63 _BC_STRING_MAX = 0x3e8 _COLL_WEIGHTS_MAX = 0xff _DELAYTIMER_MAX = 0x7fffffff _EXPR_NEST_MAX = 0x20 _HOST_NAME_MAX = 0x40 _LINE_MAX = 0x800 _LOGIN_NAME_MAX = 0x100 _MQ_PRIO_MAX = 0x8000 _NGROUPS_MAX = 0x10000 _NSS_BUFLEN_GROUP = 0x400 _NSS_BUFLEN_PASSWD = 0x400 _OPEN_MAX = 0x100 _PTHREAD_KEYS_MAX = 0x400 _PTHREAD_STACK_MIN = 0x4000 _RE_DUP_MAX = 0x7fff _RTSIG_MAX = 0x20 _SEM_VALUE_MAX = 0x7fffffff _STREAM_MAX = 0x10 _SYMLOOP_MAX = -0x1 _TTY_NAME_MAX = 0x20 _UIO_MAXIOV = 0x400 _INT_MAX = 0x7fffffff _POSIX_ADVISORY_INFO = 0x31069 _POSIX_ARG_MAX = 0x1000 _POSIX_ASYNCHRONOUS_IO = 0x31069 _POSIX_BARRIERS = 0x31069 _POSIX_CHILD_MAX = 0x19 _POSIX_CLOCK_SELECTION = 0x31069 _POSIX_CPUTIME = 0x0 _POSIX_FSYNC = 0x31069 _POSIX_IPV6 = 0x31069 _POSIX_JOB_CONTROL = 0x1 _POSIX_MAPPED_FILES = 0x31069 _POSIX_MEMLOCK = 0x31069 _POSIX_MEMLOCK_RANGE = 0x31069 _POSIX_MEMORY_PROTECTION = 0x31069 _POSIX_MESSAGE_PASSING = 0x31069 _POSIX_MONOTONIC_CLOCK = 0x0 _POSIX_PRIORITIZED_IO = 0x31069 _POSIX_PRIORITY_SCHEDULING = 0x31069 _POSIX_RAW_SOCKETS = 0x31069 _POSIX_READER_WRITER_LOCKS = 0x31069 _POSIX_REALTIME_SIGNALS = 0x31069 _POSIX_REGEXP = 0x1 _POSIX_SAVED_IDS = 0x1 _POSIX_SEMAPHORES = 0x31069 _POSIX_SHARED_MEMORY_OBJECTS = 0x31069 _POSIX_SHELL = 0x1 _POSIX_SIGQUEUE_MAX = 0x20 _POSIX_SPAWN = 0x31069 _POSIX_SPIN_LOCKS = 0x31069 _POSIX_SPORADIC_SERVER = -0x1 _POSIX_SYNCHRONIZED_IO = 0x31069 _POSIX_THREAD_ATTR_STACKADDR = 0x31069 _POSIX_THREAD_ATTR_STACKSIZE = 0x31069 _POSIX_THREAD_DESTRUCTOR_ITERATIONS = 0x4 _POSIX_THREAD_PRIO_INHERIT = 0x31069 _POSIX_THREAD_PRIO_PROTECT = 0x31069 _POSIX_THREAD_PRIORITY_SCHEDULING = 0x31069 _POSIX_THREAD_PROCESS_SHARED = 0x31069 _POSIX_THREAD_SAFE_FUNCTIONS = 0x31069 _POSIX_THREAD_SPORADIC_SERVER = -0x1 _POSIX_THREADS = 0x31069 _POSIX_TIMEOUTS = 0x31069 _POSIX_TIMERS = 0x31069 _POSIX_TRACE = -0x1 _POSIX_TRACE_EVENT_FILTER = -0x1 _POSIX_TRACE_INHERIT = -0x1 _POSIX_TRACE_LOG = -0x1 _POSIX_TYPED_MEMORY_OBJECTS = -0x1 _POSIX_VERSION = 0x31069 _POSIX_V7_ILP32_OFF32 = -0x1 _POSIX_V7_ILP32_OFFBIG = -0x1 _POSIX_V7_LP64_OFF64 = 0x1 _POSIX_V7_LPBIG_OFFBIG = -0x1 _POSIX_V6_ILP32_OFF32 = -0x1 _POSIX_V6_ILP32_OFFBIG = -0x1 _POSIX_V6_LP64_OFF64 = 0x1 _POSIX_V6_LPBIG_OFFBIG = -0x1 _POSIX2_C_BIND = 0x31069 _POSIX2_C_DEV = 0x31069 _POSIX2_C_VERSION = 0x31069 _POSIX2_CHAR_TERM = 0x31069 _POSIX2_LOCALEDEF = 0x31069 _POSIX2_SW_DEV = 0x31069 _POSIX2_VERSION = 0x31069 _XOPEN_ENH_I18N = 0x1 _XOPEN_REALTIME = 0x1 _XOPEN_REALTIME_THREADS = 0x1 _XOPEN_SHM = 0x1 _XOPEN_UNIX = 0x1 _XOPEN_VERSION = 0x2bc _XOPEN_XCU_VERSION = 0x4 )