aboutsummaryrefslogtreecommitdiffstats
path: root/Library/UefiShellUfmCommandLib/fs.h
diff options
context:
space:
mode:
authorJoursoir <chat@joursoir.net>2021-11-17 19:25:43 +0300
committerJoursoir <chat@joursoir.net>2021-11-17 19:25:43 +0300
commitb9c0d81eac650a2b1df7d3cafe0d41caed33421f (patch)
tree0a523a56cc2d389b540b3946a3b254807e8c1a37 /Library/UefiShellUfmCommandLib/fs.h
parent7bbbcb62f632e12edc228b1ab675db88a331b20c (diff)
downloadufm-b9c0d81eac650a2b1df7d3cafe0d41caed33421f.tar.gz
ufm-b9c0d81eac650a2b1df7d3cafe0d41caed33421f.tar.bz2
ufm-b9c0d81eac650a2b1df7d3cafe0d41caed33421f.zip
add routines to get filesystems
Diffstat (limited to 'Library/UefiShellUfmCommandLib/fs.h')
-rw-r--r--Library/UefiShellUfmCommandLib/fs.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/Library/UefiShellUfmCommandLib/fs.h b/Library/UefiShellUfmCommandLib/fs.h
new file mode 100644
index 0000000..f7625b1
--- /dev/null
+++ b/Library/UefiShellUfmCommandLib/fs.h
@@ -0,0 +1,30 @@
+#ifndef UFM_FS_H
+#define UFM_FS_H
+
+#include <Uefi.h>
+
+struct fs_array {
+ CHAR16 **full_name;
+ int len; // number of elements in array
+};
+
+/*
+ * Gets the mapped names of the filesystems
+ *
+ * handles: a pointer to the buffer to array of handles that support Simple FS Protocol
+ * count: the number of handles
+ *
+ * return: A pointer to the allocated structure or NULL if allocation fails
+*/
+struct fs_array *fsa_alloc(EFI_HANDLE *handles, UINTN count);
+
+/*
+ * Deletes the array of filesystems, frees the structure
+ *
+ * fsa: the pointer to the array of filesystems
+ *
+ * return: VOID
+*/
+VOID fsa_release(struct fs_array *fsa);
+
+#endif /* UFM_FS_H */