From 050f61519ce2f767d33283474719424fa01cab9f Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Tue, 16 Jul 2019 12:13:49 +0200 Subject: [PATCH] settings/keyfile: output "struct stat" from nms_keyfile_loaded_uuid_read() We already stat() the file, so optionally return the stat result to the caller. --- src/settings/plugins/keyfile/nms-keyfile-utils.c | 8 +++++--- src/settings/plugins/keyfile/nms-keyfile-utils.h | 3 ++- .../plugins/keyfile/tests/test-keyfile-settings.c | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/settings/plugins/keyfile/nms-keyfile-utils.c b/src/settings/plugins/keyfile/nms-keyfile-utils.c index f2f9f37b7c..50e00263f7 100644 --- a/src/settings/plugins/keyfile/nms-keyfile-utils.c +++ b/src/settings/plugins/keyfile/nms-keyfile-utils.c @@ -64,7 +64,8 @@ nms_keyfile_loaded_uuid_read (const char *dirname, const char *filename, char **out_full_filename, char **out_uuid, - char **out_loaded_path) + char **out_loaded_path, + struct stat *out_st) { const char *uuid; const char *tmp; @@ -115,7 +116,7 @@ nms_keyfile_loaded_uuid_read (const char *dirname, if (!nms_keyfile_utils_check_file_permissions (NMS_KEYFILE_FILETYPE_NMLOADED, full_filename, - NULL, + out_st, NULL)) return FALSE; @@ -148,7 +149,8 @@ nms_keyfile_loaded_uuid_read_from_file (const char *full_filename, filename, NULL, out_uuid, - out_loaded_path)) + out_loaded_path, + NULL)) return FALSE; NM_SET_OUT (out_dirname, g_steal_pointer (&dirname)); diff --git a/src/settings/plugins/keyfile/nms-keyfile-utils.h b/src/settings/plugins/keyfile/nms-keyfile-utils.h index 30b033adba..8a31232d08 100644 --- a/src/settings/plugins/keyfile/nms-keyfile-utils.h +++ b/src/settings/plugins/keyfile/nms-keyfile-utils.h @@ -45,7 +45,8 @@ gboolean nms_keyfile_loaded_uuid_read (const char *dirname, const char *filename, char **out_full_filename, char **out_uuid, - char **out_loaded_path); + char **out_loaded_path, + struct stat *out_st); gboolean nms_keyfile_loaded_uuid_read_from_file (const char *full_filename, char **out_dirname, diff --git a/src/settings/plugins/keyfile/tests/test-keyfile-settings.c b/src/settings/plugins/keyfile/tests/test-keyfile-settings.c index 232c690431..4d02c58b7f 100644 --- a/src/settings/plugins/keyfile/tests/test-keyfile-settings.c +++ b/src/settings/plugins/keyfile/tests/test-keyfile-settings.c @@ -2550,7 +2550,7 @@ _assert_keyfile_loaded_uuid (const char *dirname, g_assert_cmpstr (symlink_target, ==, exp_symlink_target); - success = nms_keyfile_loaded_uuid_read (dirname, filename, &full_filename, &uuid2, &loaded_path2); + success = nms_keyfile_loaded_uuid_read (dirname, filename, &full_filename, &uuid2, &loaded_path2, NULL); g_assert_cmpint (!!exp_uuid, ==, success); if (success) g_assert_cmpstr (full_filename, ==, exp_full_filename);