blob: 9b2a0b7a9b6aba52bf327e50f817da1fcab6dbad [file] [log] [blame]
/**
* D header file for NetBSD sys/sysctl.h
*
* Copyright: Copyright © 2021, The D Language Foundation
* License: <a href="http://www.boost.org/LICENSE_1_0.txt">Boost License 1.0</a>.
* Authors: Iain Buclaw
*/
module core.sys.netbsd.sys.sysctl;
version (NetBSD):
extern (C):
nothrow:
@nogc:
// Top-level identifiers
enum
{
CTL_UNSPEC = 0,
CTL_KERN = 1,
CTL_VM = 2,
CTL_VFS = 3,
CTL_NET = 4,
CTL_DEBUG = 5,
CTL_HW = 6,
CTL_MACHDEP = 7,
CTL_DDB = 9,
CTL_PROC = 10,
CTL_VENDOR = 11,
CTL_EMUL = 12,
CTL_SECURITY = 13,
}
// CTL_KERN identifiers
enum
{
KERN_OSTYPE = 1,
KERN_OSRELEASE = 2,
KERN_OSREV = 3,
KERN_VERSION = 4,
KERN_MAXVNODES = 5,
KERN_MAXPROC = 6,
KERN_MAXFILES = 7,
KERN_ARGMAX = 8,
KERN_SECURELVL = 9,
KERN_HOSTNAME = 10,
KERN_HOSTID = 11,
KERN_CLOCKRATE = 12,
KERN_VNODE = 13,
KERN_PROC = 14,
KERN_FILE = 15,
KERN_PROF = 16,
KERN_POSIX1 = 17,
KERN_NGROUPS = 18,
KERN_JOB_CONTROL = 19,
KERN_SAVED_IDS = 20,
KERN_OBOOTTIME = 21,
KERN_DOMAINNAME = 22,
KERN_MAXPARTITIONS = 23,
KERN_RAWPARTITION = 24,
KERN_NTPTIME = 25,
KERN_TIMEX = 26,
KERN_AUTONICETIME = 27,
KERN_AUTONICEVAL = 28,
KERN_RTC_OFFSET = 29,
KERN_ROOT_DEVICE = 30,
KERN_MSGBUFSIZE = 31,
KERN_FSYNC = 32,
KERN_OLDSYSVMSG = 33,
KERN_OLDSYSVSEM = 34,
KERN_OLDSYSVSHM = 35,
KERN_OLDSHORTCORENAME = 36,
KERN_SYNCHRONIZED_IO = 37,
KERN_IOV_MAX = 38,
KERN_MBUF = 39,
KERN_MAPPED_FILES = 40,
KERN_MEMLOCK = 41,
KERN_MEMLOCK_RANGE = 42,
KERN_MEMORY_PROTECTION = 43,
KERN_LOGIN_NAME_MAX = 44,
KERN_DEFCORENAME = 45,
KERN_LOGSIGEXIT = 46,
KERN_PROC2 = 47,
KERN_PROC_ARGS = 48,
KERN_FSCALE = 49,
KERN_CCPU = 50,
KERN_CP_TIME = 51,
KERN_OLDSYSVIPC_INFO = 52,
KERN_MSGBUF = 53,
KERN_CONSDEV = 54,
KERN_MAXPTYS = 55,
KERN_PIPE = 56,
KERN_MAXPHYS = 57,
KERN_SBMAX = 58,
KERN_TKSTAT = 59,
KERN_MONOTONIC_CLOCK = 60,
KERN_URND = 61,
KERN_LABELSECTOR = 62,
KERN_LABELOFFSET = 63,
KERN_LWP = 64,
KERN_FORKFSLEEP = 65,
KERN_POSIX_THREADS = 66,
KERN_POSIX_SEMAPHORES = 67,
KERN_POSIX_BARRIERS = 68,
KERN_POSIX_TIMERS = 69,
KERN_POSIX_SPIN_LOCKS = 70,
KERN_POSIX_READER_WRITER_LOCKS = 71,
KERN_DUMP_ON_PANIC = 72,
KERN_SOMAXKVA = 73,
KERN_ROOT_PARTITION = 74,
KERN_DRIVERS = 75,
KERN_BUF = 76,
KERN_FILE2 = 77,
KERN_VERIEXEC = 78,
KERN_CP_ID = 79,
KERN_HARDCLOCK_TICKS = 80,
KERN_ARND = 81,
KERN_SYSVIPC = 82,
KERN_BOOTTIME = 83,
KERN_EVCNT = 84,
KERN_SOFIXEDBUF = 85,
}
// KERN_PROC subtypes
enum
{
KERN_PROC_ALL = 0,
KERN_PROC_PID = 1,
KERN_PROC_PGRP = 2,
KERN_PROC_SESSION = 3,
KERN_PROC_TTY = 4,
KERN_PROC_UID = 5,
KERN_PROC_RUID = 6,
KERN_PROC_KTHREAD = 7,
KERN_PROC_RGID = 8,
}
// KERN_PROC_ARGS subtypes
enum
{
KERN_PROC_ARGV = 1,
KERN_PROC_NARGV = 2,
KERN_PROC_ENV = 3,
KERN_PROC_NENV = 4,
KERN_PROC_PATHNAME = 5,
KERN_PROC_CWD = 6,
}
// KERN_SYSVIPC subtypes
enum
{
KERN_SYSVIPC_INFO = 1,
KERN_SYSVIPC_MSG = 2,
KERN_SYSVIPC_SEM = 3,
KERN_SYSVIPC_SHM = 4,
KERN_SYSVIPC_SHMMAX = 5,
KERN_SYSVIPC_SHMMNI = 6,
KERN_SYSVIPC_SHMSEG = 7,
KERN_SYSVIPC_SHMMAXPGS = 8,
KERN_SYSVIPC_SHMUSEPHYS = 9,
}
// KERN_SYSVIPC_INFO subtypes
enum
{
KERN_SYSVIPC_MSG_INFO = 4,
KERN_SYSVIPC_SEM_INFO = 5,
KERN_SYSVIPC_SHM_INFO = 6,
}
// KERN_TKSTAT subtypes
enum
{
KERN_TKSTAT_NIN = 1,
KERN_TKSTAT_NOUT = 2,
KERN_TKSTAT_CANCC = 3,
KERN_TKSTAT_RAWCC = 4,
}
// KERN_BUF subtypes
enum
{
KERN_BUF_ALL = 0,
}
// KERN_FILE
enum
{
KERN_FILE_BYFILE = 1,
KERN_FILE_BYPID = 2,
KERN_FILESLOP = 10,
}
// KERN_EVCNT
enum
{
KERN_EVCNT_COUNT_ANY = 0,
KERN_EVCNT_COUNT_NONZERO = 1,
}
// CTL_HW identifiers
enum
{
HW_MACHINE = 1,
HW_MODEL = 2,
HW_NCPU = 3,
HW_BYTEORDER = 4,
HW_PHYSMEM = 5,
HW_USERMEM = 6,
HW_PAGESIZE = 7,
HW_DISKNAMES = 8,
HW_IOSTATS = 9,
HW_MACHINE_ARCH = 10,
HW_ALIGNBYTES = 11,
HW_CNMAGIC = 12,
HW_PHYSMEM64 = 13,
HW_USERMEM64 = 14,
HW_IOSTATNAMES = 15,
HW_NCPUONLINE = 16,
}
// CTL_USER definitions
enum
{
USER_CS_PATH = 1,
USER_BC_BASE_MAX = 2,
USER_BC_DIM_MAX = 3,
USER_BC_SCALE_MAX = 4,
USER_BC_STRING_MAX = 5,
USER_COLL_WEIGHTS_MAX = 6,
USER_EXPR_NEST_MAX = 7,
USER_LINE_MAX = 8,
USER_RE_DUP_MAX = 9,
USER_POSIX2_VERSION = 10,
USER_POSIX2_C_BIND = 11,
USER_POSIX2_C_DEV = 12,
USER_POSIX2_CHAR_TERM = 13,
USER_POSIX2_FORT_DEV = 14,
USER_POSIX2_FORT_RUN = 15,
USER_POSIX2_LOCALEDEF = 16,
USER_POSIX2_SW_DEV = 17,
USER_POSIX2_UPE = 18,
USER_STREAM_MAX = 19,
USER_TZNAME_MAX = 20,
USER_ATEXIT_MAX = 21,
}
///
int sysctl(const int* name, uint namelen, void* oldp, size_t* oldlenp,
const void* newp, size_t newlen);
///
int sysctlbyname(const char* name, void* oldp, size_t* oldlenp,
const void* newp, size_t newlen);
///
int sysctlnametomib(const char* sname, int* name, size_t* namelenp);