X-Git-Url: https://git.saurik.com/apple/system_cmds.git/blobdiff_plain/cf37c2996a8b83ccbcb7e2e413f749f6e60a3845..HEAD:/sysctl.tproj/sysctl.c diff --git a/sysctl.tproj/sysctl.c b/sysctl.tproj/sysctl.c index 30b066b..ca86999 100644 --- a/sysctl.tproj/sysctl.c +++ b/sysctl.tproj/sysctl.c @@ -60,6 +60,8 @@ __unused static const char rcsid[] = #include #include #include +#ifdef __APPLE__ +#endif #include #include #include @@ -680,6 +682,9 @@ oidfmt(int *oid, int len, char *fmt, u_int *kind) } } else if (buf[sizeof(u_int)] == 'L') { *kind = (*kind & ~CTLTYPE) | CTLTYPE_LONG; + if (buf[sizeof(u_int)+1] == 'U') { + *kind = (*kind & ~CTLTYPE) | CTLTYPE_ULONG; + } } break; case CTLTYPE_QUAD: @@ -745,6 +750,14 @@ show_var(int *oid, int nlen) bzero(name, BUFSIZ); qoid[0] = 0; memcpy(qoid + 2, oid, nlen * sizeof(int)); + fmt = (char *)buf; + oidfmt(oid, nlen, fmt, &kind); + +#ifdef __APPLE__ + if (!show_masked && (kind & CTLFLAG_MASKED)) { + return (1); + } +#endif #ifdef __APPLE__ // Support for CTL_USER @@ -812,20 +825,11 @@ show_var(int *oid, int nlen) return (0); } val[len] = '\0'; - fmt = (char *)buf; - oidfmt(oid, nlen, fmt, &kind); p = val; ctltype = (kind & CTLTYPE); sign = ctl_sign[ctltype]; intlen = ctl_size[ctltype]; -#ifdef __APPLE__ - if (!show_masked && (kind & CTLFLAG_MASKED)) { - free(oval); - return (1); - } -#endif - switch (ctltype) { case CTLTYPE_STRING: if (!nflag) @@ -951,6 +955,9 @@ sysctl_all_user(int *oid, int len) static int sysctl_all(int *oid, int len) { +#ifdef __APPLE__ +#endif + int name1[22], name2[22]; int i, j; size_t l1, l2;