17#define SYSCTL_STR(_PATH, _FLAGS, _DESCRIPTION, _DEFAULT) \
18 { #_PATH, SYSCTL_TYPE_STR, _FLAGS, _DESCRIPTION },
19#define SYSCTL_INT(_PATH, _FLAGS, _DESCRIPTION, _DEFAULT) \
20 { #_PATH, SYSCTL_TYPE_INT, _FLAGS, _DESCRIPTION },
21#define SYSCTL_BOOL(_PATH, _FLAGS, _DESCRIPTION, _DEFAULT) \
22 { #_PATH, SYSCTL_TYPE_BOOL, _FLAGS, _DESCRIPTION },
54 scBool.
value ?
"true" :
"false");
85 if (
strcmp(val,
"true") == 0)
87 else if (
strcmp(val,
"false") == 0)
90 printf(
"Value must be true or false\n");
103main(
int argc,
const char *argv[])
105 if (argc == 2 &&
strcmp(argv[1],
"-h") == 0) {
106 printf(
"Usage: sysctl [NODE] [VALUE]\n");
110 if (argc == 2 &&
strcmp(argv[1],
"-d") == 0) {
111 printf(
"%-20s %s\n",
"Name",
"Description");
120 if (argc == 2 || argc == 3) {
int OSSysCtl(const char *node, void *oldval, void *newval)
void UpdateVal(int idx, const char *val)
int main(int argc, const char *argv[])
SysCtlEntry SYSCTLTable[]
struct SysCtlEntry SysCtlEntry
int printf(const char *fmt,...)
int atoi(const char *nptr)
int strcmp(const char *s1, const char *s2)
char * strncpy(char *to, const char *from, size_t len)
char value[SYSCTL_STR_MAXLENGTH]