diff options
Diffstat (limited to '')
-rw-r--r-- | libblkid/src/fileutils.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/libblkid/src/fileutils.h b/libblkid/src/fileutils.h new file mode 100644 index 000000000..3353f69a0 --- /dev/null +++ b/libblkid/src/fileutils.h @@ -0,0 +1,33 @@ +#ifndef UTIL_LINUX_FILEUTILS +#define UTIL_LINUX_FILEUTILS + +#include <stdio.h> +#include <fcntl.h> +#include <unistd.h> + +#include "c.h" + +extern int xmkstemp(char **tmpname, char *dir); + +static inline FILE *xfmkstemp(char **tmpname, char *dir) +{ + int fd; + FILE *ret; + + fd = xmkstemp(tmpname, dir); + if (fd == -1) + return NULL; + + if (!(ret = fdopen(fd, "w+" UL_CLOEXECSTR))) { + close(fd); + return NULL; + } + return ret; +} + +extern int get_fd_tabsize(void); + +extern int mkdir_p(const char *path, mode_t mode); +extern char *stripoff_last_component(char *path); + +#endif /* UTIL_LINUX_FILEUTILS */ |