diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-02-15 07:19:03 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-02-15 07:19:03 +0000 |
commit | 977bc6a1374ed468ec96e2202757be0c8b3592ed (patch) | |
tree | 00cd5d36831b37f1b941f38f87884d80f7e04409 /libbb | |
parent | ea915363e747d4e42215016ceaef4b19e01baf55 (diff) | |
download | busybox-w32-977bc6a1374ed468ec96e2202757be0c8b3592ed.tar.gz busybox-w32-977bc6a1374ed468ec96e2202757be0c8b3592ed.tar.bz2 busybox-w32-977bc6a1374ed468ec96e2202757be0c8b3592ed.zip |
we need to pass back the rtc device name that was actually used so that we can turn around and check its sysfs status
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/rtc.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/libbb/rtc.c b/libbb/rtc.c index 4cbf32206..78f10c65d 100644 --- a/libbb/rtc.c +++ b/libbb/rtc.c | |||
@@ -40,21 +40,23 @@ int rtc_adjtime_is_utc(void) | |||
40 | return utc; | 40 | return utc; |
41 | } | 41 | } |
42 | 42 | ||
43 | int rtc_xopen(const char *default_rtc, int flags) | 43 | int rtc_xopen(const char **default_rtc, int flags) |
44 | { | 44 | { |
45 | int rtc; | 45 | int rtc; |
46 | 46 | ||
47 | if (!default_rtc) { | 47 | if (!*default_rtc) { |
48 | rtc = open("/dev/rtc", flags); | 48 | *default_rtc = "/dev/rtc"; |
49 | rtc = open(*default_rtc, flags); | ||
49 | if (rtc >= 0) | 50 | if (rtc >= 0) |
50 | return rtc; | 51 | return rtc; |
51 | rtc = open("/dev/rtc0", flags); | 52 | *default_rtc = "/dev/rtc0"; |
53 | rtc = open(*default_rtc, flags); | ||
52 | if (rtc >= 0) | 54 | if (rtc >= 0) |
53 | return rtc; | 55 | return rtc; |
54 | default_rtc = "/dev/misc/rtc"; | 56 | *default_rtc = "/dev/misc/rtc"; |
55 | } | 57 | } |
56 | 58 | ||
57 | return xopen(default_rtc, flags); | 59 | return xopen(*default_rtc, flags); |
58 | } | 60 | } |
59 | 61 | ||
60 | time_t rtc_read_time(int fd, int utc) | 62 | time_t rtc_read_time(int fd, int utc) |