From: Karel Zak Date: Tue, 28 May 2019 10:53:58 +0000 (+0200) Subject: rtcwake: terminate mode and excl[] X-Git-Tag: v2.34-rc2~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d3149a855680d59f0703eb8d3af651c33aa19c37;p=thirdparty%2Futil-linux.git rtcwake: terminate mode and excl[] * terminate string read from /proc * terminate array for exclusive options Signed-off-by: Karel Zak --- diff --git a/sys-utils/rtcwake.c b/sys-utils/rtcwake.c index 1058e8af9c..4f854bb0b0 100644 --- a/sys-utils/rtcwake.c +++ b/sys-utils/rtcwake.c @@ -247,12 +247,15 @@ static char **get_sys_power_states(struct rtcwake_control *ctl) if (!ctl->possible_modes) { char buf[256] = { 0 }; + ssize_t ss; fd = open(SYS_POWER_STATE_PATH, O_RDONLY); if (fd < 0) goto nothing; - if (read(fd, &buf, sizeof(buf) - 1) <= 0) + ss = read(fd, &buf, sizeof(buf) - 1); + if (ss <= 0) goto nothing; + buf[ss] = '\0'; ctl->possible_modes = strv_split(buf, " \n"); close(fd); } @@ -451,6 +454,7 @@ int main(int argc, char **argv) static const ul_excl_t excl[] = { { 'a', 'l', 'u' }, { 's', 't', OPT_DATE }, + { 0 }, }; int excl_st[ARRAY_SIZE(excl)] = UL_EXCL_STATUS_INIT;