X-Git-Url: https://code.delx.au/refind/blobdiff_plain/224ffad523048df8ad5f14038de21b7afe6a3b6a..e86087ab76430dd4acf8c992aa0d9bad1c1c494b:/refind/lib.h diff --git a/refind/lib.h b/refind/lib.h index be26dc7..c908c11 100644 --- a/refind/lib.h +++ b/refind/lib.h @@ -34,7 +34,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* - * Modifications copyright (c) 2012 Roderick W. Smith + * Modifications copyright (c) 2012-2015 Roderick W. Smith * * Modifications distributed under the terms of the GNU General Public * License (GPL) version 3 (GPLv3), a copy of which must be distributed @@ -73,6 +73,7 @@ typedef struct { #define DISK_KIND_INTERNAL (0) #define DISK_KIND_EXTERNAL (1) #define DISK_KIND_OPTICAL (2) +#define DISK_KIND_NET (3) #define VOL_UNREADABLE 999 @@ -85,6 +86,9 @@ EFI_STATUS InitRefitLib(IN EFI_HANDLE ImageHandle); VOID UninitRefitLib(VOID); EFI_STATUS ReinitRefitLib(VOID); +EFI_STATUS EfivarGetRaw(EFI_GUID *vendor, CHAR16 *name, CHAR8 **buffer, UINTN *size); +EFI_STATUS EfivarSetRaw(EFI_GUID *vendor, CHAR16 *name, CHAR8 *buf, UINTN size, BOOLEAN persistent); + VOID CleanUpPathNameSlashes(IN OUT CHAR16 *PathName); VOID CreateList(OUT VOID ***ListPtr, OUT UINTN *ElementCount, IN UINTN InitialElementCount); VOID AddListElement(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount, IN VOID *NewElement); @@ -92,10 +96,10 @@ VOID FreeList(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount); VOID ExtractLegacyLoaderPaths(EFI_DEVICE_PATH **PathList, UINTN MaxPaths, EFI_DEVICE_PATH **HardcodedPathList); +VOID SetVolumeBadgeIcon(REFIT_VOLUME *Volume); VOID ScanVolumes(VOID); BOOLEAN FileExists(IN EFI_FILE *BaseDir, IN CHAR16 *RelativePath); -BOOLEAN DirectoryExists(IN EFI_FILE *BaseDir, IN CHAR16 *RelativePath); EFI_STATUS DirNextEntry(IN EFI_FILE *Directory, IN OUT EFI_FILE_INFO **DirEntry, IN UINTN FilterMode); @@ -122,6 +126,7 @@ CHAR16 *FindCommaDelimited(IN CHAR16 *InString, IN UINTN Index); INTN FindSubString(IN CHAR16 *SmallString, IN CHAR16 *BigString); VOID SplitPathName(CHAR16 *InPath, CHAR16 **VolName, CHAR16 **Path, CHAR16 **Filename); BOOLEAN IsIn(IN CHAR16 *Filename, IN CHAR16 *List); +BOOLEAN IsInSubstring(IN CHAR16 *BigString, IN CHAR16 *List); BOOLEAN FilenameIn(IN REFIT_VOLUME *Volume, IN CHAR16 *Directory, IN CHAR16 *Filename, IN CHAR16 *List); BOOLEAN VolumeNumberToName(REFIT_VOLUME *Volume, CHAR16 **VolName); VOID MyFreePool(IN OUT VOID *Pointer);