From bec1fa860710034abcd387594ac091497608cb7e Mon Sep 17 00:00:00 2001 From: Poul-Henning Kamp Date: Thu, 11 May 2006 17:25:36 +0000 Subject: [PATCH] Use sysctlbyname --- sbin/adjkerntz/adjkerntz.c | 39 ++++++++++++++------------------------ usr.bin/w/w.c | 7 +------ 2 files changed, 15 insertions(+), 31 deletions(-) diff --git a/sbin/adjkerntz/adjkerntz.c b/sbin/adjkerntz/adjkerntz.c index bf390107ea95..9174f2af861f 100644 --- a/sbin/adjkerntz/adjkerntz.c +++ b/sbin/adjkerntz/adjkerntz.c @@ -82,7 +82,6 @@ main(int argc, char *argv[]) struct timezone tz, *stz; int kern_offset, wall_clock, disrtcset; size_t len; - int mib[2]; /* Avoid time_t here, can be unsigned long or worse */ long offset, localsec, diff; time_t initial_sec, final_sec; @@ -150,11 +149,9 @@ again: tzset(); - mib[0] = CTL_MACHDEP; - mib[1] = CPU_ADJKERNTZ; len = sizeof(kern_offset); - if (sysctl(mib, 2, &kern_offset, &len, NULL, 0) == -1) { - syslog(LOG_ERR, "sysctl(get_offset): %m"); + if (sysctlbyname("machdep.adjkerntz", &kern_offset, &len, NULL, 0) == -1) { + syslog(LOG_ERR, "sysctl(\"machdep.adjkerntz\"): %m"); return 1; } @@ -286,18 +283,16 @@ recalculate: if ( (init && stv != NULL) || ((init || !wall_clock) && kern_offset != offset) ) { - mib[0] = CTL_MACHDEP; - mib[1] = CPU_DISRTCSET; len = sizeof(disrtcset); - if (sysctl(mib, 2, &disrtcset, &len, NULL, 0) == -1) { - syslog(LOG_ERR, "sysctl(get_disrtcset): %m"); + if (sysctlbyname("machdep.disable_rtc_set", &disrtcset, &len, NULL, 0) == -1) { + syslog(LOG_ERR, "sysctl(get: \"disable_rtc_set\"): %m"); return 1; } if (disrtcset == 0) { disrtcset = 1; need_restore = True; - if (sysctl(mib, 2, NULL, NULL, &disrtcset, len) == -1) { - syslog(LOG_ERR, "sysctl(set_disrtcset): %m"); + if (sysctlbyname("disable_rtc_set", NULL, NULL, &disrtcset, len) == -1) { + syslog(LOG_ERR, "sysctl(set: \"disable_rtc_set\"): %m"); return 1; } } @@ -327,37 +322,31 @@ recalculate: } } - /* setting CPU_ADJKERNTZ have a side effect: resettodr(), which */ - /* can be disabled by CPU_DISRTCSET, so if init or UTC clock */ + /* setting machdep.adjkerntz have a side effect: resettodr(), which */ + /* can be disabled by machdep.disable_rtc_set, so if init or UTC clock */ /* -- don't write RTC, else write RTC. */ if (kern_offset != offset) { kern_offset = offset; - mib[0] = CTL_MACHDEP; - mib[1] = CPU_ADJKERNTZ; len = sizeof(kern_offset); - if (sysctl(mib, 2, NULL, NULL, &kern_offset, len) == -1) { - syslog(LOG_ERR, "sysctl(update_offset): %m"); + if (sysctlbyname("machdep.adjkerntz", NULL, NULL, &kern_offset, len) == -1) { + syslog(LOG_ERR, "sysctl(set: \"disable_rtc_set\"): %m"); return 1; } } - mib[0] = CTL_MACHDEP; - mib[1] = CPU_WALLCLOCK; len = sizeof(wall_clock); - if (sysctl(mib, 2, NULL, NULL, &wall_clock, len) == -1) { - syslog(LOG_ERR, "sysctl(put_wallclock): %m"); + if (sysctlbyname("machdep.wall_cmos_clock", NULL, NULL, &wall_clock, len) == -1) { + syslog(LOG_ERR, "sysctl(set: \"machdep.wall_cmos_clock\"): %m"); return 1; } if (need_restore) { need_restore = False; - mib[0] = CTL_MACHDEP; - mib[1] = CPU_DISRTCSET; disrtcset = 0; len = sizeof(disrtcset); - if (sysctl(mib, 2, NULL, NULL, &disrtcset, len) == -1) { - syslog(LOG_ERR, "sysctl(restore_disrtcset): %m"); + if (sysctlbyname("machdep.disable_rtc_set", NULL, NULL, &disrtcset, len) == -1) { + syslog(LOG_ERR, "sysctl(set: \"machdep.disable_rtc_set\"): %m"); return 1; } } diff --git a/usr.bin/w/w.c b/usr.bin/w/w.c index 8f69ab678563..379e6a43854d 100644 --- a/usr.bin/w/w.c +++ b/usr.bin/w/w.c @@ -239,21 +239,16 @@ main(int argc, char *argv[]) nextp = &ep->next; memmove(&ep->utmp, &utmp, sizeof(struct utmp)); ep->tdev = stp->st_rdev; -#ifdef CPU_CONSDEV /* * If this is the console device, attempt to ascertain * the true console device dev_t. */ if (ep->tdev == 0) { - int mib[2]; size_t size; - mib[0] = CTL_MACHDEP; - mib[1] = CPU_CONSDEV; size = sizeof(dev_t); - (void)sysctl(mib, 2, &ep->tdev, &size, NULL, 0); + (void)sysctlbyname("machdep.consdev", &ep->tdev, &size, NULL, 0); } -#endif touched = stp->st_atime; if (touched < ep->utmp.ut_time) { /* tty untouched since before login */