return statbuf;
}
-/* Formatting: */
+/* File parsing (i.e. sysfs) */
-int printf_pad(unsigned pad, const char * fmt, ...)
+void write_file_str(int dirfd, const char *path, const char *str)
{
- va_list args;
- int ret;
-
- va_start(args, fmt);
- ret = vprintf(fmt, args);
- va_end(args);
+ int fd = xopenat(dirfd, path, O_WRONLY);
+ ssize_t wrote, len = strlen(str);
- while (ret++ < pad)
- putchar(' ');
-
- return ret;
+ wrote = write(fd, str, len);
+ if (wrote != len)
+ die("read error: %m");
+ close(fd);
}
-/* Argument parsing stuff: */
-
-/* File parsing (i.e. sysfs) */
-
char *read_file_str(int dirfd, const char *path)
{
int fd = xopenat(dirfd, path, O_RDONLY);