shared: add nm_utils_file_stat() util

A small convenience function to call stat(). The difference is that the
function returns an error code.
This commit is contained in:
Thomas Haller
2019-06-24 09:00:15 +02:00
parent ec707f56c1
commit 02ac5693d3
2 changed files with 27 additions and 0 deletions

View File

@@ -436,3 +436,26 @@ nm_utils_file_set_contents (const char *filename,
return TRUE;
}
/**
* nm_utils_file_stat:
* @filename: the filename to stat.
* @out_st: (allow-none) (out): if given, this will be passed to stat().
*
* Just wraps stat() and gives the errno number as function result instead
* of setting the errno (though, errno is also set). It's only for convenience
* with
*
* if (nm_utils_file_stat (filename, NULL) == -ENOENT) {
* }
*
* Returns: 0 on success a negative errno on failure. */
int
nm_utils_file_stat (const char *filename, struct stat *out_st)
{
struct stat st;
if (stat (filename, out_st ?: &st) != 0)
return -NM_ERRNO_NATIVE (errno);
return 0;
}

View File

@@ -59,4 +59,8 @@ gboolean nm_utils_file_set_contents (const char *filename,
mode_t mode,
GError **error);
struct stat;
int nm_utils_file_stat (const char *filename, struct stat *out_st);
#endif /* __NM_IO_UTILS_H__ */