⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sysctlbyname.c

📁 基于组件方式开发操作系统的OSKIT源代码
💻 C
字号:
/* * ---------------------------------------------------------------------------- * "THE BEER-WARE LICENSE" (Revision 42): * <phk@FreeBSD.org> wrote this file.  As long as you retain this notice you * can do whatever you want with this stuff. If we meet some day, and you think * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp * ---------------------------------------------------------------------------- * * $Id: sysctlbyname.c,v 1.3 1998/03/09 04:34:16 jb Exp $ * */#include <sys/types.h>#include <sys/sysctl.h>#include <string.h>intsysctlbyname(const char *name, void *oldp, size_t *oldlenp, void *newp,	     size_t newlen){	int name2oid_oid[2];	int real_oid[CTL_MAXNAME+2];	int error;	size_t oidlen;	name2oid_oid[0] = 0;	/* This is magic & undocumented! */	name2oid_oid[1] = 3;	oidlen = sizeof(real_oid);	error = sysctl(name2oid_oid, 2, real_oid, &oidlen, (void *)name,		       strlen(name));	if (error < 0) 		return error;	oidlen /= sizeof (int);	error = sysctl(real_oid, oidlen, oldp, oldlenp, newp, newlen);	return (error);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -