diff options
Diffstat (limited to 'include/fileutils.h')
-rw-r--r-- | include/fileutils.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/fileutils.h b/include/fileutils.h index 79dd01237..1cc007c76 100644 --- a/include/fileutils.h +++ b/include/fileutils.h @@ -28,6 +28,16 @@ static inline FILE *xfmkstemp(char **tmpname, const char *dir, const char *prefi return ret; } +static inline FILE *fopen_at(int dir, const char *filename, + int flags, const char *mode) +{ + int fd = openat(dir, filename, flags); + if (fd < 0) + return NULL; + + return fdopen(fd, mode); +} + static inline int is_same_inode(const int fd, const struct stat *st) { struct stat f; |