char buf[128];
signed long val;
struct sched_opt *opt;
+ ssize_t len;
+ char *newline;
for (opt = FILE_OPTIONS; opt->name != 0; opt++) {
if (strcmp(name, opt->name) == 0)
}
fd = Eopen(name, O_RDONLY, 0);
- Eread(fd, buf, sizeof(buf));
+ len = Eread(fd, buf, sizeof(buf)-1);
Eclose(fd);
+ buf[len] = '\0';
+ if ((newline=strchr(buf, '\n')) != NULL)
+ *newline = '\0';
if (!isNumber(buf, &val, true)) {
WRITE_MSG(2, ENSC_WRAPPERS_PREFIX);
}
if (opt->offset != offsetof(struct vc_set_sched, set_mask))
- *(((char *)sched)+opt->offset) = (int_least32_t) val;
+ *(int_least32_t *)(((char *)sched)+opt->offset) = (int_least32_t) val;
sched->set_mask |= opt->mask;
}