X-Git-Url: https://code.delx.au/refind/blobdiff_plain/c8883302f06e69a8b961280b73e29b4b09cacb9d..b06865fd80f51e75b573269f6f987a845da4648f:/refind/global.h diff --git a/refind/global.h b/refind/global.h index 4824445..30de68c 100644 --- a/refind/global.h +++ b/refind/global.h @@ -131,7 +131,8 @@ #define FS_TYPE_HFSPLUS 8 #define FS_TYPE_REISERFS 9 #define FS_TYPE_BTRFS 10 -#define FS_TYPE_ISO9660 11 +#define FS_TYPE_XFS 11 +#define FS_TYPE_ISO9660 12 // How to scale banner images #define BANNER_NOSCALE 0 @@ -204,6 +205,8 @@ typedef struct { CHAR16 *PartName; EFI_GUID VolUuid; EFI_GUID PartGuid; + EFI_GUID PartTypeGuid; + BOOLEAN IsMarkedReadOnly; UINTN VolNumber; EG_IMAGE *VolIconImage; EG_IMAGE *VolBadgeImage; @@ -269,38 +272,42 @@ typedef struct { } LEGACY_ENTRY; typedef struct { - BOOLEAN TextOnly; - BOOLEAN ScanAllLinux; - BOOLEAN DeepLegacyScan; - BOOLEAN EnableAndLockVMX; - UINTN RequestedScreenWidth; - UINTN RequestedScreenHeight; - UINTN BannerBottomEdge; - UINTN RequestedTextMode; - UINTN Timeout; - UINTN HideUIFlags; - UINTN MaxTags; // max. number of OS entries to show simultaneously in graphics mode - UINTN GraphicsFor; - UINTN LegacyType; - UINTN ScanDelay; - UINTN ScreensaverTime; - UINTN IconSizes[3]; - UINTN BannerScale; - CHAR16 *BannerFileName; - EG_IMAGE *ScreenBackground; - CHAR16 *ConfigFilename; - CHAR16 *SelectionSmallFileName; - CHAR16 *SelectionBigFileName; - CHAR16 *DefaultSelection; - CHAR16 *AlsoScan; - CHAR16 *DontScanVolumes; - CHAR16 *DontScanDirs; - CHAR16 *DontScanFiles; - CHAR16 *WindowsRecoveryFiles; - CHAR16 *DriverDirs; - CHAR16 *IconsDir; - UINTN ShowTools[NUM_TOOLS]; - CHAR8 ScanFor[NUM_SCAN_OPTIONS]; // codes of types of loaders for which to scan + BOOLEAN TextOnly; + BOOLEAN ScanAllLinux; + BOOLEAN DeepLegacyScan; + BOOLEAN EnableAndLockVMX; + BOOLEAN FoldLinuxKernels; + UINTN RequestedScreenWidth; + UINTN RequestedScreenHeight; + UINTN BannerBottomEdge; + UINTN RequestedTextMode; + UINTN Timeout; + UINTN HideUIFlags; + UINTN MaxTags; // max. number of OS entries to show simultaneously in graphics mode + UINTN GraphicsFor; + UINTN LegacyType; + UINTN ScanDelay; + UINTN ScreensaverTime; + UINTN IconSizes[3]; + UINTN BannerScale; + REFIT_VOLUME *DiscoveredRoot; + EFI_DEVICE_PATH *SelfDevicePath; + CHAR16 *BannerFileName; + EG_IMAGE *ScreenBackground; + CHAR16 *ConfigFilename; + CHAR16 *SelectionSmallFileName; + CHAR16 *SelectionBigFileName; + CHAR16 *DefaultSelection; + CHAR16 *AlsoScan; + CHAR16 *DontScanVolumes; + CHAR16 *DontScanDirs; + CHAR16 *DontScanFiles; + CHAR16 *WindowsRecoveryFiles; + CHAR16 *DriverDirs; + CHAR16 *IconsDir; + CHAR16 *SpoofOSXVersion; + UINTN ShowTools[NUM_TOOLS]; + CHAR8 ScanFor[NUM_SCAN_OPTIONS]; // codes of types of loaders for which to scan } REFIT_CONFIG; // Global variables @@ -328,10 +335,9 @@ EFI_STATUS StartEFIImageList(IN EFI_DEVICE_PATH **DevicePaths, IN BOOLEAN IsDriver); LOADER_ENTRY *InitializeLoaderEntry(IN LOADER_ENTRY *Entry); REFIT_MENU_SCREEN *InitializeSubScreen(IN LOADER_ENTRY *Entry); -VOID GenerateSubScreen(LOADER_ENTRY *Entry, IN REFIT_VOLUME *Volume); +VOID GenerateSubScreen(LOADER_ENTRY *Entry, IN REFIT_VOLUME *Volume, IN BOOLEAN GenerateReturn); EG_IMAGE * GetDiskBadge(IN UINTN DiskType); LOADER_ENTRY * MakeGenericLoaderEntry(VOID); -LOADER_ENTRY * AddLoaderEntry(IN CHAR16 *LoaderPath, IN CHAR16 *LoaderTitle, IN REFIT_VOLUME *Volume); VOID SetLoaderDefaults(LOADER_ENTRY *Entry, CHAR16 *LoaderPath, IN REFIT_VOLUME *Volume); LOADER_ENTRY * AddPreparedLoaderEntry(LOADER_ENTRY *Entry); VOID StoreLoaderName(IN CHAR16 *Name);