int libmem_foreach_sector_in_range(libmem_driver_handle_t *h,
                                   uint8_t *range_start,
                                   size_t range_size,
                                   libmem_foreach_sector_fn_t fn,
                                   uint8_t **actual_range_start,
                                   size_t *actual_range_size);

libmem_foreach_sector_in_range is a helper function for iterating through all sectors handled by a driver that are within a specific address range.

h — A pointer to the handle of the LIBMEM driver.

range_start — A pointer to the start of the address range.

range_size — The size of the address range in bytes.

fn — The function to call for each sector.

actual_range_start — A pointer to the start of the first sector that is within the address range.

actual_range_size — The combined size of all the sectors that are within the address range.

libmem_foreach_sector_in_range returns — The LIBMEM status result.

This function iterates through all the sectors handled by a single LIBMEM driver and calls a libmem_foreach_sector_fn_t function for each if it is within the specified address range. If any of the calls return a response other than LIBMEM_STATUS_SUCCESS this function will terminate and return the response.