1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 3 #ifndef SMMSTORETOOL__UTILS_H__ 4 #define SMMSTORETOOL__UTILS_H__ 5 6 #include <stddef.h> 7 #include <stdbool.h> 8 #include <stdint.h> 9 10 #include "udk2017.h" 11 12 struct mem_range_t { 13 uint8_t *start; 14 size_t length; 15 }; 16 17 void *xmalloc(size_t size); 18 19 char *to_chars(const CHAR16 uchars[], size_t size); 20 21 CHAR16 *to_uchars(const char chars[], size_t *size); 22 23 bool str_eq(const char lhs[], const char rhs[]); 24 25 struct mem_range_t map_file(const char path[], bool rw); 26 27 void unmap_file(struct mem_range_t store); 28 29 #endif // SMMSTORETOOL__UTILS_H__ 30