Added helper for backing info

This commit is contained in:
Alexei KADIR 2024-02-20 15:12:27 +01:00
parent 6eaa10e3d3
commit 091c9fa692
2 changed files with 32 additions and 1 deletions

View File

@ -419,3 +419,28 @@ result_t get_backing_parent(char** _parent, const char* backing) {
*_parent = parent; *_parent = parent;
return success(); return success();
} }
result_t get_backing_info(disk_info_t* _info, const char* backing) {
// Initialize the output parameters
_info->size = 0;
_info->allocated = 0;
_info->backing_path = NULL;
// Check that the backing exists
result_t result = check_backing_exists(backing);
if (result != success())
return result;
// Get the backing path
char* path;
result = get_backing_path(&path, backing);
if (result != success())
return result;
// Get the disk information
result = get_disk_info(_info, path);
free(path);
return result;
}

View File

@ -74,4 +74,10 @@ result_t set_default_backing(const char* backing);
/// @param _parent The string pointer to store the resulting backing parent identifier in. The caller is responsible for freeing the string. /// @param _parent The string pointer to store the resulting backing parent identifier in. The caller is responsible for freeing the string.
/// @param backing The backing to get the parent of. /// @param backing The backing to get the parent of.
/// @return The result of the operation. /// @return The result of the operation.
result_t get_backing_parent(char** _parent, const char* backing); result_t get_backing_parent(char** _parent, const char* backing);
/// @brief Gets information about the given backing. If the backing does not exist, the call will return a failure result with an error message.
/// @param _info The string pointer to store the resulting disk information in. The caller is responsible for freeing the string.
/// @param backing The backing to get information about.
/// @return The result of the operation.
result_t get_backing_info(disk_info_t* _info, const char* backing);