Binary release v6.20240107.0
This commit is contained in:
BIN
BOOTAA64.EFI
BIN
BOOTAA64.EFI
Binary file not shown.
BIN
BOOTIA32.EFI
BIN
BOOTIA32.EFI
Binary file not shown.
BIN
BOOTRISCV64.EFI
BIN
BOOTRISCV64.EFI
Binary file not shown.
BIN
BOOTX64.EFI
BIN
BOOTX64.EFI
Binary file not shown.
2
LICENSE
2
LICENSE
@@ -1,4 +1,4 @@
|
||||
Copyright (C) 2019-2023 mintsuki and contributors.
|
||||
Copyright (C) 2019-2024 mintsuki and contributors.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
Binary file not shown.
1962
limine-bios-hdd.h
1962
limine-bios-hdd.h
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
limine-bios.sys
BIN
limine-bios.sys
Binary file not shown.
Binary file not shown.
44
limine.c
44
limine.c
@@ -496,7 +496,11 @@ skip_save:;
|
||||
return true;
|
||||
}
|
||||
|
||||
static void uninstall(void) {
|
||||
static bool uninstall(bool quiet_arg) {
|
||||
bool print_cache_flush_fail = false;
|
||||
bool print_write_fail = false;
|
||||
bool ret = true;
|
||||
|
||||
uninstalling = true;
|
||||
|
||||
cache_state = CACHE_CLEAN;
|
||||
@@ -507,14 +511,15 @@ static void uninstall(void) {
|
||||
bool retry = false;
|
||||
while (!_device_write(ud->data, ud->loc, ud->count)) {
|
||||
if (retry) {
|
||||
fprintf(stderr, "%s: error: Uninstall data index %zu failed to write. Uninstall may be incomplete!\n", program_name, i);
|
||||
fprintf(stderr, "%s: warning: Retry failed.\n", program_name);
|
||||
print_write_fail = true;
|
||||
break;
|
||||
}
|
||||
if (!quiet) {
|
||||
fprintf(stderr, "%s: warning: Uninstall data index %zu failed to write, retrying...\n", program_name, i);
|
||||
}
|
||||
if (!device_flush_cache()) {
|
||||
fprintf(stderr, "%s: error: Device cache flush failure. Uninstall may be incomplete!\n", program_name);
|
||||
print_cache_flush_fail = true;
|
||||
}
|
||||
cache_state = CACHE_CLEAN;
|
||||
cached_block = (uint64_t)-1;
|
||||
@@ -523,12 +528,24 @@ static void uninstall(void) {
|
||||
}
|
||||
|
||||
if (!device_flush_cache()) {
|
||||
fprintf(stderr, "%s: error: Device cache flush failure. Uninstall may be incomplete!\n", program_name);
|
||||
print_cache_flush_fail = true;
|
||||
}
|
||||
|
||||
if (!quiet) {
|
||||
fprintf(stderr, "Uninstall data restored successfully. Limine uninstalled!\n");
|
||||
if (print_write_fail) {
|
||||
fprintf(stderr, "%s: error: Some data failed to be uninstalled correctly.\n", program_name);
|
||||
ret = false;
|
||||
}
|
||||
|
||||
if (print_cache_flush_fail) {
|
||||
fprintf(stderr, "%s: error: Device cache flush failure. Uninstall may be incomplete.\n", program_name);
|
||||
ret = false;
|
||||
}
|
||||
|
||||
if (ret == true && !quiet && !quiet_arg) {
|
||||
fprintf(stderr, "Uninstall data restored successfully.\n");
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define device_read(BUFFER, LOC, COUNT) \
|
||||
@@ -639,9 +656,11 @@ static int bios_install(int argc, char *argv[]) {
|
||||
goto uninstall_mode_cleanup;
|
||||
}
|
||||
|
||||
uninstall();
|
||||
|
||||
ok = EXIT_SUCCESS;
|
||||
if (uninstall(false) == false) {
|
||||
ok = EXIT_FAILURE;
|
||||
} else {
|
||||
ok = EXIT_SUCCESS;
|
||||
}
|
||||
goto uninstall_mode_cleanup;
|
||||
}
|
||||
|
||||
@@ -1005,7 +1024,8 @@ cleanup:
|
||||
reverse_uninstall_data();
|
||||
if (ok != EXIT_SUCCESS) {
|
||||
// If we failed, attempt to reverse install process
|
||||
uninstall();
|
||||
fprintf(stderr, "%s: Install failed, undoing work...\n", program_name);
|
||||
uninstall(true);
|
||||
} else if (uninstall_file != NULL) {
|
||||
store_uninstall_data(uninstall_file);
|
||||
}
|
||||
@@ -1143,8 +1163,8 @@ cleanup:
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define LIMINE_VERSION "6.20231227.0"
|
||||
#define LIMINE_COPYRIGHT "Copyright (C) 2019-2023 mintsuki and contributors."
|
||||
#define LIMINE_VERSION "6.20240107.0"
|
||||
#define LIMINE_COPYRIGHT "Copyright (C) 2019-2024 mintsuki and contributors."
|
||||
|
||||
static void version_usage(void) {
|
||||
printf("usage: %s version [options...]\n", program_name);
|
||||
|
||||
BIN
limine.exe
BIN
limine.exe
Binary file not shown.
1
limine.h
1
limine.h
@@ -438,6 +438,7 @@ struct limine_kernel_file_request {
|
||||
#define LIMINE_MODULE_REQUEST { LIMINE_COMMON_MAGIC, 0x3e7e279702be32af, 0xca1c4f3bd1280cee }
|
||||
|
||||
#define LIMINE_INTERNAL_MODULE_REQUIRED (1 << 0)
|
||||
#define LIMINE_INTERNAL_MODULE_COMPRESSED (1 << 1)
|
||||
|
||||
struct limine_internal_module {
|
||||
LIMINE_PTR(const char *) path;
|
||||
|
||||
Reference in New Issue
Block a user