X-Git-Url: https://code.delx.au/refind/blobdiff_plain/899b647b89d57f623e69d3a890dbee84a7dfe451..672b9a0c278036e626685ab3439631c298909a22:/refind/lib.h diff --git a/refind/lib.h b/refind/lib.h index c908c11..376efd7 100644 --- a/refind/lib.h +++ b/refind/lib.h @@ -79,9 +79,16 @@ typedef struct { #define IS_EXTENDED_PART_TYPE(type) ((type) == 0x05 || (type) == 0x0f || (type) == 0x85) +// GPT attributes of interest to us for Freedesktop.org Discoverable +// Partitions Specification.... +#define GPT_READ_ONLY 0x1000000000000000 +#define GPT_NO_AUTOMOUNT 0x8000000000000000 + // Partition names to be ignored when setting volume name #define IGNORE_PARTITION_NAMES L"Microsoft basic data,Linux filesystem,Apple HFS/HFS+" +extern EFI_GUID gFreedesktopRootGuid; + EFI_STATUS InitRefitLib(IN EFI_HANDLE ImageHandle); VOID UninitRefitLib(VOID); EFI_STATUS ReinitRefitLib(VOID); @@ -94,8 +101,6 @@ VOID CreateList(OUT VOID ***ListPtr, OUT UINTN *ElementCount, IN UINTN InitialEl VOID AddListElement(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount, IN VOID *NewElement); 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); @@ -114,7 +119,11 @@ INTN FindMem(IN VOID *Buffer, IN UINTN BufferLength, IN VOID *SearchString, IN U VOID ReinitVolumes(VOID); BOOLEAN StriSubCmp(IN CHAR16 *TargetStr, IN CHAR16 *BigStr); +BOOLEAN MyStriCmp(IN CONST CHAR16 *String1, IN CONST CHAR16 *String2); +CHAR16* MyStrStr (IN CHAR16 *String, IN CHAR16 *StrCharSet); +VOID ToLower(CHAR16 * MyString); VOID MergeStrings(IN OUT CHAR16 **First, IN CHAR16 *Second, CHAR16 AddChar); +VOID MergeWords(CHAR16 **MergeTo, CHAR16 *InString, CHAR16 AddChar); CHAR16 *FindExtension(IN CHAR16 *Path); CHAR16 *FindLastDirName(IN CHAR16 *Path); CHAR16 *FindPath(IN CHAR16* FullPath); @@ -123,9 +132,8 @@ VOID FindVolumeAndFilename(IN EFI_DEVICE_PATH *loadpath, OUT REFIT_VOLUME **Devi BOOLEAN SplitVolumeAndFilename(IN OUT CHAR16 **Path, OUT CHAR16 **VolName); CHAR16 *FindNumbers(IN CHAR16 *InString); 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 IsIn(IN CHAR16 *SmallString, 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);