From 977bc6a1374ed468ec96e2202757be0c8b3592ed Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 15 Feb 2008 07:19:03 +0000 Subject: we need to pass back the rtc device name that was actually used so that we can turn around and check its sysfs status --- util-linux/rtcwake.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'util-linux/rtcwake.c') diff --git a/util-linux/rtcwake.c b/util-linux/rtcwake.c index c7d5a4c12..2b1ab1fca 100644 --- a/util-linux/rtcwake.c +++ b/util-linux/rtcwake.c @@ -45,7 +45,7 @@ static int may_wakeup(const char *rtcname) return 0; /* wakeup events could be disabled or not supported */ - return strcmp(buf, "enabled\n") == 0; + return strncmp(buf, "enabled\n", 8) == 0; } static void setup_alarm(int fd, time_t *wakeup) @@ -159,11 +159,11 @@ int rtcwake_main(int argc, char **argv) /* the rtcname is relative to /dev */ xchdir("/dev"); - if (strcmp(suspend, "on") != 0 && !may_wakeup(rtcname)) - bb_error_msg_and_die("%s not enabled for wakeup events", rtcname); - /* this RTC must exist and (if we'll sleep) be wakeup-enabled */ - fd = rtc_xopen(rtcname, O_RDONLY); + fd = rtc_xopen(&rtcname, O_RDONLY); + + if (strcmp(suspend, "on") && !may_wakeup(rtcname)) + bb_error_msg_and_die("%s not enabled for wakeup events", rtcname); /* relative or absolute alarm time, normalized to time_t */ sys_time = time(0); @@ -184,7 +184,7 @@ int rtcwake_main(int argc, char **argv) fflush(stdout); usleep(10 * 1000); - if (!strcmp(suspend, "on")) + if (strcmp(suspend, "on")) suspend_system(suspend); else { /* "fake" suspend ... we'll do the delay ourselves */ -- cgit v1.2.3