From be50ea69aaf2a18b9801c04efea19825d7f34c44 Mon Sep 17 00:00:00 2001 From: longpanda Date: Fri, 7 Aug 2020 22:23:27 +0800 Subject: [PATCH] 1. Boot menu over serial supported 2. Optimization for booting Solus 3. Optimization for booting .efi file 4. support deepin-live iso 5. support Endless OS 6. framework for booting .img file --- .../MdeModulePkg/Application/Ventoy/Ventoy.c | 33 +- .../MdeModulePkg/Application/Ventoy/Ventoy.h | 1 + .../Application/Ventoy/VentoyProtocol.c | 3 +- .../grub-2.04/grub-core/Makefile.core.def | 11 + .../grub-2.04/grub-core/commands/blscfg.c | 1111 +++++++++++++ .../grub-2.04/grub-core/commands/legacycfg.c | 894 ++++++++++ .../grub-2.04/grub-core/commands/loadenv.c | 397 +++++ .../grub-2.04/grub-core/commands/loadenv.h | 93 ++ .../grub-2.04/grub-core/commands/menuentry.c | 349 ++++ GRUB2/MOD_SRC/grub-2.04/grub-core/kern/main.c | 48 +- .../grub-2.04/grub-core/loader/i386/linux.c | 1470 +++++++++++++++++ .../MOD_SRC/grub-2.04/grub-core/normal/main.c | 575 +++++++ .../MOD_SRC/grub-2.04/grub-core/normal/menu.c | 7 + .../grub-2.04/grub-core/normal/menu_text.c | 4 +- .../grub-2.04/grub-core/ventoy/ventoy.c | 257 ++- .../grub-2.04/grub-core/ventoy/ventoy_def.h | 1 + .../grub-2.04/grub-core/ventoy/ventoy_linux.c | 98 ++ .../grub-core/ventoy/ventoy_plugin.c | 13 + .../grub-2.04/grub-core/ventoy/ventoy_unix.c | 631 +++++++ .../MOD_SRC/grub-2.04/include/grub/compiler.h | 53 + GRUB2/MOD_SRC/grub-2.04/include/grub/kernel.h | 133 ++ GRUB2/MOD_SRC/grub-2.04/include/grub/menu.h | 119 ++ GRUB2/MOD_SRC/grub-2.04/include/grub/normal.h | 177 ++ IMG/cpio/sbin/init | 3 +- IMG/cpio/ventoy/hook/default/10-dm.rules | 150 ++ IMG/cpio/ventoy/hook/ventoy-hook-lib.sh | 2 +- IMG/cpio/ventoy/hook/ventoy-os-lib.sh | 6 + IMG/cpio/ventoy/init | 203 +-- IMG/cpio/ventoy/init_chain | 226 +++ IMG/cpio/ventoy/init_loop | 90 + IMG/cpio/ventoy/loop/deepin/ventoy-disk.sh | 36 + IMG/cpio/ventoy/loop/deepin/ventoy-init.sh | 21 + IMG/cpio/ventoy/loop/endless/ventoy-hook.sh | 36 + .../loop/endless/ventoy-inotifyd-hook.sh | 37 + .../loop/endless/ventoy-inotifyd-start.sh | 31 + .../ventoy/{ventoy.sh => ventoy_chain.sh} | 2 + IMG/cpio/ventoy/ventoy_loop.sh | 116 ++ IMG/mkcpio.sh | 3 +- INSTALL/CreatePersistentImg.sh | 4 +- INSTALL/EFI/BOOT/grubx64_real.efi | Bin 1388544 -> 1400832 bytes INSTALL/grub/grub.cfg | 165 +- INSTALL/grub/i386-pc/blscfg.mod | Bin 0 -> 9916 bytes INSTALL/grub/i386-pc/command.lst | 6 + INSTALL/grub/i386-pc/core.img | Bin 313360 -> 315816 bytes INSTALL/grub/i386-pc/legacycfg.mod | Bin 30064 -> 30064 bytes INSTALL/grub/i386-pc/moddep.lst | 1 + INSTALL/grub/x86_64-efi/blscfg.mod | Bin 0 -> 16368 bytes INSTALL/grub/x86_64-efi/command.lst | 6 + INSTALL/grub/x86_64-efi/legacycfg.mod | Bin 44728 -> 44744 bytes INSTALL/grub/x86_64-efi/moddep.lst | 1 + INSTALL/grub/x86_64-efi/normal.mod | Bin 172800 -> 173168 bytes INSTALL/ventoy/ventoy.cpio | Bin 1736704 -> 1753600 bytes INSTALL/ventoy/ventoy_efiboot.img.xz | Bin 0 -> 876 bytes INSTALL/ventoy/ventoy_x64.efi | Bin 50976 -> 51552 bytes 54 files changed, 7366 insertions(+), 257 deletions(-) create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/commands/blscfg.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/commands/legacycfg.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.h create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/commands/menuentry.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/loader/i386/linux.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/normal/main.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_unix.c create mode 100644 GRUB2/MOD_SRC/grub-2.04/include/grub/compiler.h create mode 100644 GRUB2/MOD_SRC/grub-2.04/include/grub/kernel.h create mode 100644 GRUB2/MOD_SRC/grub-2.04/include/grub/menu.h create mode 100644 GRUB2/MOD_SRC/grub-2.04/include/grub/normal.h create mode 100644 IMG/cpio/ventoy/hook/default/10-dm.rules create mode 100644 IMG/cpio/ventoy/init_chain create mode 100644 IMG/cpio/ventoy/init_loop create mode 100644 IMG/cpio/ventoy/loop/deepin/ventoy-disk.sh create mode 100644 IMG/cpio/ventoy/loop/deepin/ventoy-init.sh create mode 100644 IMG/cpio/ventoy/loop/endless/ventoy-hook.sh create mode 100644 IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-hook.sh create mode 100644 IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-start.sh rename IMG/cpio/ventoy/{ventoy.sh => ventoy_chain.sh} (99%) create mode 100644 IMG/cpio/ventoy/ventoy_loop.sh create mode 100644 INSTALL/grub/i386-pc/blscfg.mod create mode 100644 INSTALL/grub/x86_64-efi/blscfg.mod create mode 100644 INSTALL/ventoy/ventoy_efiboot.img.xz diff --git a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.c b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.c index bd28ca26..6cd64636 100644 --- a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.c +++ b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.c @@ -331,7 +331,7 @@ EFI_STATUS EFIAPI ventoy_save_ramdisk_param(VOID) Status = gRT->SetVariable(L"VentoyRamDisk", &VarGuid, EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS, sizeof(g_ramdisk_param), &(g_ramdisk_param)); - debug("set efi variable %r", Status); + debug("set ramdisk variable %r", Status); return Status; } @@ -663,17 +663,22 @@ STATIC EFI_STATUS EFIAPI ventoy_parse_cmdline(IN EFI_HANDLE ImageHandle) size = StrDecimalToUintn(pPos + 5); debug("memory addr:%p size:%lu", chain, size); - - g_chain = AllocatePool(size); - CopyMem(g_chain, chain, size); if (StrStr(pCmdLine, L"memdisk")) { - g_iso_buf_size = size; + g_iso_data_buf = (UINT8 *)chain + sizeof(ventoy_chain_head); + g_iso_buf_size = size - sizeof(ventoy_chain_head); + debug("memdisk mode iso_buf_size:%u", g_iso_buf_size); + + g_chain = chain; gMemdiskMode = TRUE; } else { + debug("This is normal mode"); + g_chain = AllocatePool(size); + CopyMem(g_chain, chain, size); + g_chunk = (ventoy_img_chunk *)((char *)g_chain + g_chain->img_chunk_offset); g_img_chunk_num = g_chain->img_chunk_num; g_override_chunk = (ventoy_override_chunk *)((char *)g_chain + g_chain->override_chunk_offset); @@ -725,6 +730,8 @@ STATIC EFI_STATUS EFIAPI ventoy_parse_cmdline(IN EFI_HANDLE ImageHandle) } } + ventoy_debug_pause(); + FreePool(pCmdLine); return EFI_SUCCESS; } @@ -942,15 +949,29 @@ EFI_STATUS EFIAPI VentoyEfiMain if (gMemdiskMode) { - g_ramdisk_param.PhyAddr = (UINT64)(UINTN)g_chain; + g_ramdisk_param.PhyAddr = (UINT64)(UINTN)g_iso_data_buf; g_ramdisk_param.DiskSize = (UINT64)g_iso_buf_size; ventoy_save_ramdisk_param(); + + if (gLoadIsoEfi) + { + ventoy_find_iso_disk(ImageHandle); + ventoy_find_iso_disk_fs(ImageHandle); + ventoy_load_isoefi_driver(ImageHandle); + } ventoy_install_blockio(ImageHandle, g_iso_buf_size); + ventoy_debug_pause(); + Status = ventoy_boot(ImageHandle); ventoy_delete_ramdisk_param(); + + if (gLoadIsoEfi && gBlockData.IsoDriverImage) + { + gBS->UnloadImage(gBlockData.IsoDriverImage); + } } else { diff --git a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.h b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.h index 2e2ab031..250da0ed 100644 --- a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.h +++ b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/Ventoy.h @@ -339,6 +339,7 @@ extern ventoy_sector_flag *g_sector_flag; extern UINT32 g_sector_flag_num; extern BOOLEAN gMemdiskMode; extern UINTN g_iso_buf_size; +extern UINT8 *g_iso_data_buf; extern ventoy_grub_param_file_replace *g_file_replace_list; extern BOOLEAN g_fixup_iso9660_secover_enable; extern EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *g_con_simple_input_ex; diff --git a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/VentoyProtocol.c b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/VentoyProtocol.c index 004c83f9..bb0e95e1 100644 --- a/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/VentoyProtocol.c +++ b/EDK2/edk2_mod/edk2-edk2-stable201911/MdeModulePkg/Application/Ventoy/VentoyProtocol.c @@ -36,6 +36,7 @@ #include #include +UINT8 *g_iso_data_buf = NULL; UINTN g_iso_buf_size = 0; BOOLEAN gMemdiskMode = FALSE; @@ -254,7 +255,7 @@ EFI_STATUS EFIAPI ventoy_block_io_ramdisk_read (VOID)This; (VOID)MediaId; - CopyMem(Buffer, (char *)g_chain + (Lba * 2048), BufferSize); + CopyMem(Buffer, g_iso_data_buf + (Lba * 2048), BufferSize); if (g_blockio_start_record_bcd && FALSE == g_blockio_bcd_read_done) { diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/Makefile.core.def b/GRUB2/MOD_SRC/grub-2.04/grub-core/Makefile.core.def index e8d4a7f4..4ac0746f 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/Makefile.core.def +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/Makefile.core.def @@ -809,6 +809,16 @@ module = { common = commands/blocklist.c; }; +module = { + name = blscfg; + common = commands/blscfg.c; + common = commands/loadenv.h; + enable = powerpc_ieee1275; + enable = efi; + enable = i386_pc; + enable = emu; +}; + module = { name = boot; common = commands/boot.c; @@ -986,6 +996,7 @@ module = { module = { name = loadenv; common = commands/loadenv.c; + common = commands/loadenv.h; common = lib/envblk.c; }; diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/blscfg.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/blscfg.c new file mode 100644 index 00000000..55ee2be0 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/blscfg.c @@ -0,0 +1,1111 @@ +/*-*- Mode: C; c-basic-offset: 2; indent-tabs-mode: t -*-*/ + +/* bls.c - implementation of the boot loader spec */ + +/* + * GRUB -- GRand Unified Bootloader + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +GRUB_MOD_LICENSE ("GPLv3+"); + +#include "loadenv.h" + +#define GRUB_BLS_CONFIG_PATH "/loader/entries/" +#ifdef GRUB_MACHINE_EMU +#define GRUB_BOOT_DEVICE "/boot" +#else +#define GRUB_BOOT_DEVICE "($root)" +#endif + +struct keyval +{ + const char *key; + char *val; +}; + +static struct bls_entry *entries = NULL; + +#define FOR_BLS_ENTRIES(var) FOR_LIST_ELEMENTS (var, entries) + +static int bls_add_keyval(struct bls_entry *entry, char *key, char *val) +{ + char *k, *v; + struct keyval **kvs, *kv; + int new_n = entry->nkeyvals + 1; + + kvs = grub_realloc (entry->keyvals, new_n * sizeof (struct keyval *)); + if (!kvs) + return grub_error (GRUB_ERR_OUT_OF_MEMORY, + "couldn't find space for BLS entry"); + entry->keyvals = kvs; + + kv = grub_malloc (sizeof (struct keyval)); + if (!kv) + return grub_error (GRUB_ERR_OUT_OF_MEMORY, + "couldn't find space for BLS entry"); + + k = grub_strdup (key); + if (!k) + { + grub_free (kv); + return grub_error (GRUB_ERR_OUT_OF_MEMORY, + "couldn't find space for BLS entry"); + } + + v = grub_strdup (val); + if (!v) + { + grub_free (k); + grub_free (kv); + return grub_error (GRUB_ERR_OUT_OF_MEMORY, + "couldn't find space for BLS entry"); + } + + kv->key = k; + kv->val = v; + + entry->keyvals[entry->nkeyvals] = kv; + grub_dprintf("blscfg", "new keyval at %p:%s:%s\n", entry->keyvals[entry->nkeyvals], k, v); + entry->nkeyvals = new_n; + + return 0; +} + +/* Find they value of the key named by keyname. If there are allowed to be + * more than one, pass a pointer to an int set to -1 the first time, and pass + * the same pointer through each time after, and it'll return them in sorted + * order as defined in the BLS fragment file */ +static char *bls_get_val(struct bls_entry *entry, const char *keyname, int *last) +{ + int idx, start = 0; + struct keyval *kv = NULL; + + if (last) + start = *last + 1; + + for (idx = start; idx < entry->nkeyvals; idx++) { + kv = entry->keyvals[idx]; + + if (!grub_strcmp (keyname, kv->key)) + break; + } + + if (idx == entry->nkeyvals) { + if (last) + *last = -1; + return NULL; + } + + if (last) + *last = idx; + + return kv->val; +} + +#define goto_return(x) ({ ret = (x); goto finish; }) + +/* compare alpha and numeric segments of two versions */ +/* return 1: a is newer than b */ +/* 0: a and b are the same version */ +/* -1: b is newer than a */ +static int vercmp(const char * a, const char * b) +{ + char oldch1, oldch2; + char *abuf, *bbuf; + char *str1, *str2; + char * one, * two; + int rc; + int isnum; + int ret = 0; + + grub_dprintf("blscfg", "%s comparing %s and %s\n", __func__, a, b); + if (!grub_strcmp(a, b)) + return 0; + + abuf = grub_malloc(grub_strlen(a) + 1); + bbuf = grub_malloc(grub_strlen(b) + 1); + str1 = abuf; + str2 = bbuf; + grub_strcpy(str1, a); + grub_strcpy(str2, b); + + one = str1; + two = str2; + + /* loop through each version segment of str1 and str2 and compare them */ + while (*one || *two) { + while (*one && !grub_isalnum(*one) && *one != '~') one++; + while (*two && !grub_isalnum(*two) && *two != '~') two++; + + /* handle the tilde separator, it sorts before everything else */ + if (*one == '~' || *two == '~') { + if (*one != '~') goto_return (1); + if (*two != '~') goto_return (-1); + one++; + two++; + continue; + } + + /* If we ran to the end of either, we are finished with the loop */ + if (!(*one && *two)) break; + + str1 = one; + str2 = two; + + /* grab first completely alpha or completely numeric segment */ + /* leave one and two pointing to the start of the alpha or numeric */ + /* segment and walk str1 and str2 to end of segment */ + if (grub_isdigit(*str1)) { + while (*str1 && grub_isdigit(*str1)) str1++; + while (*str2 && grub_isdigit(*str2)) str2++; + isnum = 1; + } else { + while (*str1 && grub_isalpha(*str1)) str1++; + while (*str2 && grub_isalpha(*str2)) str2++; + isnum = 0; + } + + /* save character at the end of the alpha or numeric segment */ + /* so that they can be restored after the comparison */ + oldch1 = *str1; + *str1 = '\0'; + oldch2 = *str2; + *str2 = '\0'; + + /* this cannot happen, as we previously tested to make sure that */ + /* the first string has a non-null segment */ + if (one == str1) goto_return(-1); /* arbitrary */ + + /* take care of the case where the two version segments are */ + /* different types: one numeric, the other alpha (i.e. empty) */ + /* numeric segments are always newer than alpha segments */ + /* XXX See patch #60884 (and details) from bugzilla #50977. */ + if (two == str2) goto_return (isnum ? 1 : -1); + + if (isnum) { + grub_size_t onelen, twolen; + /* this used to be done by converting the digit segments */ + /* to ints using atoi() - it's changed because long */ + /* digit segments can overflow an int - this should fix that. */ + + /* throw away any leading zeros - it's a number, right? */ + while (*one == '0') one++; + while (*two == '0') two++; + + /* whichever number has more digits wins */ + onelen = grub_strlen(one); + twolen = grub_strlen(two); + if (onelen > twolen) goto_return (1); + if (twolen > onelen) goto_return (-1); + } + + /* grub_strcmp will return which one is greater - even if the two */ + /* segments are alpha or if they are numeric. don't return */ + /* if they are equal because there might be more segments to */ + /* compare */ + rc = grub_strcmp(one, two); + if (rc) goto_return (rc < 1 ? -1 : 1); + + /* restore character that was replaced by null above */ + *str1 = oldch1; + one = str1; + *str2 = oldch2; + two = str2; + } + + /* this catches the case where all numeric and alpha segments have */ + /* compared identically but the segment sepparating characters were */ + /* different */ + if ((!*one) && (!*two)) goto_return (0); + + /* whichever version still has characters left over wins */ + if (!*one) goto_return (-1); else goto_return (1); + +finish: + grub_free (abuf); + grub_free (bbuf); + return ret; +} + +/* returns name/version/release */ +/* NULL string pointer returned if nothing found */ +static void +split_package_string (char *package_string, char **name, + char **version, char **release) +{ + char *package_version, *package_release; + + /* Release */ + package_release = grub_strrchr (package_string, '-'); + + if (package_release != NULL) + *package_release++ = '\0'; + + *release = package_release; + + if (name == NULL) + { + *version = package_string; + } + else + { + /* Version */ + package_version = grub_strrchr(package_string, '-'); + + if (package_version != NULL) + *package_version++ = '\0'; + + *version = package_version; + /* Name */ + *name = package_string; + } + + /* Bubble up non-null values from release to name */ + if (name != NULL && *name == NULL) + { + *name = (*version == NULL ? *release : *version); + *version = *release; + *release = NULL; + } + if (*version == NULL) + { + *version = *release; + *release = NULL; + } +} + +static int +split_cmp(char *nvr0, char *nvr1, int has_name) +{ + int ret = 0; + char *name0, *version0, *release0; + char *name1, *version1, *release1; + + split_package_string(nvr0, has_name ? &name0 : NULL, &version0, &release0); + split_package_string(nvr1, has_name ? &name1 : NULL, &version1, &release1); + + if (has_name) + { + ret = vercmp(name0 == NULL ? "" : name0, + name1 == NULL ? "" : name1); + if (ret != 0) + return ret; + } + + ret = vercmp(version0 == NULL ? "" : version0, + version1 == NULL ? "" : version1); + if (ret != 0) + return ret; + + ret = vercmp(release0 == NULL ? "" : release0, + release1 == NULL ? "" : release1); + return ret; +} + +/* return 1: e0 is newer than e1 */ +/* 0: e0 and e1 are the same version */ +/* -1: e1 is newer than e0 */ +static int bls_cmp(const struct bls_entry *e0, const struct bls_entry *e1) +{ + char *id0, *id1; + int r; + + id0 = grub_strdup(e0->filename); + id1 = grub_strdup(e1->filename); + + r = split_cmp(id0, id1, 1); + + grub_free(id0); + grub_free(id1); + + return r; +} + +static void list_add_tail(struct bls_entry *head, struct bls_entry *item) +{ + item->next = head; + if (head->prev) + head->prev->next = item; + item->prev = head->prev; + head->prev = item; +} + +static int bls_add_entry(struct bls_entry *entry) +{ + struct bls_entry *e, *last = NULL; + int rc; + + if (!entries) { + grub_dprintf ("blscfg", "Add entry with id \"%s\"\n", entry->filename); + entries = entry; + return 0; + } + + FOR_BLS_ENTRIES(e) { + rc = bls_cmp(entry, e); + + if (!rc) + return GRUB_ERR_BAD_ARGUMENT; + + if (rc == 1) { + grub_dprintf ("blscfg", "Add entry with id \"%s\"\n", entry->filename); + list_add_tail (e, entry); + if (e == entries) { + entries = entry; + entry->prev = NULL; + } + return 0; + } + last = e; + } + + if (last) { + grub_dprintf ("blscfg", "Add entry with id \"%s\"\n", entry->filename); + last->next = entry; + entry->prev = last; + } + + return 0; +} + +struct read_entry_info { + const char *devid; + const char *dirname; + grub_file_t file; +}; + +static int read_entry ( + const char *filename, + const struct grub_dirhook_info *dirhook_info UNUSED, + void *data) +{ + grub_size_t m = 0, n, clip = 0; + int rc = 0; + char *p = NULL; + grub_file_t f = NULL; + struct bls_entry *entry; + struct read_entry_info *info = (struct read_entry_info *)data; + + grub_dprintf ("blscfg", "filename: \"%s\"\n", filename); + + n = grub_strlen (filename); + + if (info->file) + { + f = info->file; + } + else + { + if (filename[0] == '.') + return 0; + + if (n <= 5) + return 0; + + if (grub_strcmp (filename + n - 5, ".conf") != 0) + return 0; + + p = grub_xasprintf ("(%s)%s/%s", info->devid, info->dirname, filename); + + f = grub_file_open (p, GRUB_FILE_TYPE_CONFIG); + if (!f) + goto finish; + } + + entry = grub_zalloc (sizeof (*entry)); + if (!entry) + goto finish; + + if (info->file) + { + char *slash; + + if (n > 5 && !grub_strcmp (filename + n - 5, ".conf") == 0) + clip = 5; + + slash = grub_strrchr (filename, '/'); + if (!slash) + slash = grub_strrchr (filename, '\\'); + + while (*slash == '/' || *slash == '\\') + slash++; + + m = slash ? slash - filename : 0; + } + else + { + m = 0; + clip = 5; + } + n -= m; + + entry->filename = grub_strndup(filename + m, n - clip); + if (!entry->filename) + goto finish; + + entry->filename[n - 5] = '\0'; + + for (;;) + { + char *buf; + char *separator; + + buf = grub_file_getline (f); + if (!buf) + break; + + while (buf && buf[0] && (buf[0] == ' ' || buf[0] == '\t')) + buf++; + if (buf[0] == '#') + continue; + + separator = grub_strchr (buf, ' '); + + if (!separator) + separator = grub_strchr (buf, '\t'); + + if (!separator || separator[1] == '\0') + { + grub_free (buf); + break; + } + + separator[0] = '\0'; + + do { + separator++; + } while (*separator == ' ' || *separator == '\t'); + + rc = bls_add_keyval (entry, buf, separator); + grub_free (buf); + if (rc < 0) + break; + } + + if (!rc) + bls_add_entry(entry); + +finish: + if (p) + grub_free (p); + + if (f) + grub_file_close (f); + + return 0; +} + +static grub_envblk_t saved_env = NULL; + +static int UNUSED +save_var (const char *name, const char *value, void *whitelist UNUSED) +{ + const char *val = grub_env_get (name); + grub_dprintf("blscfg", "saving \"%s\"\n", name); + + if (val) + grub_envblk_set (saved_env, name, value); + + return 0; +} + +static int UNUSED +unset_var (const char *name, const char *value UNUSED, void *whitelist) +{ + grub_dprintf("blscfg", "restoring \"%s\"\n", name); + if (! whitelist) + { + grub_env_unset (name); + return 0; + } + + if (test_whitelist_membership (name, + (const grub_env_whitelist_t *) whitelist)) + grub_env_unset (name); + + return 0; +} + +static char **bls_make_list (struct bls_entry *entry, const char *key, int *num) +{ + int last = -1; + char *val; + + int nlist = 0; + char **list = NULL; + + list = grub_malloc (sizeof (char *)); + if (!list) + return NULL; + list[0] = NULL; + + while (1) + { + char **new; + + val = bls_get_val (entry, key, &last); + if (!val) + break; + + new = grub_realloc (list, (nlist + 2) * sizeof (char *)); + if (!new) + break; + + list = new; + list[nlist++] = val; + list[nlist] = NULL; + } + + if (num) + *num = nlist; + + return list; +} + +static char *field_append(bool is_var, char *buffer, char *start, char *end) +{ + char *temp = grub_strndup(start, end - start + 1); + const char *field = temp; + + if (is_var) { + field = grub_env_get (temp); + if (!field) + return buffer; + } + + if (!buffer) { + buffer = grub_strdup(field); + if (!buffer) + return NULL; + } else { + buffer = grub_realloc (buffer, grub_strlen(buffer) + grub_strlen(field)); + if (!buffer) + return NULL; + + grub_stpcpy (buffer + grub_strlen(buffer), field); + } + + return buffer; +} + +static char *expand_val(char *value) +{ + char *buffer = NULL; + char *start = value; + char *end = value; + bool is_var = false; + + if (!value) + return NULL; + + while (*value) { + if (*value == '$') { + if (start != end) { + buffer = field_append(is_var, buffer, start, end); + if (!buffer) + return NULL; + } + + is_var = true; + start = value + 1; + } else if (is_var) { + if (!grub_isalnum(*value) && *value != '_') { + buffer = field_append(is_var, buffer, start, end); + is_var = false; + start = value; + } + } + + end = value; + value++; + } + + if (start != end) { + buffer = field_append(is_var, buffer, start, end); + if (!buffer) + return NULL; + } + + return buffer; +} + +static char **early_initrd_list (const char *initrd) +{ + int nlist = 0; + char **list = NULL; + char *separator; + + while ((separator = grub_strchr (initrd, ' '))) + { + list = grub_realloc (list, (nlist + 2) * sizeof (char *)); + if (!list) + return NULL; + + list[nlist++] = grub_strndup(initrd, separator - initrd); + list[nlist] = NULL; + initrd = separator + 1; + } + + list = grub_realloc (list, (nlist + 2) * sizeof (char *)); + if (!list) + return NULL; + + list[nlist++] = grub_strndup(initrd, grub_strlen(initrd)); + list[nlist] = NULL; + + return list; +} + +static void create_entry (struct bls_entry *entry) +{ + int argc = 0; + const char **argv = NULL; + + char *title = NULL; + char *clinux = NULL; + char *options = NULL; + char **initrds = NULL; + char *initrd = NULL; + const char *early_initrd = NULL; + char **early_initrds = NULL; + char *initrd_prefix = NULL; + char *id = entry->filename; + char *dotconf = id; + char *hotkey = NULL; + + char *users = NULL; + char **classes = NULL; + + char **args = NULL; + + char *src = NULL; + int bootlen; + const char *bootdev; + int i, index; + + grub_dprintf("blscfg", "%s got here\n", __func__); + clinux = bls_get_val (entry, "linux", NULL); + if (!clinux) + { + grub_dprintf ("blscfg", "Skipping file %s with no 'linux' key.\n", entry->filename); + goto finish; + } + + bootdev = grub_env_get("ventoy_bls_bootdev"); + if (!bootdev) + { + bootdev = GRUB_BOOT_DEVICE; + } + bootlen = grub_strlen(bootdev) + 2;//space and \0 + + /* + * strip the ".conf" off the end before we make it our "id" field. + */ + do + { + dotconf = grub_strstr(dotconf, ".conf"); + } while (dotconf != NULL && dotconf[5] != '\0'); + if (dotconf) + dotconf[0] = '\0'; + + title = bls_get_val (entry, "title", NULL); + options = expand_val (bls_get_val (entry, "options", NULL)); + + if (!options) + options = expand_val ((char *)grub_env_get("default_kernelopts")); + + initrds = bls_make_list (entry, "initrd", NULL); + + hotkey = bls_get_val (entry, "grub_hotkey", NULL); + users = expand_val (bls_get_val (entry, "grub_users", NULL)); + classes = bls_make_list (entry, "grub_class", NULL); + args = bls_make_list (entry, "grub_arg", &argc); + + argc += 1; + argv = grub_malloc ((argc + 1) * sizeof (char *)); + argv[0] = title ? title : clinux; + for (i = 1; i < argc; i++) + argv[i] = args[i-1]; + argv[argc] = NULL; + + early_initrd = grub_env_get("early_initrd"); + + grub_dprintf ("blscfg", "adding menu entry for \"%s\" with id \"%s\"\n", + title, id); + if (early_initrd) + { + early_initrds = early_initrd_list(early_initrd); + if (!early_initrds) + { + grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); + goto finish; + } + + if (initrds != NULL && initrds[0] != NULL) + { + initrd_prefix = grub_strrchr (initrds[0], '/'); + initrd_prefix = grub_strndup(initrds[0], initrd_prefix - initrds[0] + 1); + } + else + { + initrd_prefix = grub_strrchr (clinux, '/'); + initrd_prefix = grub_strndup(clinux, initrd_prefix - clinux + 1); + } + + if (!initrd_prefix) + { + grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); + goto finish; + } + } + + if (early_initrds || initrds) + { + int initrd_size = sizeof ("initrd"); + char *tmp; + + for (i = 0; early_initrds != NULL && early_initrds[i] != NULL; i++) + initrd_size += bootlen \ + + grub_strlen(initrd_prefix) \ + + grub_strlen (early_initrds[i]) + 1; + + for (i = 0; initrds != NULL && initrds[i] != NULL; i++) + initrd_size += bootlen \ + + grub_strlen (initrds[i]) + 1; + initrd_size += 1; + + initrd = grub_malloc (initrd_size); + if (!initrd) + { + grub_error (GRUB_ERR_OUT_OF_MEMORY, N_("out of memory")); + goto finish; + } + + + tmp = grub_stpcpy(initrd, "initrd"); + for (i = 0; early_initrds != NULL && early_initrds[i] != NULL; i++) + { + grub_dprintf ("blscfg", "adding early initrd %s\n", early_initrds[i]); + tmp = grub_stpcpy (tmp, " "); + tmp = grub_stpcpy (tmp, bootdev); + tmp = grub_stpcpy (tmp, initrd_prefix); + tmp = grub_stpcpy (tmp, early_initrds[i]); + grub_free(early_initrds[i]); + } + + for (i = 0; initrds != NULL && initrds[i] != NULL; i++) + { + grub_dprintf ("blscfg", "adding initrd %s\n", initrds[i]); + tmp = grub_stpcpy (tmp, " "); + tmp = grub_stpcpy (tmp, bootdev); + tmp = grub_stpcpy (tmp, initrds[i]); + } + tmp = grub_stpcpy (tmp, "\n"); + } + + src = grub_xasprintf ("load_video\n" + "set gfxpayload=keep\n" + "insmod gzio\n" + "linux %s%s%s%s\n" + "%s", + bootdev, clinux, options ? " " : "", options ? options : "", + initrd ? initrd : ""); + + grub_normal_add_menu_entry (argc, argv, classes, id, users, hotkey, NULL, src, 0, &index, entry); + grub_dprintf ("blscfg", "Added entry %d id:\"%s\"\n", index, id); + +finish: + grub_free (initrd); + grub_free (initrd_prefix); + grub_free (early_initrds); + grub_free (initrds); + grub_free (options); + grub_free (classes); + grub_free (args); + grub_free (argv); + grub_free (src); +} + +struct find_entry_info { + const char *dirname; + const char *devid; + grub_device_t dev; + grub_fs_t fs; +}; + +/* + * info: the filesystem object the file is on. + */ +static int find_entry (struct find_entry_info *info) +{ + struct read_entry_info read_entry_info; + grub_fs_t blsdir_fs = NULL; + grub_device_t blsdir_dev = NULL; + const char *blsdir = info->dirname; + int fallback = 0; + int r = 0; + + if (!blsdir) { + blsdir = grub_env_get ("blsdir"); + if (!blsdir) + blsdir = GRUB_BLS_CONFIG_PATH; + } + + read_entry_info.file = NULL; + read_entry_info.dirname = blsdir; + + grub_dprintf ("blscfg", "scanning blsdir: %s\n", blsdir); + + blsdir_dev = info->dev; + blsdir_fs = info->fs; + read_entry_info.devid = info->devid; + +read_fallback: + r = blsdir_fs->fs_dir (blsdir_dev, read_entry_info.dirname, read_entry, + &read_entry_info); + if (r != 0) { + grub_dprintf ("blscfg", "read_entry returned error\n"); + grub_err_t e; + do + { + e = grub_error_pop(); + } while (e); + } + + if (r && !info->dirname && !fallback) { + read_entry_info.dirname = "/boot" GRUB_BLS_CONFIG_PATH; + grub_dprintf ("blscfg", "Entries weren't found in %s, fallback to %s\n", + blsdir, read_entry_info.dirname); + fallback = 1; + goto read_fallback; + } + + return 0; +} + +static grub_err_t +bls_load_entries (const char *path) +{ + grub_size_t len; + grub_fs_t fs; + grub_device_t dev; + static grub_err_t r; + const char *devid = NULL; + char *blsdir = NULL; + struct find_entry_info info = { + .dev = NULL, + .fs = NULL, + .dirname = NULL, + }; + struct read_entry_info rei = { + .devid = NULL, + .dirname = NULL, + }; + + if (path) { + len = grub_strlen (path); + if (grub_strcmp (path + len - 5, ".conf") == 0) { + rei.file = grub_file_open (path, GRUB_FILE_TYPE_CONFIG); + if (!rei.file) + return grub_errno; + /* + * read_entry() closes the file + */ + return read_entry(path, NULL, &rei); + } else if (path[0] == '(') { + devid = path + 1; + + blsdir = grub_strchr (path, ')'); + if (!blsdir) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("Filepath isn't correct")); + + *blsdir = '\0'; + blsdir = blsdir + 1; + } + } + + if (!devid) { +#ifdef GRUB_MACHINE_EMU + devid = "host"; +#elif defined(GRUB_MACHINE_EFI) + devid = grub_env_get ("root"); +#else + devid = grub_env_get ("boot"); + if (!devid) + { + devid = grub_env_get ("root"); + } +#endif + if (!devid) + return grub_error (GRUB_ERR_FILE_NOT_FOUND, + N_("variable `%s' isn't set"), "boot"); + } + + grub_dprintf ("blscfg", "opening %s\n", devid); + dev = grub_device_open (devid); + if (!dev) + return grub_errno; + + grub_dprintf ("blscfg", "probing fs\n"); + fs = grub_fs_probe (dev); + if (!fs) + { + r = grub_errno; + goto finish; + } + + info.dirname = blsdir; + info.devid = devid; + info.dev = dev; + info.fs = fs; + find_entry(&info); + +finish: + if (dev) + grub_device_close (dev); + + return r; +} + +static bool +is_default_entry(const char *def_entry, struct bls_entry *entry, int idx) +{ + const char *title; + int def_idx; + + if (!def_entry) + return false; + + if (grub_strcmp(def_entry, entry->filename) == 0) + return true; + + title = bls_get_val(entry, "title", NULL); + + if (title && grub_strcmp(def_entry, title) == 0) + return true; + + def_idx = (int)grub_strtol(def_entry, NULL, 0); + if (grub_errno == GRUB_ERR_BAD_NUMBER) { + grub_errno = GRUB_ERR_NONE; + return false; + } + + if (def_idx == idx) + return true; + + return false; +} + +static grub_err_t +bls_create_entries (bool show_default, bool show_non_default, char *entry_id) +{ + const char *def_entry = NULL; + struct bls_entry *entry = NULL; + int idx = 0; + + def_entry = grub_env_get("default"); + + grub_dprintf ("blscfg", "%s Creating entries from bls\n", __func__); + FOR_BLS_ENTRIES(entry) { + if (entry->visible) { + idx++; + continue; + } + + if ((show_default && is_default_entry(def_entry, entry, idx)) || + (show_non_default && !is_default_entry(def_entry, entry, idx)) || + (entry_id && grub_strcmp(entry_id, entry->filename) == 0)) { + create_entry(entry); + entry->visible = 1; + } + idx++; + } + + return GRUB_ERR_NONE; +} + +static grub_err_t +grub_cmd_blscfg (grub_extcmd_context_t ctxt UNUSED, + int argc, char **args) +{ + grub_err_t r; + char *path = NULL; + char *entry_id = NULL; + bool show_default = true; + bool show_non_default = true; + + if (argc == 1) { + if (grub_strcmp (args[0], "default") == 0) { + show_non_default = false; + } else if (grub_strcmp (args[0], "non-default") == 0) { + show_default = false; + } else if (args[0][0] == '(') { + path = args[0]; + } else { + entry_id = args[0]; + show_default = false; + show_non_default = false; + } + } + + r = bls_load_entries(path); + if (r) + return r; + + return bls_create_entries(show_default, show_non_default, entry_id); +} + +static grub_extcmd_t cmd; +static grub_extcmd_t oldcmd; + +GRUB_MOD_INIT(blscfg) +{ + grub_dprintf("blscfg", "%s got here\n", __func__); + cmd = grub_register_extcmd ("blscfg", + grub_cmd_blscfg, + 0, + NULL, + N_("Import Boot Loader Specification snippets."), + NULL); + oldcmd = grub_register_extcmd ("bls_import", + grub_cmd_blscfg, + 0, + NULL, + N_("Import Boot Loader Specification snippets."), + NULL); +} + +GRUB_MOD_FINI(blscfg) +{ + grub_unregister_extcmd (cmd); + grub_unregister_extcmd (oldcmd); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/legacycfg.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/legacycfg.c new file mode 100644 index 00000000..891eac5a --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/legacycfg.c @@ -0,0 +1,894 @@ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2000, 2001, 2010 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +GRUB_MOD_LICENSE ("GPLv3+"); + +/* Helper for legacy_file. */ +static grub_err_t +legacy_file_getline (char **line, int cont __attribute__ ((unused)), + void *data __attribute__ ((unused))) +{ + *line = 0; + return GRUB_ERR_NONE; +} + +static grub_err_t +legacy_file (const char *filename) +{ + grub_file_t file; + char *entryname = NULL, *entrysrc = NULL; + grub_menu_t menu; + char *suffix = grub_strdup (""); + + if (!suffix) + return grub_errno; + + file = grub_file_open (filename, GRUB_FILE_TYPE_CONFIG); + if (! file) + { + grub_free (suffix); + return grub_errno; + } + + menu = grub_env_get_menu (); + if (! menu) + { + menu = grub_zalloc (sizeof (*menu)); + if (! menu) + { + grub_free (suffix); + return grub_errno; + } + + grub_env_set_menu (menu); + } + + while (1) + { + char *buf = grub_file_getline (file); + char *parsed = NULL; + + if (!buf && grub_errno) + { + grub_file_close (file); + grub_free (suffix); + return grub_errno; + } + + if (!buf) + break; + + { + char *oldname = NULL; + char *newsuffix; + char *ptr; + + for (ptr = buf; *ptr && grub_isspace (*ptr); ptr++); + + oldname = entryname; + parsed = grub_legacy_parse (ptr, &entryname, &newsuffix); + grub_free (buf); + buf = NULL; + if (newsuffix) + { + char *t; + + t = suffix; + suffix = grub_realloc (suffix, grub_strlen (suffix) + + grub_strlen (newsuffix) + 1); + if (!suffix) + { + grub_free (t); + grub_free (entrysrc); + grub_free (parsed); + grub_free (newsuffix); + grub_free (suffix); + return grub_errno; + } + grub_memcpy (suffix + grub_strlen (suffix), newsuffix, + grub_strlen (newsuffix) + 1); + grub_free (newsuffix); + newsuffix = NULL; + } + if (oldname != entryname && oldname) + { + const char **args = grub_malloc (sizeof (args[0])); + if (!args) + { + grub_file_close (file); + return grub_errno; + } + args[0] = oldname; + grub_normal_add_menu_entry (1, args, NULL, NULL, "legacy", + NULL, NULL, + entrysrc, 0, NULL, NULL); + grub_free (args); + entrysrc[0] = 0; + grub_free (oldname); + } + } + + if (parsed && !entryname) + { + grub_normal_parse_line (parsed, legacy_file_getline, NULL); + grub_print_error (); + grub_free (parsed); + parsed = NULL; + } + else if (parsed) + { + if (!entrysrc) + entrysrc = parsed; + else + { + char *t; + + t = entrysrc; + entrysrc = grub_realloc (entrysrc, grub_strlen (entrysrc) + + grub_strlen (parsed) + 1); + if (!entrysrc) + { + grub_free (t); + grub_free (parsed); + grub_free (suffix); + return grub_errno; + } + grub_memcpy (entrysrc + grub_strlen (entrysrc), parsed, + grub_strlen (parsed) + 1); + grub_free (parsed); + parsed = NULL; + } + } + } + grub_file_close (file); + + if (entryname) + { + const char **args = grub_malloc (sizeof (args[0])); + if (!args) + { + grub_file_close (file); + grub_free (suffix); + grub_free (entrysrc); + return grub_errno; + } + args[0] = entryname; + grub_normal_add_menu_entry (1, args, NULL, NULL, NULL, + NULL, NULL, entrysrc, 0, NULL, + NULL); + grub_free (args); + } + + grub_normal_parse_line (suffix, legacy_file_getline, NULL); + grub_print_error (); + grub_free (suffix); + grub_free (entrysrc); + + return GRUB_ERR_NONE; +} + +static grub_err_t +grub_cmd_legacy_source (struct grub_command *cmd, + int argc, char **args) +{ + int new_env, extractor; + grub_err_t ret; + + if (argc != 1) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); + + extractor = (cmd->name[0] == 'e'); + new_env = (cmd->name[extractor ? (sizeof ("extract_legacy_entries_") - 1) + : (sizeof ("legacy_") - 1)] == 'c'); + + if (new_env) + grub_cls (); + + if (new_env && !extractor) + grub_env_context_open (); + if (extractor) + grub_env_extractor_open (!new_env); + + ret = legacy_file (args[0]); + + if (new_env) + { + grub_menu_t menu; + menu = grub_env_get_menu (); + if (menu && menu->size) + grub_show_menu (menu, 1, 0); + if (!extractor) + grub_env_context_close (); + } + if (extractor) + grub_env_extractor_close (!new_env); + + return ret; +} + +static enum + { + GUESS_IT, LINUX, MULTIBOOT, KFREEBSD, KNETBSD, KOPENBSD + } kernel_type; + +static grub_err_t +grub_cmd_legacy_kernel (struct grub_command *mycmd __attribute__ ((unused)), + int argc, char **args) +{ + int i; +#ifdef TODO + int no_mem_option = 0; +#endif + struct grub_command *cmd; + char **cutargs; + int cutargc; + grub_err_t err = GRUB_ERR_NONE; + + for (i = 0; i < 2; i++) + { + /* FIXME: really support this. */ + if (argc >= 1 && grub_strcmp (args[0], "--no-mem-option") == 0) + { +#ifdef TODO + no_mem_option = 1; +#endif + argc--; + args++; + continue; + } + + /* linux16 handles both zImages and bzImages. */ + if (argc >= 1 && (grub_strcmp (args[0], "--type=linux") == 0 + || grub_strcmp (args[0], "--type=biglinux") == 0)) + { + kernel_type = LINUX; + argc--; + args++; + continue; + } + + if (argc >= 1 && grub_strcmp (args[0], "--type=multiboot") == 0) + { + kernel_type = MULTIBOOT; + argc--; + args++; + continue; + } + + if (argc >= 1 && grub_strcmp (args[0], "--type=freebsd") == 0) + { + kernel_type = KFREEBSD; + argc--; + args++; + continue; + } + + if (argc >= 1 && grub_strcmp (args[0], "--type=openbsd") == 0) + { + kernel_type = KOPENBSD; + argc--; + args++; + continue; + } + + if (argc >= 1 && grub_strcmp (args[0], "--type=netbsd") == 0) + { + kernel_type = KNETBSD; + argc--; + args++; + continue; + } + } + + if (argc < 2) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); + + cutargs = grub_malloc (sizeof (cutargs[0]) * (argc - 1)); + if (!cutargs) + return grub_errno; + cutargc = argc - 1; + grub_memcpy (cutargs + 1, args + 2, sizeof (cutargs[0]) * (argc - 2)); + cutargs[0] = args[0]; + + do + { + /* First try Linux. */ + if (kernel_type == GUESS_IT || kernel_type == LINUX) + { +#ifdef GRUB_MACHINE_PCBIOS + cmd = grub_command_find ("linux16"); +#else + cmd = grub_command_find ("linux"); +#endif + if (cmd) + { + if (!(cmd->func) (cmd, cutargc, cutargs)) + { + kernel_type = LINUX; + goto out; + } + } + grub_errno = GRUB_ERR_NONE; + } + + /* Then multiboot. */ + if (kernel_type == GUESS_IT || kernel_type == MULTIBOOT) + { + cmd = grub_command_find ("multiboot"); + if (cmd) + { + if (!(cmd->func) (cmd, argc, args)) + { + kernel_type = MULTIBOOT; + goto out; + } + } + grub_errno = GRUB_ERR_NONE; + } + + { + int bsd_device = -1; + int bsd_slice = -1; + int bsd_part = -1; + { + grub_device_t dev; + const char *hdbiasstr; + int hdbias = 0; + hdbiasstr = grub_env_get ("legacy_hdbias"); + if (hdbiasstr) + { + hdbias = grub_strtoul (hdbiasstr, 0, 0); + grub_errno = GRUB_ERR_NONE; + } + dev = grub_device_open (0); + if (dev && dev->disk + && dev->disk->dev->id == GRUB_DISK_DEVICE_BIOSDISK_ID + && dev->disk->id >= 0x80 && dev->disk->id <= 0x90) + { + struct grub_partition *part = dev->disk->partition; + bsd_device = dev->disk->id - 0x80 - hdbias; + if (part && (grub_strcmp (part->partmap->name, "netbsd") == 0 + || grub_strcmp (part->partmap->name, "openbsd") == 0 + || grub_strcmp (part->partmap->name, "bsd") == 0)) + { + bsd_part = part->number; + part = part->parent; + } + if (part && grub_strcmp (part->partmap->name, "msdos") == 0) + bsd_slice = part->number; + } + if (dev) + grub_device_close (dev); + } + + /* k*BSD didn't really work well with grub-legacy. */ + if (kernel_type == GUESS_IT || kernel_type == KFREEBSD) + { + char buf[sizeof("adXXXXXXXXXXXXsXXXXXXXXXXXXYYY")]; + if (bsd_device != -1) + { + if (bsd_slice != -1 && bsd_part != -1) + grub_snprintf(buf, sizeof(buf), "ad%ds%d%c", bsd_device, + bsd_slice, 'a' + bsd_part); + else if (bsd_slice != -1) + grub_snprintf(buf, sizeof(buf), "ad%ds%d", bsd_device, + bsd_slice); + else + grub_snprintf(buf, sizeof(buf), "ad%d", bsd_device); + grub_env_set ("kFreeBSD.vfs.root.mountfrom", buf); + } + else + grub_env_unset ("kFreeBSD.vfs.root.mountfrom"); + cmd = grub_command_find ("kfreebsd"); + if (cmd) + { + if (!(cmd->func) (cmd, cutargc, cutargs)) + { + kernel_type = KFREEBSD; + goto out; + } + } + grub_errno = GRUB_ERR_NONE; + } + { + char **bsdargs; + int bsdargc; + char bsddevname[sizeof ("wdXXXXXXXXXXXXY")]; + int found = 0; + + if (bsd_device == -1) + { + bsdargs = cutargs; + bsdargc = cutargc; + } + else + { + char rbuf[3] = "-r"; + bsdargc = cutargc + 2; + bsdargs = grub_malloc (sizeof (bsdargs[0]) * bsdargc); + if (!bsdargs) + { + err = grub_errno; + goto out; + } + grub_memcpy (bsdargs, args, argc * sizeof (bsdargs[0])); + bsdargs[argc] = rbuf; + bsdargs[argc + 1] = bsddevname; + grub_snprintf (bsddevname, sizeof (bsddevname), + "wd%d%c", bsd_device, + bsd_part != -1 ? bsd_part + 'a' : 'c'); + } + if (kernel_type == GUESS_IT || kernel_type == KNETBSD) + { + cmd = grub_command_find ("knetbsd"); + if (cmd) + { + if (!(cmd->func) (cmd, bsdargc, bsdargs)) + { + kernel_type = KNETBSD; + found = 1; + goto free_bsdargs; + } + } + grub_errno = GRUB_ERR_NONE; + } + if (kernel_type == GUESS_IT || kernel_type == KOPENBSD) + { + cmd = grub_command_find ("kopenbsd"); + if (cmd) + { + if (!(cmd->func) (cmd, bsdargc, bsdargs)) + { + kernel_type = KOPENBSD; + found = 1; + goto free_bsdargs; + } + } + grub_errno = GRUB_ERR_NONE; + } + +free_bsdargs: + if (bsdargs != cutargs) + grub_free (bsdargs); + if (found) + goto out; + } + } + } + while (0); + + err = grub_error (GRUB_ERR_BAD_OS, "couldn't load file %s", + args[0]); +out: + grub_free (cutargs); + return err; +} + +static grub_err_t +grub_cmd_legacy_initrd (struct grub_command *mycmd __attribute__ ((unused)), + int argc, char **args) +{ + struct grub_command *cmd; + + if (kernel_type == LINUX) + { +#ifdef GRUB_MACHINE_PCBIOS + cmd = grub_command_find ("initrd16"); +#else + cmd = grub_command_find ("initrd"); +#endif + if (!cmd) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), +#ifdef GRUB_MACHINE_PCBIOS + "initrd16" +#else + "initrd" +#endif + ); + + return cmd->func (cmd, argc ? 1 : 0, args); + } + if (kernel_type == MULTIBOOT) + { + cmd = grub_command_find ("module"); + if (!cmd) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), + "module"); + + return cmd->func (cmd, argc, args); + } + + return grub_error (GRUB_ERR_BAD_ARGUMENT, + N_("you need to load the kernel first")); +} + +static grub_err_t +grub_cmd_legacy_initrdnounzip (struct grub_command *mycmd __attribute__ ((unused)), + int argc, char **args) +{ + struct grub_command *cmd; + + if (kernel_type == LINUX) + { + cmd = grub_command_find ("initrd16"); + if (!cmd) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), + "initrd16"); + + return cmd->func (cmd, argc, args); + } + if (kernel_type == MULTIBOOT) + { + char **newargs; + grub_err_t err; + char nounzipbuf[10] = "--nounzip"; + + cmd = grub_command_find ("module"); + if (!cmd) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("can't find command `%s'"), + "module"); + + newargs = grub_malloc ((argc + 1) * sizeof (newargs[0])); + if (!newargs) + return grub_errno; + grub_memcpy (newargs + 1, args, argc * sizeof (newargs[0])); + newargs[0] = nounzipbuf; + + err = cmd->func (cmd, argc + 1, newargs); + grub_free (newargs); + return err; + } + + return grub_error (GRUB_ERR_BAD_ARGUMENT, + N_("you need to load the kernel first")); +} + +static grub_err_t +check_password_deny (const char *user __attribute__ ((unused)), + const char *entered __attribute__ ((unused)), + void *password __attribute__ ((unused))) +{ + return GRUB_ACCESS_DENIED; +} + +#define MD5_HASHLEN 16 + +struct legacy_md5_password +{ + grub_uint8_t *salt; + int saltlen; + grub_uint8_t hash[MD5_HASHLEN]; +}; + +static int +check_password_md5_real (const char *entered, + struct legacy_md5_password *pw) +{ + grub_size_t enteredlen = grub_strlen (entered); + unsigned char alt_result[MD5_HASHLEN]; + unsigned char *digest; + grub_uint8_t *ctx; + grub_size_t i; + int ret; + + ctx = grub_zalloc (GRUB_MD_MD5->contextsize); + if (!ctx) + return 0; + + GRUB_MD_MD5->init (ctx); + GRUB_MD_MD5->write (ctx, entered, enteredlen); + GRUB_MD_MD5->write (ctx, pw->salt + 3, pw->saltlen - 3); + GRUB_MD_MD5->write (ctx, entered, enteredlen); + digest = GRUB_MD_MD5->read (ctx); + GRUB_MD_MD5->final (ctx); + grub_memcpy (alt_result, digest, MD5_HASHLEN); + + GRUB_MD_MD5->init (ctx); + GRUB_MD_MD5->write (ctx, entered, enteredlen); + GRUB_MD_MD5->write (ctx, pw->salt, pw->saltlen); /* include the $1$ header */ + for (i = enteredlen; i > 16; i -= 16) + GRUB_MD_MD5->write (ctx, alt_result, 16); + GRUB_MD_MD5->write (ctx, alt_result, i); + + for (i = enteredlen; i > 0; i >>= 1) + GRUB_MD_MD5->write (ctx, entered + ((i & 1) ? enteredlen : 0), 1); + digest = GRUB_MD_MD5->read (ctx); + GRUB_MD_MD5->final (ctx); + + for (i = 0; i < 1000; i++) + { + grub_memcpy (alt_result, digest, 16); + + GRUB_MD_MD5->init (ctx); + if ((i & 1) != 0) + GRUB_MD_MD5->write (ctx, entered, enteredlen); + else + GRUB_MD_MD5->write (ctx, alt_result, 16); + + if (i % 3 != 0) + GRUB_MD_MD5->write (ctx, pw->salt + 3, pw->saltlen - 3); + + if (i % 7 != 0) + GRUB_MD_MD5->write (ctx, entered, enteredlen); + + if ((i & 1) != 0) + GRUB_MD_MD5->write (ctx, alt_result, 16); + else + GRUB_MD_MD5->write (ctx, entered, enteredlen); + digest = GRUB_MD_MD5->read (ctx); + GRUB_MD_MD5->final (ctx); + } + + ret = (grub_crypto_memcmp (digest, pw->hash, MD5_HASHLEN) == 0); + grub_free (ctx); + return ret; +} + +static grub_err_t +check_password_md5 (const char *user, + const char *entered, + void *password) +{ + if (!check_password_md5_real (entered, password)) + return GRUB_ACCESS_DENIED; + + grub_auth_authenticate (user); + + return GRUB_ERR_NONE; +} + +static inline int +ib64t (char c) +{ + if (c == '.') + return 0; + if (c == '/') + return 1; + if (c >= '0' && c <= '9') + return c - '0' + 2; + if (c >= 'A' && c <= 'Z') + return c - 'A' + 12; + if (c >= 'a' && c <= 'z') + return c - 'a' + 38; + return -1; +} + +static struct legacy_md5_password * +parse_legacy_md5 (int argc, char **args) +{ + const char *salt, *saltend; + struct legacy_md5_password *pw = NULL; + int i; + const char *p; + + if (grub_memcmp (args[0], "--md5", sizeof ("--md5")) != 0) + goto fail; + if (argc == 1) + goto fail; + if (grub_strlen(args[1]) <= 3) + goto fail; + salt = args[1]; + saltend = grub_strchr (salt + 3, '$'); + if (!saltend) + goto fail; + pw = grub_malloc (sizeof (*pw)); + if (!pw) + goto fail; + + p = saltend + 1; + for (i = 0; i < 5; i++) + { + int n; + grub_uint32_t w = 0; + + for (n = 0; n < 4; n++) + { + int ww = ib64t(*p++); + if (ww == -1) + goto fail; + w |= ww << (n * 6); + } + pw->hash[i == 4 ? 5 : 12+i] = w & 0xff; + pw->hash[6+i] = (w >> 8) & 0xff; + pw->hash[i] = (w >> 16) & 0xff; + } + { + int n; + grub_uint32_t w = 0; + for (n = 0; n < 2; n++) + { + int ww = ib64t(*p++); + if (ww == -1) + goto fail; + w |= ww << (6 * n); + } + if (w >= 0x100) + goto fail; + pw->hash[11] = w; + } + + pw->saltlen = saltend - salt; + pw->salt = (grub_uint8_t *) grub_strndup (salt, pw->saltlen); + if (!pw->salt) + goto fail; + + return pw; + + fail: + grub_free (pw); + return NULL; +} + +static grub_err_t +grub_cmd_legacy_password (struct grub_command *mycmd __attribute__ ((unused)), + int argc, char **args) +{ + struct legacy_md5_password *pw = NULL; + + if (argc == 0) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); + if (args[0][0] != '-' || args[0][1] != '-') + return grub_normal_set_password ("legacy", args[0]); + + pw = parse_legacy_md5 (argc, args); + + if (pw) + return grub_auth_register_authentication ("legacy", check_password_md5, pw); + else + /* This is to imitate minor difference between grub-legacy in GRUB2. + If 2 password commands are executed in a row and second one fails + on GRUB2 the password of first one is used, whereas in grub-legacy + authenthication is denied. In case of no password command was executed + early both versions deny any access. */ + return grub_auth_register_authentication ("legacy", check_password_deny, + NULL); +} + +int +grub_legacy_check_md5_password (int argc, char **args, + char *entered) +{ + struct legacy_md5_password *pw = NULL; + int ret; + + if (args[0][0] != '-' || args[0][1] != '-') + { + char correct[GRUB_AUTH_MAX_PASSLEN]; + + grub_memset (correct, 0, sizeof (correct)); + grub_strncpy (correct, args[0], sizeof (correct)); + + return grub_crypto_memcmp (entered, correct, GRUB_AUTH_MAX_PASSLEN) == 0; + } + + pw = parse_legacy_md5 (argc, args); + + if (!pw) + return 0; + + ret = check_password_md5_real (entered, pw); + grub_free (pw); + return ret; +} + +static grub_err_t +grub_cmd_legacy_check_password (struct grub_command *mycmd __attribute__ ((unused)), + int argc, char **args) +{ + char entered[GRUB_AUTH_MAX_PASSLEN]; + + if (argc == 0) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("one argument expected")); + grub_puts_ (N_("Enter password: ")); + if (!grub_password_get (entered, GRUB_AUTH_MAX_PASSLEN)) + return GRUB_ACCESS_DENIED; + + if (!grub_legacy_check_md5_password (argc, args, + entered)) + return GRUB_ACCESS_DENIED; + + return GRUB_ERR_NONE; +} + +static grub_command_t cmd_source, cmd_configfile; +static grub_command_t cmd_source_extract, cmd_configfile_extract; +static grub_command_t cmd_kernel, cmd_initrd, cmd_initrdnounzip; +static grub_command_t cmd_password, cmd_check_password; + +GRUB_MOD_INIT(legacycfg) +{ + cmd_source + = grub_register_command ("legacy_source", + grub_cmd_legacy_source, + N_("FILE"), + /* TRANSLATORS: "legacy config" means + "config as used by grub-legacy". */ + N_("Parse legacy config in same context")); + cmd_configfile + = grub_register_command ("legacy_configfile", + grub_cmd_legacy_source, + N_("FILE"), + N_("Parse legacy config in new context")); + cmd_source_extract + = grub_register_command ("extract_legacy_entries_source", + grub_cmd_legacy_source, + N_("FILE"), + N_("Parse legacy config in same context taking only menu entries")); + cmd_configfile_extract + = grub_register_command ("extract_legacy_entries_configfile", + grub_cmd_legacy_source, + N_("FILE"), + N_("Parse legacy config in new context taking only menu entries")); + + cmd_kernel = grub_register_command ("legacy_kernel", + grub_cmd_legacy_kernel, + N_("[--no-mem-option] [--type=TYPE] FILE [ARG ...]"), + N_("Simulate grub-legacy `kernel' command")); + + cmd_initrd = grub_register_command ("legacy_initrd", + grub_cmd_legacy_initrd, + N_("FILE [ARG ...]"), + N_("Simulate grub-legacy `initrd' command")); + cmd_initrdnounzip = grub_register_command ("legacy_initrd_nounzip", + grub_cmd_legacy_initrdnounzip, + N_("FILE [ARG ...]"), + N_("Simulate grub-legacy `modulenounzip' command")); + + cmd_password = grub_register_command ("legacy_password", + grub_cmd_legacy_password, + N_("[--md5] PASSWD [FILE]"), + N_("Simulate grub-legacy `password' command")); + + cmd_check_password = grub_register_command ("legacy_check_password", + grub_cmd_legacy_check_password, + N_("[--md5] PASSWD [FILE]"), + N_("Simulate grub-legacy `password' command in menu entry mode")); + +} + +GRUB_MOD_FINI(legacycfg) +{ + grub_unregister_command (cmd_source); + grub_unregister_command (cmd_configfile); + grub_unregister_command (cmd_source_extract); + grub_unregister_command (cmd_configfile_extract); + + grub_unregister_command (cmd_kernel); + grub_unregister_command (cmd_initrd); + grub_unregister_command (cmd_initrdnounzip); + + grub_unregister_command (cmd_password); + grub_unregister_command (cmd_check_password); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.c new file mode 100644 index 00000000..163b9a09 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.c @@ -0,0 +1,397 @@ +/* loadenv.c - command to load/save environment variable. */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "loadenv.h" + +GRUB_MOD_LICENSE ("GPLv3+"); + +static const struct grub_arg_option options[] = + { + /* TRANSLATORS: This option is used to override default filename + for loading and storing environment. */ + {"file", 'f', 0, N_("Specify filename."), 0, ARG_TYPE_PATHNAME}, + {"skip-sig", 's', 0, + N_("Skip signature-checking of the environment file."), 0, ARG_TYPE_NONE}, + {0, 0, 0, 0, 0, 0} + }; + +/* Opens 'filename' with compression filters disabled. Optionally disables the + PUBKEY filter (that insists upon properly signed files) as well. PUBKEY + filter is restored before the function returns. */ +static grub_file_t +open_envblk_file (char *filename, + enum grub_file_type type) +{ + grub_file_t file; + char *buf = 0; + + if (! filename) + { + const char *prefix; + int len; + + prefix = grub_env_get ("prefix"); + if (! prefix) + { + grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); + return 0; + } + + len = grub_strlen (prefix); + buf = grub_malloc (len + 1 + sizeof (GRUB_ENVBLK_DEFCFG)); + if (! buf) + return 0; + filename = buf; + + grub_strcpy (filename, prefix); + filename[len] = '/'; + grub_strcpy (filename + len + 1, GRUB_ENVBLK_DEFCFG); + } + + file = grub_file_open (filename, type); + + grub_free (buf); + return file; +} + +static grub_err_t +grub_cmd_load_env (grub_extcmd_context_t ctxt, int argc, char **args) +{ + struct grub_arg_list *state = ctxt->state; + grub_file_t file; + grub_envblk_t envblk; + grub_env_whitelist_t whitelist; + + whitelist.len = argc; + whitelist.list = args; + + /* state[0] is the -f flag; state[1] is the --skip-sig flag */ + file = open_envblk_file ((state[0].set) ? state[0].arg : 0, + GRUB_FILE_TYPE_LOADENV + | (state[1].set + ? GRUB_FILE_TYPE_SKIP_SIGNATURE : GRUB_FILE_TYPE_NONE)); + if (! file) + return grub_errno; + + envblk = read_envblk_file (file); + if (! envblk) + goto fail; + + /* argc > 0 indicates caller provided a whitelist of variables to read. */ + grub_envblk_iterate (envblk, argc > 0 ? &whitelist : 0, set_var); + grub_envblk_close (envblk); + + fail: + grub_file_close (file); + return grub_errno; +} + +/* Print all variables in current context. */ +static int +print_var (const char *name, const char *value, + void *hook_data __attribute__ ((unused))) +{ + grub_printf ("%s=%s\n", name, value); + return 0; +} + +static grub_err_t +grub_cmd_list_env (grub_extcmd_context_t ctxt, + int argc __attribute__ ((unused)), + char **args __attribute__ ((unused))) +{ + struct grub_arg_list *state = ctxt->state; + grub_file_t file; + grub_envblk_t envblk; + + file = open_envblk_file ((state[0].set) ? state[0].arg : 0, + GRUB_FILE_TYPE_LOADENV + | (state[1].set + ? GRUB_FILE_TYPE_SKIP_SIGNATURE : GRUB_FILE_TYPE_NONE)); + if (! file) + return grub_errno; + + envblk = read_envblk_file (file); + if (! envblk) + goto fail; + + grub_envblk_iterate (envblk, NULL, print_var); + grub_envblk_close (envblk); + + fail: + grub_file_close (file); + return grub_errno; +} + +/* Used to maintain a variable length of blocklists internally. */ +struct blocklist +{ + grub_disk_addr_t sector; + unsigned offset; + unsigned length; + struct blocklist *next; +}; + +static void +free_blocklists (struct blocklist *p) +{ + struct blocklist *q; + + for (; p; p = q) + { + q = p->next; + grub_free (p); + } +} + +static grub_err_t +check_blocklists (grub_envblk_t envblk, struct blocklist *blocklists, + grub_file_t file) +{ + grub_size_t total_length; + grub_size_t index; + grub_disk_t disk; + grub_disk_addr_t part_start; + struct blocklist *p; + char *buf; + + /* Sanity checks. */ + total_length = 0; + for (p = blocklists; p; p = p->next) + { + struct blocklist *q; + /* Check if any pair of blocks overlap. */ + for (q = p->next; q; q = q->next) + { + grub_disk_addr_t s1, s2; + grub_disk_addr_t e1, e2; + + s1 = p->sector; + e1 = s1 + ((p->length + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); + + s2 = q->sector; + e2 = s2 + ((q->length + GRUB_DISK_SECTOR_SIZE - 1) >> GRUB_DISK_SECTOR_BITS); + + if (s1 < e2 && s2 < e1) + { + /* This might be actually valid, but it is unbelievable that + any filesystem makes such a silly allocation. */ + return grub_error (GRUB_ERR_BAD_FS, "malformed file"); + } + } + + total_length += p->length; + } + + if (total_length != grub_file_size (file)) + { + /* Maybe sparse, unallocated sectors. No way in GRUB. */ + return grub_error (GRUB_ERR_BAD_FILE_TYPE, "sparse file not allowed"); + } + + /* One more sanity check. Re-read all sectors by blocklists, and compare + those with the data read via a file. */ + disk = file->device->disk; + + part_start = grub_partition_get_start (disk->partition); + + buf = grub_envblk_buffer (envblk); + char *blockbuf = NULL; + grub_size_t blockbuf_len = 0; + for (p = blocklists, index = 0; p; index += p->length, p = p->next) + { + if (p->length > blockbuf_len) + { + grub_free (blockbuf); + blockbuf_len = 2 * p->length; + blockbuf = grub_malloc (blockbuf_len); + if (!blockbuf) + return grub_errno; + } + + if (grub_disk_read (disk, p->sector - part_start, + p->offset, p->length, blockbuf)) + return grub_errno; + + if (grub_memcmp (buf + index, blockbuf, p->length) != 0) + return grub_error (GRUB_ERR_FILE_READ_ERROR, "invalid blocklist"); + } + + return GRUB_ERR_NONE; +} + +static int +write_blocklists (grub_envblk_t envblk, struct blocklist *blocklists, + grub_file_t file) +{ + char *buf; + grub_disk_t disk; + grub_disk_addr_t part_start; + struct blocklist *p; + grub_size_t index; + + buf = grub_envblk_buffer (envblk); + disk = file->device->disk; + part_start = grub_partition_get_start (disk->partition); + + index = 0; + for (p = blocklists; p; index += p->length, p = p->next) + { + if (grub_disk_write (disk, p->sector - part_start, + p->offset, p->length, buf + index)) + return 0; + } + + return 1; +} + +/* Context for grub_cmd_save_env. */ +struct grub_cmd_save_env_ctx +{ + struct blocklist *head, *tail; +}; + +/* Store blocklists in a linked list. */ +static void +save_env_read_hook (grub_disk_addr_t sector, unsigned offset, unsigned length, + void *data) +{ + struct grub_cmd_save_env_ctx *ctx = data; + struct blocklist *block; + + block = grub_malloc (sizeof (*block)); + if (! block) + return; + + block->sector = sector; + block->offset = offset; + block->length = length; + + /* Slightly complicated, because the list should be FIFO. */ + block->next = 0; + if (ctx->tail) + ctx->tail->next = block; + ctx->tail = block; + if (! ctx->head) + ctx->head = block; +} + +static grub_err_t +grub_cmd_save_env (grub_extcmd_context_t ctxt, int argc, char **args) +{ + struct grub_arg_list *state = ctxt->state; + grub_file_t file; + grub_envblk_t envblk; + struct grub_cmd_save_env_ctx ctx = { + .head = 0, + .tail = 0 + }; + + if (! argc) + return grub_error (GRUB_ERR_BAD_ARGUMENT, "no variable is specified"); + + file = open_envblk_file ((state[0].set) ? state[0].arg : 0, + GRUB_FILE_TYPE_SAVEENV + | GRUB_FILE_TYPE_SKIP_SIGNATURE); + if (! file) + return grub_errno; + + if (! file->device->disk) + { + grub_file_close (file); + return grub_error (GRUB_ERR_BAD_DEVICE, "disk device required"); + } + + file->read_hook = save_env_read_hook; + file->read_hook_data = &ctx; + envblk = read_envblk_file (file); + file->read_hook = 0; + if (! envblk) + goto fail; + + if (check_blocklists (envblk, ctx.head, file)) + goto fail; + + while (argc) + { + const char *value; + + value = grub_env_get (args[0]); + if (value) + { + if (! grub_envblk_set (envblk, args[0], value)) + { + grub_error (GRUB_ERR_BAD_ARGUMENT, "environment block too small"); + goto fail; + } + } + else + grub_envblk_delete (envblk, args[0]); + + argc--; + args++; + } + + write_blocklists (envblk, ctx.head, file); + + fail: + if (envblk) + grub_envblk_close (envblk); + free_blocklists (ctx.head); + grub_file_close (file); + return grub_errno; +} + +static grub_extcmd_t cmd_load, cmd_list, cmd_save; + +GRUB_MOD_INIT(loadenv) +{ + cmd_load = + grub_register_extcmd ("load_env", grub_cmd_load_env, 0, + N_("[-f FILE] [-s|--skip-sig] [variable_name_to_whitelist] [...]"), + N_("Load variables from environment block file."), + options); + cmd_list = + grub_register_extcmd ("list_env", grub_cmd_list_env, 0, N_("[-f FILE]"), + N_("List variables from environment block file."), + options); + cmd_save = + grub_register_extcmd ("save_env", grub_cmd_save_env, 0, + N_("[-f FILE] variable_name [...]"), + N_("Save variables to environment block file."), + options); +} + +GRUB_MOD_FINI(loadenv) +{ + grub_unregister_extcmd (cmd_load); + grub_unregister_extcmd (cmd_list); + grub_unregister_extcmd (cmd_save); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.h b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.h new file mode 100644 index 00000000..952f4612 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/loadenv.h @@ -0,0 +1,93 @@ +/* loadenv.c - command to load/save environment variable. */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2008,2009,2010 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +static grub_envblk_t UNUSED +read_envblk_file (grub_file_t file) +{ + grub_off_t offset = 0; + char *buf; + grub_size_t size = grub_file_size (file); + grub_envblk_t envblk; + + buf = grub_malloc (size); + if (! buf) + return 0; + + while (size > 0) + { + grub_ssize_t ret; + + ret = grub_file_read (file, buf + offset, size); + if (ret <= 0) + { + grub_free (buf); + return 0; + } + + size -= ret; + offset += ret; + } + + envblk = grub_envblk_open (buf, offset); + if (! envblk) + { + grub_free (buf); + grub_error (GRUB_ERR_BAD_FILE_TYPE, "invalid environment block"); + return 0; + } + + return envblk; +} + +struct grub_env_whitelist +{ + grub_size_t len; + char **list; +}; +typedef struct grub_env_whitelist grub_env_whitelist_t; + +static int UNUSED +test_whitelist_membership (const char* name, + const grub_env_whitelist_t* whitelist) +{ + grub_size_t i; + + for (i = 0; i < whitelist->len; i++) + if (grub_strcmp (name, whitelist->list[i]) == 0) + return 1; /* found it */ + + return 0; /* not found */ +} + +/* Helper for grub_cmd_load_env. */ +static int UNUSED +set_var (const char *name, const char *value, void *whitelist) +{ + if (! whitelist) + { + grub_env_set (name, value); + return 0; + } + + if (test_whitelist_membership (name, + (const grub_env_whitelist_t *) whitelist)) + grub_env_set (name, value); + + return 0; +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/menuentry.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/menuentry.c new file mode 100644 index 00000000..9faf2be0 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/commands/menuentry.c @@ -0,0 +1,349 @@ +/* menuentry.c - menuentry command */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2010 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include + +static const struct grub_arg_option options[] = + { + {"class", 1, GRUB_ARG_OPTION_REPEATABLE, + N_("Menu entry type."), N_("STRING"), ARG_TYPE_STRING}, + {"users", 2, 0, + N_("List of users allowed to boot this entry."), N_("USERNAME[,USERNAME]"), + ARG_TYPE_STRING}, + {"hotkey", 3, 0, + N_("Keyboard key to quickly boot this entry."), N_("KEYBOARD_KEY"), ARG_TYPE_STRING}, + {"source", 4, 0, + N_("Use STRING as menu entry body."), N_("STRING"), ARG_TYPE_STRING}, + {"id", 0, 0, N_("Menu entry identifier."), N_("STRING"), ARG_TYPE_STRING}, + /* TRANSLATORS: menu entry can either be bootable by anyone or only by + handful of users. By default when security is active only superusers can + boot a given menu entry. With --unrestricted (this option) + anyone can boot it. */ + {"unrestricted", 0, 0, N_("This entry can be booted by any user."), + 0, ARG_TYPE_NONE}, + {0, 0, 0, 0, 0, 0} + }; + +static struct +{ + const char *name; + int key; +} hotkey_aliases[] = + { + {"backspace", GRUB_TERM_BACKSPACE}, + {"tab", GRUB_TERM_TAB}, + {"delete", GRUB_TERM_KEY_DC}, + {"insert", GRUB_TERM_KEY_INSERT}, + {"f1", GRUB_TERM_KEY_F1}, + {"f2", GRUB_TERM_KEY_F2}, + {"f3", GRUB_TERM_KEY_F3}, + {"f4", GRUB_TERM_KEY_F4}, + {"f5", GRUB_TERM_KEY_F5}, + {"f6", GRUB_TERM_KEY_F6}, + {"f7", GRUB_TERM_KEY_F7}, + {"f8", GRUB_TERM_KEY_F8}, + {"f9", GRUB_TERM_KEY_F9}, + {"f10", GRUB_TERM_KEY_F10}, + {"f11", GRUB_TERM_KEY_F11}, + {"f12", GRUB_TERM_KEY_F12}, + }; + +/* Add a menu entry to the current menu context (as given by the environment + variable data slot `menu'). As the configuration file is read, the script + parser calls this when a menu entry is to be created. */ +grub_err_t +grub_normal_add_menu_entry (int argc, const char **args, + char **classes, const char *id, + const char *users, const char *hotkey, + const char *prefix, const char *sourcecode, + int submenu, int *index, struct bls_entry *bls) +{ + int menu_hotkey = 0; + char **menu_args = NULL; + char *menu_users = NULL; + char *menu_title = NULL; + char *menu_sourcecode = NULL; + char *menu_id = NULL; + struct grub_menu_entry_class *menu_classes = NULL; + + grub_menu_t menu; + grub_menu_entry_t *last; + + menu = grub_env_get_menu (); + if (! menu) + return grub_error (GRUB_ERR_MENU, "no menu context"); + + last = &menu->entry_list; + + menu_sourcecode = grub_xasprintf ("%s%s", prefix ?: "", sourcecode); + if (! menu_sourcecode) + return grub_errno; + + if (classes && classes[0]) + { + int i; + for (i = 0; classes[i]; i++); /* count # of menuentry classes */ + menu_classes = grub_zalloc (sizeof (struct grub_menu_entry_class) + * (i + 1)); + if (! menu_classes) + goto fail; + + for (i = 0; classes[i]; i++) + { + menu_classes[i].name = grub_strdup (classes[i]); + if (! menu_classes[i].name) + goto fail; + menu_classes[i].next = classes[i + 1] ? &menu_classes[i + 1] : NULL; + } + } + + if (users) + { + menu_users = grub_strdup (users); + if (! menu_users) + goto fail; + } + + if (hotkey) + { + unsigned i; + for (i = 0; i < ARRAY_SIZE (hotkey_aliases); i++) + if (grub_strcmp (hotkey, hotkey_aliases[i].name) == 0) + { + menu_hotkey = hotkey_aliases[i].key; + break; + } + if (i == ARRAY_SIZE (hotkey_aliases)) + menu_hotkey = hotkey[0]; + } + + if (! argc) + { + grub_error (GRUB_ERR_MENU, "menuentry is missing title"); + goto fail; + } + + menu_title = grub_strdup (args[0]); + if (! menu_title) + goto fail; + + grub_dprintf ("menu", "id:\"%s\"\n", id); + grub_dprintf ("menu", "title:\"%s\"\n", menu_title); + menu_id = grub_strdup (id ? : menu_title); + if (! menu_id) + goto fail; + grub_dprintf ("menu", "menu_id:\"%s\"\n", menu_id); + + /* Save argc, args to pass as parameters to block arg later. */ + menu_args = grub_malloc (sizeof (char*) * (argc + 1)); + if (! menu_args) + goto fail; + + { + int i; + for (i = 0; i < argc; i++) + { + menu_args[i] = grub_strdup (args[i]); + if (! menu_args[i]) + goto fail; + } + menu_args[argc] = NULL; + } + + /* Add the menu entry at the end of the list. */ + int ind=0; + while (*last) + { + ind++; + last = &(*last)->next; + } + + *last = grub_zalloc (sizeof (**last)); + if (! *last) + goto fail; + + (*last)->title = menu_title; + (*last)->id = menu_id; + (*last)->hotkey = menu_hotkey; + (*last)->classes = menu_classes; + if (menu_users) + (*last)->restricted = 1; + (*last)->users = menu_users; + (*last)->argc = argc; + (*last)->args = menu_args; + (*last)->sourcecode = menu_sourcecode; + (*last)->submenu = submenu; + (*last)->bls = bls; + + menu->size++; + if (index) + *index = ind; + return GRUB_ERR_NONE; + + fail: + + grub_free (menu_sourcecode); + { + int i; + for (i = 0; menu_classes && menu_classes[i].name; i++) + grub_free (menu_classes[i].name); + grub_free (menu_classes); + } + + { + int i; + for (i = 0; menu_args && menu_args[i]; i++) + grub_free (menu_args[i]); + grub_free (menu_args); + } + + grub_free (menu_users); + grub_free (menu_title); + grub_free (menu_id); + return grub_errno; +} + +static char * +setparams_prefix (int argc, char **args) +{ + int i; + int j; + char *p; + char *result; + grub_size_t len = 10; + + /* Count resulting string length */ + for (i = 0; i < argc; i++) + { + len += 3; /* 3 = 1 space + 2 quotes */ + p = args[i]; + while (*p) + len += (*p++ == '\'' ? 3 : 1); + } + + result = grub_malloc (len + 2); + if (! result) + return 0; + + grub_strcpy (result, "setparams"); + p = result + 9; + + for (j = 0; j < argc; j++) + { + *p++ = ' '; + *p++ = '\''; + p = grub_strchrsub (p, args[j], '\'', "'\\''"); + *p++ = '\''; + } + *p++ = '\n'; + *p = '\0'; + return result; +} + +static grub_err_t +grub_cmd_menuentry (grub_extcmd_context_t ctxt, int argc, char **args) +{ + char ch; + char *src; + char *prefix; + unsigned len; + grub_err_t r; + const char *users; + + if (! argc) + return grub_error (GRUB_ERR_BAD_ARGUMENT, "missing arguments"); + + if (ctxt->state[3].set && ctxt->script) + return grub_error (GRUB_ERR_BAD_ARGUMENT, "multiple menuentry definitions"); + + if (! ctxt->state[3].set && ! ctxt->script) + return grub_error (GRUB_ERR_BAD_ARGUMENT, "no menuentry definition"); + + if (ctxt->state[1].set) + users = ctxt->state[1].arg; + else if (ctxt->state[5].set) + users = NULL; + else + users = ""; + + if (! ctxt->script) + return grub_normal_add_menu_entry (argc, (const char **) args, + (ctxt->state[0].set ? ctxt->state[0].args + : NULL), + ctxt->state[4].arg, + users, + ctxt->state[2].arg, 0, + ctxt->state[3].arg, + ctxt->extcmd->cmd->name[0] == 's', + NULL, NULL); + + src = args[argc - 1]; + args[argc - 1] = NULL; + + len = grub_strlen(src); + ch = src[len - 1]; + src[len - 1] = '\0'; + + prefix = setparams_prefix (argc - 1, args); + if (! prefix) + return grub_errno; + + r = grub_normal_add_menu_entry (argc - 1, (const char **) args, + ctxt->state[0].args, ctxt->state[4].arg, + users, + ctxt->state[2].arg, prefix, src + 1, + ctxt->extcmd->cmd->name[0] == 's', NULL, + NULL); + + src[len - 1] = ch; + args[argc - 1] = src; + grub_free (prefix); + return r; +} + +static grub_extcmd_t cmd, cmd_sub; + +void +grub_menu_init (void) +{ + cmd = grub_register_extcmd ("menuentry", grub_cmd_menuentry, + GRUB_COMMAND_FLAG_BLOCKS + | GRUB_COMMAND_ACCEPT_DASH + | GRUB_COMMAND_FLAG_EXTRACTOR, + N_("BLOCK"), N_("Define a menu entry."), options); + cmd_sub = grub_register_extcmd ("submenu", grub_cmd_menuentry, + GRUB_COMMAND_FLAG_BLOCKS + | GRUB_COMMAND_ACCEPT_DASH + | GRUB_COMMAND_FLAG_EXTRACTOR, + N_("BLOCK"), N_("Define a submenu."), + options); +} + +void +grub_menu_fini (void) +{ + grub_unregister_extcmd (cmd); + grub_unregister_extcmd (cmd_sub); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/kern/main.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/kern/main.c index 2f22ecb5..42bc22f7 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/kern/main.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/kern/main.c @@ -109,6 +109,52 @@ grub_env_write_root (struct grub_env_var *var __attribute__ ((unused)), return grub_strdup (val); } +static int g_ventoy_hook_root = 0; +void ventoy_env_hook_root(int hook) +{ + g_ventoy_hook_root = hook; +} + +static char * +ventoy_env_write_root (struct grub_env_var *var __attribute__ ((unused)), + const char *val) +{ + const char *pos = val; + char buf[256]; + + if (g_ventoy_hook_root == 0) + { + return grub_env_write_root(var, val); + } + + if (pos[0] == '(') + { + pos++; + } + + if (grub_strncmp(pos, "vtimghd", 7) == 0) + { + return grub_env_write_root(var, val); + } + + pos = grub_strchr(val, ','); + if (!pos) + { + return grub_env_write_root(var, val); + } + + if (val[0] == '(') + { + grub_snprintf(buf, sizeof(buf), "(vtimghd%s", pos); + } + else + { + grub_snprintf(buf, sizeof(buf), "vtimghd%s", pos); + } + + return grub_env_write_root(var, buf); +} + static void grub_set_prefix_and_root (void) { @@ -123,7 +169,7 @@ grub_set_prefix_and_root (void) if (header->type == OBJ_TYPE_PREFIX) prefix = (char *) header + sizeof (struct grub_module_header); - grub_register_variable_hook ("root", 0, grub_env_write_root); + grub_register_variable_hook ("root", 0, ventoy_env_write_root); grub_machine_get_bootlocation (&fwdevice, &fwpath); diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/loader/i386/linux.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/loader/i386/linux.c new file mode 100644 index 00000000..6601d5de --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/loader/i386/linux.c @@ -0,0 +1,1470 @@ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2006,2007,2008,2009,2010 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +GRUB_MOD_LICENSE ("GPLv3+"); + +#ifdef GRUB_MACHINE_PCBIOS +#include +#endif + +#ifdef GRUB_MACHINE_EFI +#include +#define HAS_VGA_TEXT 0 +#define DEFAULT_VIDEO_MODE "auto" +#define ACCEPTS_PURE_TEXT 0 +#elif defined (GRUB_MACHINE_IEEE1275) +#include +#define HAS_VGA_TEXT 0 +#define DEFAULT_VIDEO_MODE "text" +#define ACCEPTS_PURE_TEXT 1 +#else +#include +#include +#define HAS_VGA_TEXT 1 +#define DEFAULT_VIDEO_MODE "text" +#define ACCEPTS_PURE_TEXT 1 +#endif + +static grub_dl_t my_mod; + +static grub_size_t linux_mem_size; +static int loaded; +static void *prot_mode_mem; +static grub_addr_t prot_mode_target; +static void *initrd_mem; +static grub_addr_t initrd_mem_target; +static grub_size_t prot_init_space; +static struct grub_relocator *relocator = NULL; +static void *efi_mmap_buf; +static grub_size_t maximal_cmdline_size; +static struct linux_kernel_params linux_params; +static char *linux_cmdline; +#ifdef GRUB_MACHINE_EFI +static grub_efi_uintn_t efi_mmap_size; +#else +static const grub_size_t efi_mmap_size = 0; +#endif + +#define LINUX_MAX_ARGC 1024 +static int ventoy_debug = 0; +static int ventoy_initrd_called = 0; +static int ventoy_linux_argc = 0; +static char **ventoy_linux_args = NULL; +static grub_err_t +grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), int argc, char *argv[]); + +/* FIXME */ +#if 0 +struct idt_descriptor +{ + grub_uint16_t limit; + void *base; +} GRUB_PACKED; + +static struct idt_descriptor idt_desc = + { + 0, + 0 + }; +#endif + +static inline grub_size_t +page_align (grub_size_t size) +{ + return (size + (1 << 12) - 1) & (~((1 << 12) - 1)); +} + +/* Helper for find_mmap_size. */ +static int +count_hook (grub_uint64_t addr __attribute__ ((unused)), + grub_uint64_t size __attribute__ ((unused)), + grub_memory_type_t type __attribute__ ((unused)), void *data) +{ + grub_size_t *count = data; + + (*count)++; + return 0; +} + +/* Find the optimal number of pages for the memory map. */ +static grub_size_t +find_mmap_size (void) +{ + grub_size_t count = 0, mmap_size; + + grub_mmap_iterate (count_hook, &count); + + mmap_size = count * sizeof (struct grub_e820_mmap); + + /* Increase the size a bit for safety, because GRUB allocates more on + later. */ + mmap_size += (1 << 12); + + return page_align (mmap_size); +} + +static void +free_pages (void) +{ + grub_relocator_unload (relocator); + relocator = NULL; + prot_mode_mem = initrd_mem = 0; + prot_mode_target = initrd_mem_target = 0; +} + +/* Allocate pages for the real mode code and the protected mode code + for linux as well as a memory map buffer. */ +static grub_err_t +allocate_pages (grub_size_t prot_size, grub_size_t *align, + grub_size_t min_align, int relocatable, + grub_uint64_t preferred_address) +{ + grub_err_t err; + + if (prot_size == 0) + prot_size = 1; + + prot_size = page_align (prot_size); + + /* Initialize the memory pointers with NULL for convenience. */ + free_pages (); + + relocator = grub_relocator_new (); + if (!relocator) + { + err = grub_errno; + goto fail; + } + + /* FIXME: Should request low memory from the heap when this feature is + implemented. */ + + { + grub_relocator_chunk_t ch; + if (relocatable) + { + err = grub_relocator_alloc_chunk_align (relocator, &ch, + preferred_address, + preferred_address, + prot_size, 1, + GRUB_RELOCATOR_PREFERENCE_LOW, + 1); + for (; err && *align + 1 > min_align; (*align)--) + { + grub_errno = GRUB_ERR_NONE; + err = grub_relocator_alloc_chunk_align (relocator, &ch, + 0x1000000, + 0xffffffff & ~prot_size, + prot_size, 1 << *align, + GRUB_RELOCATOR_PREFERENCE_LOW, + 1); + } + if (err) + goto fail; + } + else + err = grub_relocator_alloc_chunk_addr (relocator, &ch, + preferred_address, + prot_size); + if (err) + goto fail; + prot_mode_mem = get_virtual_current_address (ch); + prot_mode_target = get_physical_target_address (ch); + } + + grub_dprintf ("linux", "prot_mode_mem = %p, prot_mode_target = %lx, prot_size = %x\n", + prot_mode_mem, (unsigned long) prot_mode_target, + (unsigned) prot_size); + return GRUB_ERR_NONE; + + fail: + free_pages (); + return err; +} + +static grub_err_t +grub_e820_add_region (struct grub_e820_mmap *e820_map, int *e820_num, + grub_uint64_t start, grub_uint64_t size, + grub_uint32_t type) +{ + int n = *e820_num; + + if ((n > 0) && (e820_map[n - 1].addr + e820_map[n - 1].size == start) && + (e820_map[n - 1].type == type)) + e820_map[n - 1].size += size; + else + { + e820_map[n].addr = start; + e820_map[n].size = size; + e820_map[n].type = type; + (*e820_num)++; + } + return GRUB_ERR_NONE; +} + +static grub_err_t +grub_linux_setup_video (struct linux_kernel_params *params) +{ + struct grub_video_mode_info mode_info; + void *framebuffer; + grub_err_t err; + grub_video_driver_id_t driver_id; + const char *gfxlfbvar = grub_env_get ("gfxpayloadforcelfb"); + + driver_id = grub_video_get_driver_id (); + + if (driver_id == GRUB_VIDEO_DRIVER_NONE) + return 1; + + err = grub_video_get_info_and_fini (&mode_info, &framebuffer); + + if (err) + { + grub_errno = GRUB_ERR_NONE; + return 1; + } + + params->lfb_width = mode_info.width; + params->lfb_height = mode_info.height; + params->lfb_depth = mode_info.bpp; + params->lfb_line_len = mode_info.pitch; + + params->lfb_base = (grub_size_t) framebuffer; + +#if defined (GRUB_MACHINE_EFI) && defined (__x86_64__) + params->ext_lfb_base = (grub_size_t) (((grub_uint64_t)(grub_size_t) framebuffer) >> 32); + params->capabilities |= VIDEO_CAPABILITY_64BIT_BASE; +#endif + + params->lfb_size = ALIGN_UP (params->lfb_line_len * params->lfb_height, 65536); + + params->red_mask_size = mode_info.red_mask_size; + params->red_field_pos = mode_info.red_field_pos; + params->green_mask_size = mode_info.green_mask_size; + params->green_field_pos = mode_info.green_field_pos; + params->blue_mask_size = mode_info.blue_mask_size; + params->blue_field_pos = mode_info.blue_field_pos; + params->reserved_mask_size = mode_info.reserved_mask_size; + params->reserved_field_pos = mode_info.reserved_field_pos; + + if (gfxlfbvar && (gfxlfbvar[0] == '1' || gfxlfbvar[0] == 'y')) + params->have_vga = GRUB_VIDEO_LINUX_TYPE_SIMPLE; + else + { + switch (driver_id) + { + case GRUB_VIDEO_DRIVER_VBE: + params->lfb_size >>= 16; + params->have_vga = GRUB_VIDEO_LINUX_TYPE_VESA; + break; + + case GRUB_VIDEO_DRIVER_EFI_UGA: + case GRUB_VIDEO_DRIVER_EFI_GOP: + params->have_vga = GRUB_VIDEO_LINUX_TYPE_EFIFB; + break; + + /* FIXME: check if better id is available. */ + case GRUB_VIDEO_DRIVER_SM712: + case GRUB_VIDEO_DRIVER_SIS315PRO: + case GRUB_VIDEO_DRIVER_VGA: + case GRUB_VIDEO_DRIVER_CIRRUS: + case GRUB_VIDEO_DRIVER_BOCHS: + case GRUB_VIDEO_DRIVER_RADEON_FULOONG2E: + case GRUB_VIDEO_DRIVER_RADEON_YEELOONG3A: + case GRUB_VIDEO_DRIVER_IEEE1275: + case GRUB_VIDEO_DRIVER_COREBOOT: + /* Make gcc happy. */ + case GRUB_VIDEO_DRIVER_XEN: + case GRUB_VIDEO_DRIVER_SDL: + case GRUB_VIDEO_DRIVER_NONE: + case GRUB_VIDEO_ADAPTER_CAPTURE: + params->have_vga = GRUB_VIDEO_LINUX_TYPE_SIMPLE; + break; + } + } + +#ifdef GRUB_MACHINE_PCBIOS + /* VESA packed modes may come with zeroed mask sizes, which need + to be set here according to DAC Palette width. If we don't, + this results in Linux displaying a black screen. */ + if (driver_id == GRUB_VIDEO_DRIVER_VBE && mode_info.bpp <= 8) + { + struct grub_vbe_info_block controller_info; + int status; + int width = 8; + + status = grub_vbe_bios_get_controller_info (&controller_info); + + if (status == GRUB_VBE_STATUS_OK && + (controller_info.capabilities & GRUB_VBE_CAPABILITY_DACWIDTH)) + status = grub_vbe_bios_set_dac_palette_width (&width); + + if (status != GRUB_VBE_STATUS_OK) + /* 6 is default after mode reset. */ + width = 6; + + params->red_mask_size = params->green_mask_size + = params->blue_mask_size = width; + params->reserved_mask_size = 0; + } +#endif + + return GRUB_ERR_NONE; +} + +/* Context for grub_linux_boot. */ +struct grub_linux_boot_ctx +{ + grub_addr_t real_mode_target; + grub_size_t real_size; + struct linux_kernel_params *params; + int e820_num; +}; + +/* Helper for grub_linux_boot. */ +static int +grub_linux_boot_mmap_find (grub_uint64_t addr, grub_uint64_t size, + grub_memory_type_t type, void *data) +{ + struct grub_linux_boot_ctx *ctx = data; + + /* We must put real mode code in the traditional space. */ + if (type != GRUB_MEMORY_AVAILABLE || addr > 0x90000) + return 0; + + if (addr + size < 0x10000) + return 0; + + if (addr < 0x10000) + { + size += addr - 0x10000; + addr = 0x10000; + } + + if (addr + size > 0x90000) + size = 0x90000 - addr; + + if (ctx->real_size + efi_mmap_size > size) + return 0; + + grub_dprintf ("linux", "addr = %lx, size = %x, need_size = %x\n", + (unsigned long) addr, + (unsigned) size, + (unsigned) (ctx->real_size + efi_mmap_size)); + ctx->real_mode_target = ((addr + size) - (ctx->real_size + efi_mmap_size)); + return 1; +} + +/* GRUB types conveniently match E820 types. */ +static int +grub_linux_boot_mmap_fill (grub_uint64_t addr, grub_uint64_t size, + grub_memory_type_t type, void *data) +{ + struct grub_linux_boot_ctx *ctx = data; + + if (grub_e820_add_region (ctx->params->e820_map, &ctx->e820_num, + addr, size, type)) + return 1; + + return 0; +} + +static void ventoy_debug_pause(void) +{ + char key; + + if (0 == ventoy_debug) + { + return; + } + + grub_printf("press Enter to continue ......\n"); + while (1) + { + key = grub_getkey(); + if (key == '\n' || key == '\r') + { + break; + } + } +} + +static int ventoy_preboot(void) +{ + char buf[128]; + char *argv[2]; + + if (ventoy_debug) + { + grub_printf("ventoy_preboot %d %d\n", ventoy_linux_argc, ventoy_initrd_called); + ventoy_debug_pause(); + } + + if (ventoy_linux_argc == 0) + { + return 0; + } + + if (ventoy_initrd_called) + { + ventoy_initrd_called = 0; + return 0; + } + + grub_snprintf(buf, sizeof(buf), "mem:%s:size:%s", grub_env_get("ventoy_cpio_addr"), grub_env_get("ventoy_cpio_size")); + + argv[0] = buf; + argv[1] = NULL; + grub_cmd_initrd(NULL, 1, argv); + + if (ventoy_debug) + { + grub_printf("add initrd %s\n", buf); + ventoy_debug_pause(); + } + + return 0; +} + +static int ventoy_boot_opt_filter(char *opt) +{ + if (grub_strcmp(opt, "noinitrd") == 0) + { + return 1; + } + + if (grub_strncmp(opt, "rdinit=", 7) == 0) + { + if (grub_strcmp(opt, "rdinit=/vtoy/vtoy") != 0) + { + opt[0] = 'v'; + opt[1] = 't'; + } + return 0; + } + + if (ventoy_debug) + { + if (grub_strcmp(opt, "quiet") == 0) + { + return 1; + } + + if (grub_strncmp(opt, "loglevel=", 9) == 0) + { + return 1; + } + + if (grub_strcmp(opt, "splash") == 0) + { + return 1; + } + } + + return 0; +} + +static int ventoy_bootopt_hook(int argc, char *argv[]) +{ + int i; + int count = 0; + const char *env; + char c; + char *newenv; + char *last, *pos; + + //grub_printf("ventoy_bootopt_hook: %d %d\n", argc, ventoy_linux_argc); + + if (ventoy_linux_argc == 0) + { + return 0; + } + + for (i = 0; i < argc; i++) + { + if (ventoy_boot_opt_filter(argv[i])) + { + continue; + } + + ventoy_linux_args[count++] = grub_strdup(argv[i]); + } + + for (i = 0; i < ventoy_linux_argc; i++) + { + ventoy_linux_args[count] = ventoy_linux_args[i + (LINUX_MAX_ARGC / 2)]; + ventoy_linux_args[i + (LINUX_MAX_ARGC / 2)] = NULL; + + if (ventoy_linux_args[count][0] == '@') + { + env = grub_env_get(ventoy_linux_args[count] + 1); + if (env) + { + grub_free(ventoy_linux_args[count]); + + newenv = grub_strdup(env); + last = newenv; + + while (*last) + { + while (*last) + { + if (*last != ' ' && *last != '\t') + { + break; + } + last++; + } + + if (*last == 0) + { + break; + } + + for (pos = last; *pos; pos++) + { + if (*pos == ' ' || *pos == '\t') + { + c = *pos; + *pos = 0; + if (0 == ventoy_boot_opt_filter(last)) + { + ventoy_linux_args[count++] = grub_strdup(last); + } + *pos = c; + break; + } + } + + if (*pos == 0) + { + if (0 == ventoy_boot_opt_filter(last)) + { + ventoy_linux_args[count++] = grub_strdup(last); + } + break; + } + + last = pos + 1; + } + } + else + { + count++; + } + } + else + { + count++; + } + } + + if (ventoy_debug) + { + ventoy_linux_args[count++] = grub_strdup("loglevel=10"); + } + + ventoy_linux_argc = count; + + if (ventoy_debug) + { + grub_printf("========== bootoption ==========\n"); + for (i = 0; i < count; i++) + { + grub_printf("%s ", ventoy_linux_args[i]); + } + grub_printf("\n================================\n"); + } + + return 0; +} + +static grub_err_t +grub_cmd_set_boot_opt (grub_command_t cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + int i; + const char *vtdebug; + + for (i = 0; i < argc; i++) + { + ventoy_linux_args[ventoy_linux_argc + (LINUX_MAX_ARGC / 2) ] = grub_strdup(argv[i]); + ventoy_linux_argc++; + } + + vtdebug = grub_env_get("vtdebug_flag"); + if (vtdebug && vtdebug[0]) + { + ventoy_debug = 1; + } + + if (ventoy_debug) grub_printf("ventoy set boot opt %d\n", ventoy_linux_argc); + + return 0; +} + +static grub_err_t +grub_cmd_unset_boot_opt (grub_command_t cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + int i; + + (void)argc; + (void)argv; + + for (i = 0; i < LINUX_MAX_ARGC; i++) + { + if (ventoy_linux_args[i]) + { + grub_free(ventoy_linux_args[i]); + } + } + + ventoy_debug = 0; + ventoy_linux_argc = 0; + ventoy_initrd_called = 0; + grub_memset(ventoy_linux_args, 0, sizeof(char *) * LINUX_MAX_ARGC); + return 0; +} + + +static grub_err_t +grub_linux_boot (void) +{ + grub_err_t err = 0; + const char *modevar; + char *tmp; + struct grub_relocator32_state state; + void *real_mode_mem; + struct grub_linux_boot_ctx ctx = { + .real_mode_target = 0 + }; + grub_size_t mmap_size; + grub_size_t cl_offset; + + ventoy_preboot(); + +#ifdef GRUB_MACHINE_IEEE1275 + { + const char *bootpath; + grub_ssize_t len; + + bootpath = grub_env_get ("root"); + if (bootpath) + grub_ieee1275_set_property (grub_ieee1275_chosen, + "bootpath", bootpath, + grub_strlen (bootpath) + 1, + &len); + linux_params.ofw_signature = GRUB_LINUX_OFW_SIGNATURE; + linux_params.ofw_num_items = 1; + linux_params.ofw_cif_handler = (grub_uint32_t) grub_ieee1275_entry_fn; + linux_params.ofw_idt = 0; + } +#endif + + modevar = grub_env_get ("gfxpayload"); + + /* Now all graphical modes are acceptable. + May change in future if we have modes without framebuffer. */ + if (modevar && *modevar != 0) + { + tmp = grub_xasprintf ("%s;" DEFAULT_VIDEO_MODE, modevar); + if (! tmp) + return grub_errno; +#if ACCEPTS_PURE_TEXT + err = grub_video_set_mode (tmp, 0, 0); +#else + err = grub_video_set_mode (tmp, GRUB_VIDEO_MODE_TYPE_PURE_TEXT, 0); +#endif + grub_free (tmp); + } + else /* We can't go back to text mode from coreboot fb. */ +#ifdef GRUB_MACHINE_COREBOOT + if (grub_video_get_driver_id () == GRUB_VIDEO_DRIVER_COREBOOT) + err = GRUB_ERR_NONE; + else +#endif + { +#if ACCEPTS_PURE_TEXT + err = grub_video_set_mode (DEFAULT_VIDEO_MODE, 0, 0); +#else + err = grub_video_set_mode (DEFAULT_VIDEO_MODE, + GRUB_VIDEO_MODE_TYPE_PURE_TEXT, 0); +#endif + } + + if (err) + { + grub_print_error (); + grub_puts_ (N_("Booting in blind mode")); + grub_errno = GRUB_ERR_NONE; + } + + if (grub_linux_setup_video (&linux_params)) + { +#if defined (GRUB_MACHINE_PCBIOS) || defined (GRUB_MACHINE_COREBOOT) || defined (GRUB_MACHINE_QEMU) + linux_params.have_vga = GRUB_VIDEO_LINUX_TYPE_TEXT; + linux_params.video_mode = 0x3; +#else + linux_params.have_vga = 0; + linux_params.video_mode = 0; + linux_params.video_width = 0; + linux_params.video_height = 0; +#endif + } + + +#ifndef GRUB_MACHINE_IEEE1275 + if (linux_params.have_vga == GRUB_VIDEO_LINUX_TYPE_TEXT) +#endif + { + grub_term_output_t term; + int found = 0; + FOR_ACTIVE_TERM_OUTPUTS(term) + if (grub_strcmp (term->name, "vga_text") == 0 + || grub_strcmp (term->name, "console") == 0 + || grub_strcmp (term->name, "ofconsole") == 0) + { + struct grub_term_coordinate pos = grub_term_getxy (term); + linux_params.video_cursor_x = pos.x; + linux_params.video_cursor_y = pos.y; + linux_params.video_width = grub_term_width (term); + linux_params.video_height = grub_term_height (term); + found = 1; + break; + } + if (!found) + { + linux_params.video_cursor_x = 0; + linux_params.video_cursor_y = 0; + linux_params.video_width = 80; + linux_params.video_height = 25; + } + } + +#ifdef GRUB_KERNEL_USE_RSDP_ADDR + linux_params.acpi_rsdp_addr = grub_le_to_cpu64 (grub_rsdp_addr); +#endif + + mmap_size = find_mmap_size (); + /* Make sure that each size is aligned to a page boundary. */ + cl_offset = ALIGN_UP (mmap_size + sizeof (linux_params), 4096); + if (cl_offset < ((grub_size_t) linux_params.setup_sects << GRUB_DISK_SECTOR_BITS)) + cl_offset = ALIGN_UP ((grub_size_t) (linux_params.setup_sects + << GRUB_DISK_SECTOR_BITS), 4096); + ctx.real_size = ALIGN_UP (cl_offset + maximal_cmdline_size, 4096); + +#ifdef GRUB_MACHINE_EFI + efi_mmap_size = grub_efi_find_mmap_size (); + if (efi_mmap_size == 0) + return grub_errno; +#endif + + grub_dprintf ("linux", "real_size = %x, mmap_size = %x\n", + (unsigned) ctx.real_size, (unsigned) mmap_size); + +#ifdef GRUB_MACHINE_EFI + grub_efi_mmap_iterate (grub_linux_boot_mmap_find, &ctx, 1); + if (! ctx.real_mode_target) + grub_efi_mmap_iterate (grub_linux_boot_mmap_find, &ctx, 0); +#else + grub_mmap_iterate (grub_linux_boot_mmap_find, &ctx); +#endif + grub_dprintf ("linux", "real_mode_target = %lx, real_size = %x, efi_mmap_size = %x\n", + (unsigned long) ctx.real_mode_target, + (unsigned) ctx.real_size, + (unsigned) efi_mmap_size); + + if (! ctx.real_mode_target) + return grub_error (GRUB_ERR_OUT_OF_MEMORY, "cannot allocate real mode pages"); + + { + grub_relocator_chunk_t ch; + err = grub_relocator_alloc_chunk_addr (relocator, &ch, + ctx.real_mode_target, + (ctx.real_size + efi_mmap_size)); + if (err) + return err; + real_mode_mem = get_virtual_current_address (ch); + } + efi_mmap_buf = (grub_uint8_t *) real_mode_mem + ctx.real_size; + + grub_dprintf ("linux", "real_mode_mem = %p\n", + real_mode_mem); + + ctx.params = real_mode_mem; + + *ctx.params = linux_params; + ctx.params->cmd_line_ptr = ctx.real_mode_target + cl_offset; + grub_memcpy ((char *) ctx.params + cl_offset, linux_cmdline, + maximal_cmdline_size); + + grub_dprintf ("linux", "code32_start = %x\n", + (unsigned) ctx.params->code32_start); + + ctx.e820_num = 0; + if (grub_mmap_iterate (grub_linux_boot_mmap_fill, &ctx)) + return grub_errno; + ctx.params->mmap_size = ctx.e820_num; + +#ifdef GRUB_MACHINE_EFI + { + grub_efi_uintn_t efi_desc_size; + grub_size_t efi_mmap_target; + grub_efi_uint32_t efi_desc_version; + err = grub_efi_finish_boot_services (&efi_mmap_size, efi_mmap_buf, NULL, + &efi_desc_size, &efi_desc_version); + if (err) + return err; + + /* Note that no boot services are available from here. */ + efi_mmap_target = ctx.real_mode_target + + ((grub_uint8_t *) efi_mmap_buf - (grub_uint8_t *) real_mode_mem); + /* Pass EFI parameters. */ + if (grub_le_to_cpu16 (ctx.params->version) >= 0x0208) + { + ctx.params->v0208.efi_mem_desc_size = efi_desc_size; + ctx.params->v0208.efi_mem_desc_version = efi_desc_version; + ctx.params->v0208.efi_mmap = efi_mmap_target; + ctx.params->v0208.efi_mmap_size = efi_mmap_size; + +#ifdef __x86_64__ + ctx.params->v0208.efi_mmap_hi = (efi_mmap_target >> 32); +#endif + } + else if (grub_le_to_cpu16 (ctx.params->version) >= 0x0206) + { + ctx.params->v0206.efi_mem_desc_size = efi_desc_size; + ctx.params->v0206.efi_mem_desc_version = efi_desc_version; + ctx.params->v0206.efi_mmap = efi_mmap_target; + ctx.params->v0206.efi_mmap_size = efi_mmap_size; + } + else if (grub_le_to_cpu16 (ctx.params->version) >= 0x0204) + { + ctx.params->v0204.efi_mem_desc_size = efi_desc_size; + ctx.params->v0204.efi_mem_desc_version = efi_desc_version; + ctx.params->v0204.efi_mmap = efi_mmap_target; + ctx.params->v0204.efi_mmap_size = efi_mmap_size; + } + } +#endif + + /* FIXME. */ + /* asm volatile ("lidt %0" : : "m" (idt_desc)); */ + state.ebp = state.edi = state.ebx = 0; + state.esi = ctx.real_mode_target; + state.esp = ctx.real_mode_target; + state.eip = ctx.params->code32_start; + return grub_relocator32_boot (relocator, state, 0); +} + +static grub_err_t +grub_linux_unload (void) +{ + grub_dl_unref (my_mod); + loaded = 0; + grub_free (linux_cmdline); + linux_cmdline = 0; + return GRUB_ERR_NONE; +} + +static grub_err_t +grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + grub_file_t file = 0; + struct linux_i386_kernel_header lh; + grub_uint8_t setup_sects; + grub_size_t real_size, prot_size, prot_file_size; + grub_ssize_t len; + int i; + grub_size_t align, min_align; + int relocatable; + grub_uint64_t preferred_address = GRUB_LINUX_BZIMAGE_ADDR; + + grub_dl_ref (my_mod); + + if (argc == 0) + { + grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); + goto fail; + } + + file = grub_file_open (argv[0], GRUB_FILE_TYPE_LINUX_KERNEL); + if (! file) + goto fail; + + if (ventoy_linux_argc) + { + const char *tip = grub_env_get("ventoy_loading_tip"); + if (tip) + { + grub_printf("%s\n", tip); + grub_refresh(); + } + } + + if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh)) + { + if (!grub_errno) + grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), + argv[0]); + goto fail; + } + + if (lh.boot_flag != grub_cpu_to_le16_compile_time (0xaa55)) + { + grub_error (GRUB_ERR_BAD_OS, "invalid magic number"); + goto fail; + } + + if (lh.setup_sects > GRUB_LINUX_MAX_SETUP_SECTS) + { + grub_error (GRUB_ERR_BAD_OS, "too many setup sectors"); + goto fail; + } + + /* FIXME: 2.03 is not always good enough (Linux 2.4 can be 2.03 and + still not support 32-bit boot. */ + if (lh.header != grub_cpu_to_le32_compile_time (GRUB_LINUX_I386_MAGIC_SIGNATURE) + || grub_le_to_cpu16 (lh.version) < 0x0203) + { + grub_error (GRUB_ERR_BAD_OS, "version too old for 32-bit boot" +#ifdef GRUB_MACHINE_PCBIOS + " (try with `linux16')" +#endif + ); + goto fail; + } + + if (! (lh.loadflags & GRUB_LINUX_FLAG_BIG_KERNEL)) + { + grub_error (GRUB_ERR_BAD_OS, "zImage doesn't support 32-bit boot" +#ifdef GRUB_MACHINE_PCBIOS + " (try with `linux16')" +#endif + ); + goto fail; + } + + if (grub_le_to_cpu16 (lh.version) >= 0x0206) + maximal_cmdline_size = grub_le_to_cpu32 (lh.cmdline_size) + 1; + else + maximal_cmdline_size = 256; + + if (maximal_cmdline_size < 128) + maximal_cmdline_size = 128; + + setup_sects = lh.setup_sects; + + /* If SETUP_SECTS is not set, set it to the default (4). */ + if (! setup_sects) + setup_sects = GRUB_LINUX_DEFAULT_SETUP_SECTS; + + real_size = setup_sects << GRUB_DISK_SECTOR_BITS; + prot_file_size = grub_file_size (file) - real_size - GRUB_DISK_SECTOR_SIZE; + + if (grub_le_to_cpu16 (lh.version) >= 0x205 + && lh.kernel_alignment != 0 + && ((lh.kernel_alignment - 1) & lh.kernel_alignment) == 0) + { + for (align = 0; align < 32; align++) + if (grub_le_to_cpu32 (lh.kernel_alignment) & (1 << align)) + break; + relocatable = grub_le_to_cpu32 (lh.relocatable); + } + else + { + align = 0; + relocatable = 0; + } + + if (grub_le_to_cpu16 (lh.version) >= 0x020a) + { + min_align = lh.min_alignment; + prot_size = grub_le_to_cpu32 (lh.init_size); + prot_init_space = page_align (prot_size); + if (relocatable) + preferred_address = grub_le_to_cpu64 (lh.pref_address); + else + preferred_address = GRUB_LINUX_BZIMAGE_ADDR; + } + else + { + min_align = align; + prot_size = prot_file_size; + preferred_address = GRUB_LINUX_BZIMAGE_ADDR; + /* Usually, the compression ratio is about 50%. */ + prot_init_space = page_align (prot_size) * 3; + } + + if (allocate_pages (prot_size, &align, + min_align, relocatable, + preferred_address)) + goto fail; + + grub_memset (&linux_params, 0, sizeof (linux_params)); + grub_memcpy (&linux_params.setup_sects, &lh.setup_sects, sizeof (lh) - 0x1F1); + + linux_params.code32_start = prot_mode_target + lh.code32_start - GRUB_LINUX_BZIMAGE_ADDR; + linux_params.kernel_alignment = (1 << align); + linux_params.ps_mouse = linux_params.padding10 = 0; + + /* + * The Linux 32-bit boot protocol defines the setup header end + * to be at 0x202 + the byte value at 0x201. + */ + len = 0x202 + *((char *) &linux_params.jump + 1); + + /* Verify the struct is big enough so we do not write past the end. */ + if (len > (char *) &linux_params.edd_mbr_sig_buffer - (char *) &linux_params) { + grub_error (GRUB_ERR_BAD_OS, "Linux setup header too big"); + goto fail; + } + + /* We've already read lh so there is no need to read it second time. */ + len -= sizeof(lh); + + if (grub_file_read (file, (char *) &linux_params + sizeof (lh), len) != len) + { + if (!grub_errno) + grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), + argv[0]); + goto fail; + } + + linux_params.type_of_loader = GRUB_LINUX_BOOT_LOADER_TYPE; + + /* These two are used (instead of cmd_line_ptr) by older versions of Linux, + and otherwise ignored. */ + linux_params.cl_magic = GRUB_LINUX_CL_MAGIC; + linux_params.cl_offset = 0x1000; + + linux_params.ramdisk_image = 0; + linux_params.ramdisk_size = 0; + + linux_params.heap_end_ptr = GRUB_LINUX_HEAP_END_OFFSET; + linux_params.loadflags |= GRUB_LINUX_FLAG_CAN_USE_HEAP; + + /* These are not needed to be precise, because Linux uses these values + only to raise an error when the decompression code cannot find good + space. */ + linux_params.ext_mem = ((32 * 0x100000) >> 10); + linux_params.alt_mem = ((32 * 0x100000) >> 10); + + /* Ignored by Linux. */ + linux_params.video_page = 0; + + /* Only used when `video_mode == 0x7', otherwise ignored. */ + linux_params.video_ega_bx = 0; + + linux_params.font_size = 16; /* XXX */ + +#ifdef GRUB_MACHINE_EFI +#ifdef __x86_64__ + if (grub_le_to_cpu16 (linux_params.version) < 0x0208 && + ((grub_addr_t) grub_efi_system_table >> 32) != 0) + return grub_error(GRUB_ERR_BAD_OS, + "kernel does not support 64-bit addressing"); +#endif + + if (grub_le_to_cpu16 (linux_params.version) >= 0x0208) + { + linux_params.v0208.efi_signature = GRUB_LINUX_EFI_SIGNATURE; + linux_params.v0208.efi_system_table = (grub_uint32_t) (grub_addr_t) grub_efi_system_table; +#ifdef __x86_64__ + linux_params.v0208.efi_system_table_hi = (grub_uint32_t) ((grub_uint64_t) grub_efi_system_table >> 32); +#endif + } + else if (grub_le_to_cpu16 (linux_params.version) >= 0x0206) + { + linux_params.v0206.efi_signature = GRUB_LINUX_EFI_SIGNATURE; + linux_params.v0206.efi_system_table = (grub_uint32_t) (grub_addr_t) grub_efi_system_table; + } + else if (grub_le_to_cpu16 (linux_params.version) >= 0x0204) + { + linux_params.v0204.efi_signature = GRUB_LINUX_EFI_SIGNATURE_0204; + linux_params.v0204.efi_system_table = (grub_uint32_t) (grub_addr_t) grub_efi_system_table; + } +#endif + + /* The other parameters are filled when booting. */ + + grub_file_seek (file, real_size + GRUB_DISK_SECTOR_SIZE); + + grub_dprintf ("linux", "bzImage, setup=0x%x, size=0x%x\n", + (unsigned) real_size, (unsigned) prot_size); + + /* Look for memory size and video mode specified on the command line. */ + linux_mem_size = 0; + for (i = 1; i < argc; i++) +#ifdef GRUB_MACHINE_PCBIOS + if (grub_memcmp (argv[i], "vga=", 4) == 0) + { + /* Video mode selection support. */ + char *val = argv[i] + 4; + unsigned vid_mode = GRUB_LINUX_VID_MODE_NORMAL; + struct grub_vesa_mode_table_entry *linux_mode; + grub_err_t err; + char *buf; + + grub_dl_load ("vbe"); + + if (grub_strcmp (val, "normal") == 0) + vid_mode = GRUB_LINUX_VID_MODE_NORMAL; + else if (grub_strcmp (val, "ext") == 0) + vid_mode = GRUB_LINUX_VID_MODE_EXTENDED; + else if (grub_strcmp (val, "ask") == 0) + { + grub_puts_ (N_("Legacy `ask' parameter no longer supported.")); + + /* We usually would never do this in a loader, but "vga=ask" means user + requested interaction, so it can't hurt to request keyboard input. */ + grub_wait_after_message (); + + goto fail; + } + else + vid_mode = (grub_uint16_t) grub_strtoul (val, 0, 0); + + switch (vid_mode) + { + case 0: + case GRUB_LINUX_VID_MODE_NORMAL: + grub_env_set ("gfxpayload", "text"); + grub_printf_ (N_("%s is deprecated. " + "Use set gfxpayload=%s before " + "linux command instead.\n"), + argv[i], "text"); + break; + + case 1: + case GRUB_LINUX_VID_MODE_EXTENDED: + /* FIXME: support 80x50 text. */ + grub_env_set ("gfxpayload", "text"); + grub_printf_ (N_("%s is deprecated. " + "Use set gfxpayload=%s before " + "linux command instead.\n"), + argv[i], "text"); + break; + default: + /* Ignore invalid values. */ + if (vid_mode < GRUB_VESA_MODE_TABLE_START || + vid_mode > GRUB_VESA_MODE_TABLE_END) + { + grub_env_set ("gfxpayload", "text"); + /* TRANSLATORS: "x" has to be entered in, like an identifier, + so please don't use better Unicode codepoints. */ + grub_printf_ (N_("%s is deprecated. VGA mode %d isn't recognized. " + "Use set gfxpayload=WIDTHxHEIGHT[xDEPTH] " + "before linux command instead.\n"), + argv[i], vid_mode); + break; + } + + linux_mode = &grub_vesa_mode_table[vid_mode + - GRUB_VESA_MODE_TABLE_START]; + + buf = grub_xasprintf ("%ux%ux%u,%ux%u", + linux_mode->width, linux_mode->height, + linux_mode->depth, + linux_mode->width, linux_mode->height); + if (! buf) + goto fail; + + grub_printf_ (N_("%s is deprecated. " + "Use set gfxpayload=%s before " + "linux command instead.\n"), + argv[i], buf); + err = grub_env_set ("gfxpayload", buf); + grub_free (buf); + if (err) + goto fail; + } + } + else +#endif /* GRUB_MACHINE_PCBIOS */ + if (grub_memcmp (argv[i], "mem=", 4) == 0) + { + char *val = argv[i] + 4; + + linux_mem_size = grub_strtoul (val, &val, 0); + + if (grub_errno) + { + grub_errno = GRUB_ERR_NONE; + linux_mem_size = 0; + } + else + { + int shift = 0; + + switch (grub_tolower (val[0])) + { + case 'g': + shift += 10; + /* FALLTHROUGH */ + case 'm': + shift += 10; + /* FALLTHROUGH */ + case 'k': + shift += 10; + /* FALLTHROUGH */ + default: + break; + } + + /* Check an overflow. */ + if (linux_mem_size > (~0UL >> shift)) + linux_mem_size = 0; + else + linux_mem_size <<= shift; + } + } + else if (grub_memcmp (argv[i], "quiet", sizeof ("quiet") - 1) == 0) + { + linux_params.loadflags |= GRUB_LINUX_FLAG_QUIET; + } + + /* Create kernel command line. */ + linux_cmdline = grub_zalloc (maximal_cmdline_size + 1); + if (!linux_cmdline) + goto fail; + grub_memcpy (linux_cmdline, LINUX_IMAGE, sizeof (LINUX_IMAGE)); + { + grub_err_t err; + + if (ventoy_linux_argc) + { + ventoy_bootopt_hook(argc, argv); + err = grub_create_loader_cmdline (ventoy_linux_argc, ventoy_linux_args, + linux_cmdline + + sizeof (LINUX_IMAGE) - 1, + maximal_cmdline_size + - (sizeof (LINUX_IMAGE) - 1), + GRUB_VERIFY_KERNEL_CMDLINE); + } + else + { + err = grub_create_loader_cmdline (argc, argv, + linux_cmdline + + sizeof (LINUX_IMAGE) - 1, + maximal_cmdline_size + - (sizeof (LINUX_IMAGE) - 1), + GRUB_VERIFY_KERNEL_CMDLINE); + } + + if (err) + goto fail; + } + + len = prot_file_size; + if (grub_file_read (file, prot_mode_mem, len) != len && !grub_errno) + grub_error (GRUB_ERR_BAD_OS, N_("premature end of file %s"), + argv[0]); + + if (grub_errno == GRUB_ERR_NONE) + { + grub_loader_set (grub_linux_boot, grub_linux_unload, + 0 /* set noreturn=0 in order to avoid grub_console_fini() */); + loaded = 1; + } + + fail: + + if (file) + grub_file_close (file); + + if (grub_errno != GRUB_ERR_NONE) + { + grub_dl_unref (my_mod); + loaded = 0; + } + + return grub_errno; +} + +static grub_err_t +grub_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + grub_size_t size = 0, aligned_size = 0; + grub_addr_t addr_min, addr_max; + grub_addr_t addr; + grub_err_t err; + struct grub_linux_initrd_context initrd_ctx = { 0, 0, 0 }; + + if (argc == 0) + { + grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); + goto fail; + } + + if (! loaded) + { + grub_error (GRUB_ERR_BAD_ARGUMENT, N_("you need to load the kernel first")); + goto fail; + } + + if (grub_initrd_init (argc, argv, &initrd_ctx)) + goto fail; + + size = grub_get_initrd_size (&initrd_ctx); + aligned_size = ALIGN_UP (size, 4096); + + /* Get the highest address available for the initrd. */ + if (grub_le_to_cpu16 (linux_params.version) >= 0x0203) + { + addr_max = grub_cpu_to_le32 (linux_params.initrd_addr_max); + + /* XXX in reality, Linux specifies a bogus value, so + it is necessary to make sure that ADDR_MAX does not exceed + 0x3fffffff. */ + if (addr_max > GRUB_LINUX_INITRD_MAX_ADDRESS) + addr_max = GRUB_LINUX_INITRD_MAX_ADDRESS; + } + else + addr_max = GRUB_LINUX_INITRD_MAX_ADDRESS; + + if (linux_mem_size != 0 && linux_mem_size < addr_max) + addr_max = linux_mem_size; + + /* Linux 2.3.xx has a bug in the memory range check, so avoid + the last page. + Linux 2.2.xx has a bug in the memory range check, which is + worse than that of Linux 2.3.xx, so avoid the last 64kb. */ + addr_max -= 0x10000; + + addr_min = (grub_addr_t) prot_mode_target + prot_init_space; + + /* Put the initrd as high as possible, 4KiB aligned. */ + addr = (addr_max - aligned_size) & ~0xFFF; + + if (addr < addr_min) + { + grub_error (GRUB_ERR_OUT_OF_RANGE, "the initrd is too big"); + goto fail; + } + + { + grub_relocator_chunk_t ch; + err = grub_relocator_alloc_chunk_align (relocator, &ch, + addr_min, addr, aligned_size, + 0x1000, + GRUB_RELOCATOR_PREFERENCE_HIGH, + 1); + if (err) + return err; + initrd_mem = get_virtual_current_address (ch); + initrd_mem_target = get_physical_target_address (ch); + } + + if (grub_initrd_load (&initrd_ctx, argv, initrd_mem)) + goto fail; + + grub_dprintf ("linux", "Initrd, addr=0x%x, size=0x%x\n", + (unsigned) addr, (unsigned) size); + + linux_params.ramdisk_image = initrd_mem_target; + linux_params.ramdisk_size = size; + linux_params.root_dev = 0x0100; /* XXX */ + + fail: + grub_initrd_close (&initrd_ctx); + + return grub_errno; +} + +static grub_err_t +ventoy_cmd_initrd (grub_command_t cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + int i; + char buf[64]; + char *newargv[32] = {NULL}; + + if (ventoy_debug) grub_printf("ventoy_cmd_initrd %d\n", ventoy_linux_argc); + + if (ventoy_linux_argc == 0) + { + return grub_cmd_initrd(cmd, argc, argv); + } + + grub_snprintf(buf, sizeof(buf), "mem:%s:size:%s", grub_env_get("ventoy_cpio_addr"), grub_env_get("ventoy_cpio_size")); + + if (ventoy_debug) grub_printf("membuf=%s\n", buf); + + newargv[0] = buf; + for (i = 0; i < argc; i++) + { + newargv[i + 1] = argv[i]; + } + + ventoy_initrd_called = 1; + + return grub_cmd_initrd(cmd, argc + 1, newargv); +} + + +static grub_command_t cmd_linux, cmd_initrd, cmd_linuxefi, cmd_initrdefi, cmd_set_bootopt, cmd_unset_bootopt; + +GRUB_MOD_INIT(linux) +{ + cmd_linux = grub_register_command ("linux", grub_cmd_linux, + 0, N_("Load Linux.")); + cmd_initrd = grub_register_command ("initrd", ventoy_cmd_initrd, + 0, N_("Load initrd.")); + + cmd_linuxefi = grub_register_command ("linuxefi", grub_cmd_linux, + 0, N_("Load Linux.")); + cmd_initrdefi = grub_register_command ("initrdefi", ventoy_cmd_initrd, + 0, N_("Load initrd.")); + cmd_set_bootopt = grub_register_command ("vt_set_boot_opt", grub_cmd_set_boot_opt, 0, N_("set ext boot opt")); + cmd_unset_bootopt = grub_register_command ("vt_unset_boot_opt", grub_cmd_unset_boot_opt, 0, N_("unset ext boot opt")); + + ventoy_linux_args = grub_zalloc(sizeof(char *) * LINUX_MAX_ARGC); + + my_mod = mod; +} + +GRUB_MOD_FINI(linux) +{ + grub_unregister_command (cmd_linux); + grub_unregister_command (cmd_initrd); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/main.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/main.c new file mode 100644 index 00000000..bc29d3be --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/main.c @@ -0,0 +1,575 @@ +/* main.c - the normal mode main routine */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2000,2001,2002,2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +GRUB_MOD_LICENSE ("GPLv3+"); + +#define GRUB_DEFAULT_HISTORY_SIZE 50 + +static int nested_level = 0; +int grub_normal_exit_level = 0; + +void +grub_normal_free_menu (grub_menu_t menu) +{ + grub_menu_entry_t entry = menu->entry_list; + + while (entry) + { + grub_menu_entry_t next_entry = entry->next; + grub_size_t i; + + if (entry->classes) + { + struct grub_menu_entry_class *class; + for (class = entry->classes; class; class = class->next) + grub_free (class->name); + grub_free (entry->classes); + } + + if (entry->args) + { + for (i = 0; entry->args[i]; i++) + grub_free (entry->args[i]); + grub_free (entry->args); + } + + if (entry->bls) + { + entry->bls->visible = 0; + } + + grub_free ((void *) entry->id); + grub_free ((void *) entry->users); + grub_free ((void *) entry->title); + grub_free ((void *) entry->sourcecode); + grub_free (entry); + entry = next_entry; + } + + grub_free (menu); + grub_env_unset_menu (); +} + +/* Helper for read_config_file. */ +static grub_err_t +read_config_file_getline (char **line, int cont __attribute__ ((unused)), + void *data) +{ + grub_file_t file = data; + + while (1) + { + char *buf; + + *line = buf = grub_file_getline (file); + if (! buf) + return grub_errno; + + if (buf[0] == '#') + grub_free (*line); + else + break; + } + + return GRUB_ERR_NONE; +} + +static grub_menu_t +read_config_file (const char *config) +{ + grub_file_t rawfile, file; + char *old_file = 0, *old_dir = 0; + char *config_dir, *ptr = 0; + const char *ctmp; + + grub_menu_t newmenu; + + newmenu = grub_env_get_menu (); + if (! newmenu) + { + newmenu = grub_zalloc (sizeof (*newmenu)); + if (! newmenu) + return 0; + + grub_env_set_menu (newmenu); + } + + /* Try to open the config file. */ + rawfile = grub_file_open (config, GRUB_FILE_TYPE_CONFIG); + if (! rawfile) + return 0; + + file = grub_bufio_open (rawfile, 0); + if (! file) + { + grub_file_close (rawfile); + return 0; + } + + ctmp = grub_env_get ("config_file"); + if (ctmp) + old_file = grub_strdup (ctmp); + ctmp = grub_env_get ("config_directory"); + if (ctmp) + old_dir = grub_strdup (ctmp); + if (*config == '(') + { + grub_env_set ("config_file", config); + config_dir = grub_strdup (config); + } + else + { + /* $root is guranteed to be defined, otherwise open above would fail */ + config_dir = grub_xasprintf ("(%s)%s", grub_env_get ("root"), config); + if (config_dir) + grub_env_set ("config_file", config_dir); + } + if (config_dir) + { + ptr = grub_strrchr (config_dir, '/'); + if (ptr) + *ptr = 0; + grub_env_set ("config_directory", config_dir); + grub_free (config_dir); + } + + grub_env_export ("config_file"); + grub_env_export ("config_directory"); + + while (1) + { + char *line; + + /* Print an error, if any. */ + grub_print_error (); + grub_errno = GRUB_ERR_NONE; + + if ((read_config_file_getline (&line, 0, file)) || (! line)) + break; + + grub_normal_parse_line (line, read_config_file_getline, file); + grub_free (line); + } + + if (old_file) + grub_env_set ("config_file", old_file); + else + grub_env_unset ("config_file"); + if (old_dir) + grub_env_set ("config_directory", old_dir); + else + grub_env_unset ("config_directory"); + grub_free (old_file); + grub_free (old_dir); + + grub_file_close (file); + + return newmenu; +} + +/* Initialize the screen. */ +void +grub_normal_init_page (struct grub_term_output *term, + int y) +{ + grub_ssize_t msg_len; + int posx; + char *msg_formatted; + grub_uint32_t *unicode_msg; + grub_uint32_t *last_position; + + grub_term_cls (term); + + msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION); + if (!msg_formatted) + return; + + msg_len = grub_utf8_to_ucs4_alloc (msg_formatted, + &unicode_msg, &last_position); + grub_free (msg_formatted); + + if (msg_len < 0) + { + return; + } + + posx = grub_getstringwidth (unicode_msg, last_position, term); + posx = ((int) grub_term_width (term) - posx) / 2; + if (posx < 0) + posx = 0; + grub_term_gotoxy (term, (struct grub_term_coordinate) { posx, y }); + + grub_print_ucs4 (unicode_msg, last_position, 0, 0, term); + grub_putcode ('\n', term); + grub_putcode ('\n', term); + grub_free (unicode_msg); +} + +static void +read_lists (const char *val) +{ + if (! grub_no_modules) + { + read_command_list (val); + read_fs_list (val); + read_crypto_list (val); + read_terminal_list (val); + } + grub_gettext_reread_prefix (val); +} + +static char * +read_lists_hook (struct grub_env_var *var __attribute__ ((unused)), + const char *val) +{ + read_lists (val); + return val ? grub_strdup (val) : NULL; +} + +/* Read the config file CONFIG and execute the menu interface or + the command line interface if BATCH is false. */ +void +grub_normal_execute (const char *config, int nested, int batch) +{ + grub_menu_t menu = 0; + const char *prefix; + + if (! nested) + { + prefix = grub_env_get ("prefix"); + read_lists (prefix); + grub_register_variable_hook ("prefix", NULL, read_lists_hook); + } + + grub_boot_time ("Executing config file"); + + if (config) + { + menu = read_config_file (config); + + /* Ignore any error. */ + grub_errno = GRUB_ERR_NONE; + } + + grub_boot_time ("Executed config file"); + + if (! batch) + { + if (menu && menu->size) + { + + grub_boot_time ("Entering menu"); + grub_show_menu (menu, nested, 0); + if (nested) + grub_normal_free_menu (menu); + } + } +} + +/* This starts the normal mode. */ +void +grub_enter_normal_mode (const char *config) +{ + grub_boot_time ("Entering normal mode"); + nested_level++; + grub_normal_execute (config, 0, 0); + grub_boot_time ("Entering shell"); + grub_cmdline_run (0, 1); + nested_level--; + if (grub_normal_exit_level) + grub_normal_exit_level--; + grub_boot_time ("Exiting normal mode"); +} + +/* Enter normal mode from rescue mode. */ +static grub_err_t +grub_cmd_normal (struct grub_command *cmd __attribute__ ((unused)), + int argc, char *argv[]) +{ + if (argc == 0) + { + /* Guess the config filename. It is necessary to make CONFIG static, + so that it won't get broken by longjmp. */ + char *config; + const char *prefix; + + prefix = grub_env_get ("prefix"); + if (prefix) + { + config = grub_xasprintf ("%s/grub.cfg", prefix); + if (! config) + goto quit; + + grub_enter_normal_mode (config); + grub_free (config); + } + else + grub_enter_normal_mode (0); + } + else + grub_enter_normal_mode (argv[0]); + +quit: + return 0; +} + +/* Exit from normal mode to rescue mode. */ +static grub_err_t +grub_cmd_normal_exit (struct grub_command *cmd __attribute__ ((unused)), + int argc __attribute__ ((unused)), + char *argv[] __attribute__ ((unused))) +{ + if (nested_level <= grub_normal_exit_level) + return grub_error (GRUB_ERR_BAD_ARGUMENT, "not in normal environment"); + grub_normal_exit_level++; + return GRUB_ERR_NONE; +} + +static grub_err_t +grub_normal_reader_init (int nested) +{ + struct grub_term_output *term; + const char *msg_esc = _("ESC at any time exits."); + char *msg_formatted; + + msg_formatted = grub_xasprintf (_("Minimal BASH-like line editing is supported. For " + "the first word, TAB lists possible command completions. Anywhere " + "else TAB lists possible device or file completions. %s"), + nested ? msg_esc : ""); + if (!msg_formatted) + return grub_errno; + + FOR_ACTIVE_TERM_OUTPUTS(term) + { + grub_normal_init_page (term, 1); + grub_term_setcursor (term, 1); + + if (grub_term_width (term) > 3 + STANDARD_MARGIN + 20) + grub_print_message_indented (msg_formatted, 3, STANDARD_MARGIN, term); + else + grub_print_message_indented (msg_formatted, 0, 0, term); + grub_putcode ('\n', term); + grub_putcode ('\n', term); + grub_putcode ('\n', term); + } + grub_free (msg_formatted); + + return 0; +} + +static grub_err_t +grub_normal_read_line_real (char **line, int cont, int nested) +{ + const char *prompt; + + if (cont) + /* TRANSLATORS: it's command line prompt. */ + prompt = _(">"); + else + /* TRANSLATORS: it's command line prompt. */ + prompt = _("grub>"); + + if (!prompt) + return grub_errno; + + while (1) + { + *line = grub_cmdline_get (prompt); + if (*line) + return 0; + + if (cont || nested) + { + grub_free (*line); + *line = 0; + return grub_errno; + } + } + +} + +static grub_err_t +grub_normal_read_line (char **line, int cont, + void *data __attribute__ ((unused))) +{ + return grub_normal_read_line_real (line, cont, 0); +} + +void +grub_cmdline_run (int nested, int force_auth) +{ + grub_err_t err = GRUB_ERR_NONE; + + do + { + err = grub_auth_check_authentication (NULL); + } + while (err && force_auth); + + if (err) + { + grub_print_error (); + grub_errno = GRUB_ERR_NONE; + return; + } + + grub_normal_reader_init (nested); + + while (1) + { + char *line = NULL; + + if (grub_normal_exit_level) + break; + + /* Print an error, if any. */ + grub_print_error (); + grub_errno = GRUB_ERR_NONE; + + grub_normal_read_line_real (&line, 0, nested); + if (! line) + break; + + grub_normal_parse_line (line, grub_normal_read_line, NULL); + grub_free (line); + } +} + +static char * +grub_env_write_pager (struct grub_env_var *var __attribute__ ((unused)), + const char *val) +{ + grub_set_more ((*val == '1')); + return grub_strdup (val); +} + +/* clear */ +static grub_err_t +grub_mini_cmd_clear (struct grub_command *cmd __attribute__ ((unused)), + int argc __attribute__ ((unused)), + char *argv[] __attribute__ ((unused))) +{ + grub_cls (); + return 0; +} + +static grub_command_t cmd_clear; + +static void (*grub_xputs_saved) (const char *str); +static const char *features[] = { + "feature_chainloader_bpb", "feature_ntldr", "feature_platform_search_hint", + "feature_default_font_path", "feature_all_video_module", + "feature_menuentry_id", "feature_menuentry_options", "feature_200_final", + "feature_nativedisk_cmd", "feature_timeout_style" +}; + +GRUB_MOD_INIT(normal) +{ + unsigned i; + + grub_boot_time ("Preparing normal module"); + + /* Previously many modules depended on gzio. Be nice to user and load it. */ + grub_dl_load ("gzio"); + grub_errno = 0; + + grub_normal_auth_init (); + grub_context_init (); + grub_script_init (); + grub_menu_init (); + + grub_xputs_saved = grub_xputs; + grub_xputs = grub_xputs_normal; + + /* Normal mode shouldn't be unloaded. */ + if (mod) + grub_dl_ref (mod); + + cmd_clear = + grub_register_command ("clear", grub_mini_cmd_clear, + 0, N_("Clear the screen.")); + + grub_set_history (GRUB_DEFAULT_HISTORY_SIZE); + + grub_register_variable_hook ("pager", 0, grub_env_write_pager); + grub_env_export ("pager"); + + /* Register a command "normal" for the rescue mode. */ + grub_register_command ("normal", grub_cmd_normal, + 0, N_("Enter normal mode.")); + grub_register_command ("normal_exit", grub_cmd_normal_exit, + 0, N_("Exit from normal mode.")); + + /* Reload terminal colors when these variables are written to. */ + grub_register_variable_hook ("color_normal", NULL, grub_env_write_color_normal); + grub_register_variable_hook ("color_highlight", NULL, grub_env_write_color_highlight); + + /* Preserve hooks after context changes. */ + grub_env_export ("color_normal"); + grub_env_export ("color_highlight"); + + /* Set default color names. */ + grub_env_set ("color_normal", "light-gray/black"); + grub_env_set ("color_highlight", "black/light-gray"); + + for (i = 0; i < ARRAY_SIZE (features); i++) + { + grub_env_set (features[i], "y"); + grub_env_export (features[i]); + } + grub_env_set ("grub_cpu", GRUB_TARGET_CPU); + grub_env_export ("grub_cpu"); + grub_env_set ("grub_platform", GRUB_PLATFORM); + grub_env_export ("grub_platform"); + + grub_boot_time ("Normal module prepared"); +} + +GRUB_MOD_FINI(normal) +{ + grub_context_fini (); + grub_script_fini (); + grub_menu_fini (); + grub_normal_auth_fini (); + + grub_xputs = grub_xputs_saved; + + grub_set_history (0); + grub_register_variable_hook ("pager", 0, 0); + grub_fs_autoload_hook = 0; + grub_unregister_command (cmd_clear); +} diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c index e5d8b88c..070f6d20 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c @@ -803,6 +803,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) goto refresh; case GRUB_TERM_KEY_F2: + case '2': if (0 == g_ventoy_fn_mutex) { cmdstr = grub_env_get("VTOY_F2_CMD"); if (cmdstr) @@ -816,6 +817,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F3: + case '3': if (0 == g_ventoy_fn_mutex) { cmdstr = grub_env_get("VTOY_F3_CMD"); if (cmdstr) @@ -827,6 +829,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F4: + case '4': if (0 == g_ventoy_fn_mutex) { cmdstr = grub_env_get("VTOY_F4_CMD"); if (cmdstr) @@ -840,6 +843,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F5: + case '5': if (0 == g_ventoy_fn_mutex) { cmdstr = grub_env_get("VTOY_F5_CMD"); if (cmdstr) @@ -853,6 +857,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F6: + case '6': if (0 == g_ventoy_fn_mutex) { cmdstr = grub_env_get("VTOY_F6_CMD"); if (cmdstr) @@ -866,6 +871,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F7: + case '7': cmdstr = grub_env_get("VTOY_F7_CMD"); if (cmdstr) { @@ -875,6 +881,7 @@ run_menu (grub_menu_t menu, int nested, int *auto_boot) } break; case GRUB_TERM_KEY_F1: + case '1': menu_fini (); g_ventoy_memdisk_mode = 1 - g_ventoy_memdisk_mode; g_ventoy_menu_refresh = 1; diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu_text.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu_text.c index cb1d3d61..cd96ceb1 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu_text.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu_text.c @@ -180,11 +180,13 @@ command-line or ESC to discard edits and return to the GRUB menu."), if (nested) { + #if 0 ret += grub_print_message_indented_real (_("Press enter to boot the selected OS, " "`e' to edit the commands before booting " "or `c' for a command-line. ESC to return previous menu."), STANDARD_MARGIN, STANDARD_MARGIN, term, dry_run); + #endif } else { @@ -195,7 +197,7 @@ command-line or ESC to discard edits and return to the GRUB menu."), ret += grub_print_message_indented_real("\n", STANDARD_MARGIN, STANDARD_MARGIN, term, dry_run); ret += grub_print_message_indented_real(grub_env_get("VTOY_HOTKEY_TIP"), - STANDARD_MARGIN, STANDARD_MARGIN, term, dry_run); + 3, 6, term, dry_run); } } return ret; diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy.c index 2995bd30..e10751f9 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy.c @@ -34,6 +34,7 @@ #include #include #include +#include #ifdef GRUB_MACHINE_EFI #include #endif @@ -317,6 +318,38 @@ static grub_err_t ventoy_cmd_strstr(grub_extcmd_context_t ctxt, int argc, char * return (grub_strstr(args[0], args[1])) ? 0 : 1; } +static grub_err_t ventoy_cmd_strbegin(grub_extcmd_context_t ctxt, int argc, char **args) +{ + char *c0, *c1; + + (void)ctxt; + + if (argc != 2) + { + return 1; + } + + c0 = args[0]; + c1 = args[1]; + + while (*c0 && *c1) + { + if (*c0 != *c1) + { + return 1; + } + c0++; + c1++; + } + + if (*c1) + { + return 1; + } + + return 0; +} + static grub_err_t ventoy_cmd_incr(grub_extcmd_context_t ctxt, int argc, char **args) { long value_long = 0; @@ -410,7 +443,122 @@ static grub_err_t ventoy_cmd_load_wimboot(grub_extcmd_context_t ctxt, int argc, return 0; } -static grub_err_t ventoy_cmd_load_iso_to_mem(grub_extcmd_context_t ctxt, int argc, char **args) +static int ventoy_load_efiboot_template(char **buf, int *datalen, int *direntoff) +{ + int len; + grub_file_t file; + char exec[128]; + char *data = NULL; + grub_uint32_t offset; + + file = ventoy_grub_file_open(GRUB_FILE_TYPE_LINUX_INITRD, "%s/ventoy/ventoy_efiboot.img.xz", ventoy_get_env("vtoy_efi_part")); + if (file == NULL) + { + debug("failed to open file <%s>\n", "ventoy_efiboot.img.xz"); + return 1; + } + + len = (int)file->size; + + data = (char *)grub_malloc(file->size); + if (!data) + { + return 1; + } + + grub_file_read(file, data, file->size); + grub_file_close(file); + + grub_snprintf(exec, sizeof(exec), "loopback efiboot mem:0x%llx:size:%d", (ulonglong)(ulong)data, len); + grub_script_execute_sourcecode(exec); + + file = grub_file_open("(efiboot)/EFI/BOOT/BOOTX64.EFI", GRUB_FILE_TYPE_LINUX_INITRD); + offset = (grub_uint32_t)grub_iso9660_get_last_file_dirent_pos(file); + grub_file_close(file); + + grub_script_execute_sourcecode("loopback -d efiboot"); + + *buf = data; + *datalen = len; + *direntoff = offset + 2; + + return 0; +} + +static grub_err_t ventoy_cmd_concat_efi_iso(grub_extcmd_context_t ctxt, int argc, char **args) +{ + int len = 0; + int totlen = 0; + int offset = 0; + grub_file_t file; + char name[32]; + char value[32]; + char *buf = NULL; + char *data = NULL; + ventoy_iso9660_override *dirent; + + (void)ctxt; + + if (argc != 2) + { + return 1; + } + + totlen = sizeof(ventoy_chain_head); + + if (ventoy_load_efiboot_template(&buf, &len, &offset)) + { + debug("failed to load efiboot template %d\n", len); + return 1; + } + + totlen += len; + + debug("efiboot template len:%d offset:%d\n", len, offset); + + file = ventoy_grub_file_open(GRUB_FILE_TYPE_LINUX_INITRD, "%s", args[0]); + if (file == NULL) + { + debug("failed to open file <%s>\n", args[0]); + return 1; + } + + totlen += ventoy_align_2k(file->size); + + dirent = (ventoy_iso9660_override *)(buf + offset); + dirent->first_sector = len / 2048; + dirent->first_sector_be = grub_swap_bytes32(dirent->first_sector); + dirent->size = (grub_uint32_t)file->size; + dirent->size_be = grub_swap_bytes32(dirent->size); + + debug("rawiso len:%d efilen:%d total:%d\n", len, (int)file->size, totlen); + +#ifdef GRUB_MACHINE_EFI + data = (char *)grub_efi_allocate_iso_buf(totlen); +#else + data = (char *)grub_malloc(totlen); +#endif + + ventoy_fill_os_param(file, (ventoy_os_param *)data); + + grub_memcpy(data + sizeof(ventoy_chain_head), buf, len); + grub_check_free(buf); + + grub_file_read(file, data + sizeof(ventoy_chain_head) + len, file->size); + grub_file_close(file); + + grub_snprintf(name, sizeof(name), "%s_addr", args[1]); + grub_snprintf(value, sizeof(value), "0x%llx", (ulonglong)(ulong)data); + grub_env_set(name, value); + + grub_snprintf(name, sizeof(name), "%s_size", args[1]); + grub_snprintf(value, sizeof(value), "%d", (int)(totlen)); + grub_env_set(name, value); + + return 0; +} + +static grub_err_t ventoy_cmd_load_file_to_mem(grub_extcmd_context_t ctxt, int argc, char **args) { int rc = 1; char name[32]; @@ -427,6 +575,53 @@ static grub_err_t ventoy_cmd_load_iso_to_mem(grub_extcmd_context_t ctxt, int arg return rc; } + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s", args[0]); + if (file == NULL) + { + debug("failed to open file <%s>\n", args[0]); + return 1; + } + +#ifdef GRUB_MACHINE_EFI + buf = (char *)grub_efi_allocate_iso_buf(file->size); +#else + buf = (char *)grub_malloc(file->size); +#endif + + grub_file_read(file, buf, file->size); + + grub_snprintf(name, sizeof(name), "%s_addr", args[1]); + grub_snprintf(value, sizeof(value), "0x%llx", (unsigned long long)(unsigned long)buf); + grub_env_set(name, value); + + grub_snprintf(name, sizeof(name), "%s_size", args[1]); + grub_snprintf(value, sizeof(value), "%llu", (unsigned long long)file->size); + grub_env_set(name, value); + + grub_file_close(file); + rc = 0; + + return rc; +} + +static grub_err_t ventoy_cmd_load_img_memdisk(grub_extcmd_context_t ctxt, int argc, char **args) +{ + int rc = 1; + int headlen; + char name[32]; + char value[32]; + char *buf = NULL; + grub_file_t file; + + (void)ctxt; + (void)argc; + (void)args; + + if (argc != 2) + { + return rc; + } + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s", args[0]); if (file == NULL) { @@ -434,13 +629,17 @@ static grub_err_t ventoy_cmd_load_iso_to_mem(grub_extcmd_context_t ctxt, int arg return 1; } + headlen = sizeof(ventoy_chain_head); + #ifdef GRUB_MACHINE_EFI - buf = (char *)grub_efi_allocate_iso_buf(file->size); + buf = (char *)grub_efi_allocate_iso_buf(headlen + file->size); #else - buf = (char *)grub_malloc(file->size); + buf = (char *)grub_malloc(headlen + file->size); #endif - grub_file_read(file, buf, file->size); + ventoy_fill_os_param(file, (ventoy_os_param *)buf); + + grub_file_read(file, buf + headlen, file->size); grub_snprintf(name, sizeof(name), "%s_addr", args[1]); grub_snprintf(value, sizeof(value), "0x%llx", (unsigned long long)(unsigned long)buf); @@ -834,6 +1033,14 @@ static int ventoy_colect_img_files(const char *filename, const struct grub_dirho type = img_type_efi; } #endif + else if (0 == grub_strcasecmp(filename + len - 4, ".img")) + { + if (len == 18 && grub_strncmp(filename, "ventoy_wimboot", 14) == 0) + { + return 0; + } + type = img_type_img; + } else { return 0; @@ -1359,13 +1566,14 @@ static grub_err_t ventoy_cmd_img_name(grub_extcmd_context_t ctxt, int argc, char static grub_err_t ventoy_cmd_chosen_img_path(grub_extcmd_context_t ctxt, int argc, char **args) { int img_id = 0; + char value[32]; char *pos = NULL; const char *id = NULL; img_info *cur = g_ventoy_img_list; (void)ctxt; - if (argc != 1) + if (argc < 1 || argc > 2) { return grub_error(GRUB_ERR_BAD_ARGUMENT, "Usage: %s {var}", cmd_raw_name); } @@ -1398,6 +1606,12 @@ static grub_err_t ventoy_cmd_chosen_img_path(grub_extcmd_context_t ctxt, int arg grub_env_set(args[0], cur->path); + if (argc > 1) + { + grub_snprintf(value, sizeof(value), "%llu", (ulonglong)(cur->size)); + grub_env_set(args[1], value); + } + VENTOY_CMD_RETURN(GRUB_ERR_NONE); } @@ -2366,6 +2580,28 @@ end: return 0; } +static grub_err_t ventoy_cmd_img_hook_root(grub_extcmd_context_t ctxt, int argc, char **args) +{ + (void)ctxt; + (void)argc; + (void)args; + + ventoy_env_hook_root(1); + + return 0; +} + +static grub_err_t ventoy_cmd_img_unhook_root(grub_extcmd_context_t ctxt, int argc, char **args) +{ + (void)ctxt; + (void)argc; + (void)args; + + ventoy_env_hook_root(0); + + return 0; +} + grub_uint64_t ventoy_grub_get_file_size(const char *fmt, ...) { grub_uint64_t size = 0; @@ -2489,6 +2725,7 @@ static cmd_para ventoy_cmds[] = { { "vt_incr", ventoy_cmd_incr, 0, NULL, "{Var} {INT}", "Increase integer variable", NULL }, { "vt_strstr", ventoy_cmd_strstr, 0, NULL, "", "", NULL }, + { "vt_str_begin", ventoy_cmd_strbegin, 0, NULL, "", "", NULL }, { "vt_debug", ventoy_cmd_debug, 0, NULL, "{on|off}", "turn debug on/off", NULL }, { "vtdebug", ventoy_cmd_debug, 0, NULL, "{on|off}", "turn debug on/off", NULL }, { "vtbreak", ventoy_cmd_break, 0, NULL, "{level}", "set debug break", NULL }, @@ -2502,7 +2739,10 @@ static cmd_para ventoy_cmds[] = { "vt_img_sector", ventoy_cmd_img_sector, 0, NULL, "{imageName}", "", NULL }, { "vt_dump_img_sector", ventoy_cmd_dump_img_sector, 0, NULL, "", "", NULL }, { "vt_load_wimboot", ventoy_cmd_load_wimboot, 0, NULL, "", "", NULL }, + { "vt_load_cpio", ventoy_cmd_load_cpio, 0, NULL, "", "", NULL }, + { "vt_trailer_cpio", ventoy_cmd_trailer_cpio, 0, NULL, "", "", NULL }, + { "vt_find_first_bootable_hd", ventoy_cmd_find_bootable_hdd, 0, NULL, "", "", NULL }, { "vt_dump_menu", ventoy_cmd_dump_menu, 0, NULL, "", "", NULL }, { "vt_dynamic_menu", ventoy_cmd_dynamic_menu, 0, NULL, "", "", NULL }, @@ -2517,7 +2757,9 @@ static cmd_para ventoy_cmds[] = { "vt_iso9660_nojoliet", ventoy_cmd_iso9660_nojoliet, 0, NULL, "", "", NULL }, { "vt_is_udf", ventoy_cmd_is_udf, 0, NULL, "", "", NULL }, { "vt_file_size", ventoy_cmd_file_size, 0, NULL, "", "", NULL }, - { "vt_load_iso_to_mem", ventoy_cmd_load_iso_to_mem, 0, NULL, "", "", NULL }, + { "vt_load_file_to_mem", ventoy_cmd_load_file_to_mem, 0, NULL, "", "", NULL }, + { "vt_load_img_memdisk", ventoy_cmd_load_img_memdisk, 0, NULL, "", "", NULL }, + { "vt_concat_efi_iso", ventoy_cmd_concat_efi_iso, 0, NULL, "", "", NULL }, { "vt_linux_parse_initrd_isolinux", ventoy_cmd_isolinux_initrd_collect, 0, NULL, "{cfgfile}", "", NULL }, { "vt_linux_parse_initrd_grub", ventoy_cmd_grub_initrd_collect, 0, NULL, "{cfgfile}", "", NULL }, @@ -2557,6 +2799,9 @@ static cmd_para ventoy_cmds[] = { "vt_unix_replace_ko", ventoy_cmd_unix_replace_ko, 0, NULL, "", "", NULL }, { "vt_unix_chain_data", ventoy_cmd_unix_chain_data, 0, NULL, "", "", NULL }, + { "vt_img_hook_root", ventoy_cmd_img_hook_root, 0, NULL, "", "", NULL }, + { "vt_img_unhook_root", ventoy_cmd_img_unhook_root, 0, NULL, "", "", NULL }, + }; diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h index 75c22215..a514f6b5 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h @@ -467,6 +467,7 @@ grub_err_t ventoy_cmd_linux_locate_initrd(grub_extcmd_context_t ctxt, int argc, grub_err_t ventoy_cmd_initrd_count(grub_extcmd_context_t ctxt, int argc, char **args); grub_err_t ventoy_cmd_valid_initrd_count(grub_extcmd_context_t ctxt, int argc, char **args); grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **args); +grub_err_t ventoy_cmd_trailer_cpio(grub_extcmd_context_t ctxt, int argc, char **args); int ventoy_cpio_newc_fill_head(void *buf, int filesize, const void *filedata, const char *name); grub_file_t ventoy_grub_file_open(enum grub_file_type type, const char *fmt, ...); grub_uint64_t ventoy_grub_get_file_size(const char *fmt, ...); diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_linux.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_linux.c index ad871a10..dfda6a84 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_linux.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_linux.c @@ -564,6 +564,14 @@ grub_err_t ventoy_cmd_specify_initrd_file(grub_extcmd_context_t ctxt, int argc, VENTOY_CMD_RETURN(GRUB_ERR_NONE); } +static int ventoy_cpio_newc_get_int(char *value) +{ + char buf[16] = {0}; + + grub_memcpy(buf, value, 8); + return (int)grub_strtoul(buf, NULL, 16); +} + static void ventoy_cpio_newc_fill_int(grub_uint32_t value, char *buf, int buflen) { int i; @@ -1082,6 +1090,96 @@ grub_err_t ventoy_cmd_load_cpio(grub_extcmd_context_t ctxt, int argc, char **arg VENTOY_CMD_RETURN(GRUB_ERR_NONE); } +grub_err_t ventoy_cmd_trailer_cpio(grub_extcmd_context_t ctxt, int argc, char **args) +{ + int mod; + int bufsize; + int namelen; + int offset; + char *name; + grub_uint8_t *bufend; + cpio_newc_header *head; + grub_file_t file; + char value[64]; + const grub_uint8_t trailler[124] = { + 0x30, 0x37, 0x30, 0x37, 0x30, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x31, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x42, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x54, 0x52, + 0x41, 0x49, 0x4C, 0x45, 0x52, 0x21, 0x21, 0x21, 0x00, 0x00, 0x00, 0x00 + }; + + (void)ctxt; + (void)argc; + + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s%s", args[0], args[1]); + if (!file) + { + return 1; + } + + grub_memset(g_ventoy_runtime_buf, 0, sizeof(ventoy_os_param)); + ventoy_fill_os_param(file, (ventoy_os_param *)g_ventoy_runtime_buf); + + grub_file_close(file); + + grub_memcpy(g_ventoy_initrd_head, trailler, sizeof(trailler)); + bufend = (grub_uint8_t *)g_ventoy_initrd_head + sizeof(trailler); + + bufsize = (int)(bufend - g_ventoy_cpio_buf); + mod = bufsize % 512; + if (mod) + { + grub_memset(bufend, 0, 512 - mod); + bufsize += 512 - mod; + } + + if (argc > 1 && grub_strcmp(args[2], "noinit") == 0) + { + head = (cpio_newc_header *)g_ventoy_cpio_buf; + name = (char *)(head + 1); + + while (grub_strcmp(name, "TRAILER!!!")) + { + if (grub_strcmp(name, "init") == 0) + { + grub_memcpy(name, "xxxx", 4); + } + else if (grub_strcmp(name, "linuxrc") == 0) + { + grub_memcpy(name, "vtoyxrc", 7); + } + else if (grub_strcmp(name, "sbin") == 0) + { + grub_memcpy(name, "vtoy", 4); + } + else if (grub_strcmp(name, "sbin/init") == 0) + { + grub_memcpy(name, "vtoy/vtoy", 9); + } + + namelen = ventoy_cpio_newc_get_int(head->c_namesize); + offset = sizeof(cpio_newc_header) + namelen; + offset = ventoy_align(offset, 4); + offset += ventoy_cpio_newc_get_int(head->c_filesize); + offset = ventoy_align(offset, 4); + + head = (cpio_newc_header *)((char *)head + offset); + name = (char *)(head + 1); + } + } + + grub_snprintf(value, sizeof(value), "0x%llx", (ulonglong)(ulong)g_ventoy_cpio_buf); + ventoy_set_env("ventoy_cpio_addr", value); + grub_snprintf(value, sizeof(value), "%d", bufsize); + ventoy_set_env("ventoy_cpio_size", value); + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + grub_err_t ventoy_cmd_linux_chain_data(grub_extcmd_context_t ctxt, int argc, char **args) { diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_plugin.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_plugin.c index 7fbe9db7..426e75fc 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_plugin.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_plugin.c @@ -151,6 +151,12 @@ static int ventoy_plugin_theme_check(VTOY_JSON *json, const char *isodisk) grub_printf("display_mode: %s\n", value); } + value = vtoy_json_get_string_ex(json->pstChild, "serial_param"); + if (value) + { + grub_printf("serial_param %s\n", value); + } + value = vtoy_json_get_string_ex(json->pstChild, "ventoy_left"); if (value) { @@ -236,6 +242,13 @@ static int ventoy_plugin_theme_entry(VTOY_JSON *json, const char *isodisk) debug("display_mode %s\n", value); grub_env_set("vtoy_display_mode", value); } + + value = vtoy_json_get_string_ex(json->pstChild, "serial_param"); + if (value) + { + debug("serial_param %s\n", value); + grub_env_set("vtoy_serial_param", value); + } value = vtoy_json_get_string_ex(json->pstChild, "ventoy_left"); if (value) diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_unix.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_unix.c new file mode 100644 index 00000000..1e81309c --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_unix.c @@ -0,0 +1,631 @@ +/****************************************************************************** + * ventoy_unix.c + * + * Copyright (c) 2020, longpanda + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see . + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ventoy_def.h" + +GRUB_MOD_LICENSE ("GPLv3+"); + +char g_ko_mod_path[256]; +int g_conf_new_len = 0; +char *g_conf_new_data = NULL; + +int g_mod_new_len = 0; +char *g_mod_new_data = NULL; + +grub_uint64_t g_mod_override_offset = 0; +grub_uint64_t g_conf_override_offset = 0; + +static int ventoy_get_file_override(const char *filename, grub_uint64_t *offset) +{ + grub_file_t file; + + *offset = 0; + + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "(loop)%s", filename); + if (!file) + { + return 1; + } + + *offset = grub_iso9660_get_last_file_dirent_pos(file) + 2; + + grub_file_close(file); + + return 0; +} + +static grub_uint32_t ventoy_unix_get_override_chunk_count(void) +{ + grub_uint32_t count = 0; + + if (g_conf_new_len > 0) + { + count++; + } + + if (g_mod_new_len > 0) + { + count++; + } + + return count; +} + +static grub_uint32_t ventoy_unix_get_virt_chunk_count(void) +{ + grub_uint32_t count = 0; + + if (g_conf_new_len > 0) + { + count++; + } + + if (g_mod_new_len > 0) + { + count++; + } + + return count; +} +static grub_uint32_t ventoy_unix_get_virt_chunk_size(void) +{ + grub_uint32_t size; + + size = sizeof(ventoy_virt_chunk) * ventoy_unix_get_virt_chunk_count(); + + if (g_conf_new_len > 0) + { + size += ventoy_align_2k(g_conf_new_len); + } + + if (g_mod_new_len > 0) + { + size += ventoy_align_2k(g_mod_new_len); + } + + return size; +} + +static void ventoy_unix_fill_override_data( grub_uint64_t isosize, void *override) +{ + grub_uint64_t sector; + ventoy_override_chunk *cur; + ventoy_iso9660_override *dirent; + + sector = (isosize + 2047) / 2048; + + cur = (ventoy_override_chunk *)override; + + if (g_conf_new_len > 0) + { + /* loader.conf */ + cur->img_offset = g_conf_override_offset; + cur->override_size = sizeof(ventoy_iso9660_override); + dirent = (ventoy_iso9660_override *)cur->override_data; + dirent->first_sector = (grub_uint32_t)sector; + dirent->size = (grub_uint32_t)g_conf_new_len; + dirent->first_sector_be = grub_swap_bytes32(dirent->first_sector); + dirent->size_be = grub_swap_bytes32(dirent->size); + sector += (dirent->size + 2047) / 2048; + } + + if (g_mod_new_len > 0) + { + /* mod.ko */ + cur++; + cur->img_offset = g_mod_override_offset; + cur->override_size = sizeof(ventoy_iso9660_override); + dirent = (ventoy_iso9660_override *)cur->override_data; + dirent->first_sector = (grub_uint32_t)sector; + dirent->size = (grub_uint32_t)g_mod_new_len; + dirent->first_sector_be = grub_swap_bytes32(dirent->first_sector); + dirent->size_be = grub_swap_bytes32(dirent->size); + sector += (dirent->size + 2047) / 2048; + } + + return; +} + +static void ventoy_unix_fill_virt_data( grub_uint64_t isosize, ventoy_chain_head *chain) +{ + grub_uint64_t sector; + grub_uint32_t offset; + grub_uint32_t data_secs; + char *override; + ventoy_virt_chunk *cur; + + override = (char *)chain + chain->virt_chunk_offset; + cur = (ventoy_virt_chunk *)override; + + sector = (isosize + 2047) / 2048; + offset = 2 * sizeof(ventoy_virt_chunk); + + if (g_conf_new_len > 0) + { + ventoy_unix_fill_virt(g_conf_new_data, g_conf_new_len); + } + + if (g_mod_new_len > 0) + { + ventoy_unix_fill_virt(g_mod_new_data, g_mod_new_len); + } + + return; +} + +static int ventoy_freebsd_append_conf(char *buf, const char *isopath) +{ + int pos = 0; + grub_uint32_t i; + grub_disk_t disk; + grub_file_t isofile; + char uuid[64] = {0}; + ventoy_img_chunk *chunk; + grub_uint8_t disk_guid[16]; + + debug("ventoy_freebsd_append_conf %s\n", isopath); + + isofile = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s", isopath); + if (!isofile) + { + return 1; + } + + vtoy_ssprintf(buf, pos, "ventoy_load=\"%s\"\n", "YES"); + vtoy_ssprintf(buf, pos, "ventoy_name=\"%s\"\n", g_ko_mod_path); + + disk = isofile->device->disk; + + ventoy_get_disk_guid(isofile->name, disk_guid); + + for (i = 0; i < 16; i++) + { + grub_snprintf(uuid + i * 2, sizeof(uuid), "%02x", disk_guid[i]); + } + + vtoy_ssprintf(buf, pos, "hint.ventoy.0.disksize=%llu\n", (ulonglong)(disk->total_sectors * (1 << disk->log_sector_size))); + vtoy_ssprintf(buf, pos, "hint.ventoy.0.diskuuid=\"%s\"\n", uuid); + vtoy_ssprintf(buf, pos, "hint.ventoy.0.segnum=%u\n", g_img_chunk_list.cur_chunk); + + for (i = 0; i < g_img_chunk_list.cur_chunk; i++) + { + chunk = g_img_chunk_list.chunk + i; + vtoy_ssprintf(buf, pos, "hint.ventoy.%u.seg=\"0x%llx@0x%llx\"\n", + i, (ulonglong)(chunk->disk_start_sector * 512), + (ulonglong)((chunk->disk_end_sector + 1) * 512)); + } + + grub_file_close(isofile); + + return pos; +} + +grub_err_t ventoy_cmd_unix_reset(grub_extcmd_context_t ctxt, int argc, char **args) +{ + (void)ctxt; + (void)argc; + (void)args; + + g_conf_new_len = 0; + g_mod_new_len = 0; + g_mod_override_offset = 0; + g_conf_override_offset = 0; + + check_free(g_mod_new_data, grub_free); + check_free(g_conf_new_data, grub_free); + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + +grub_err_t ventoy_cmd_parse_freenas_ver(grub_extcmd_context_t ctxt, int argc, char **args) +{ + grub_file_t file; + const char *ver = NULL; + char *buf = NULL; + VTOY_JSON *json = NULL; + + (void)ctxt; + (void)argc; + + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s", args[0]); + if (!file) + { + debug("Failed to open file %s\n", args[0]); + return 1; + } + + buf = grub_malloc(file->size + 2); + if (!buf) + { + grub_file_close(file); + return 0; + } + grub_file_read(file, buf, file->size); + buf[file->size] = 0; + + json = vtoy_json_create(); + if (!json) + { + goto end; + } + + if (vtoy_json_parse(json, buf)) + { + goto end; + } + + ver = vtoy_json_get_string_ex(json->pstChild, "Version"); + if (ver) + { + debug("freenas version:<%s>\n", ver); + ventoy_set_env(args[1], ver); + } + else + { + debug("freenas version:<%s>\n", "NOT FOUND"); + grub_env_unset(args[1]); + } + +end: + grub_check_free(buf); + check_free(json, vtoy_json_destroy); + grub_file_close(file); + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + +grub_err_t ventoy_cmd_unix_freebsd_ver(grub_extcmd_context_t ctxt, int argc, char **args) +{ + grub_file_t file; + char *buf; + char *start = NULL; + char *nextline = NULL; + + (void)ctxt; + (void)argc; + (void)args; + + file = ventoy_grub_file_open(GRUB_FILE_TYPE_LINUX_INITRD, "%s", args[0]); + if (!file) + { + debug("Failed to open file %s\n", args[0]); + return 1; + } + + buf = grub_zalloc(file->size + 2); + if (!buf) + { + grub_file_close(file); + return 0; + } + grub_file_read(file, buf, file->size); + + for (start = buf; start; start = nextline) + { + if (grub_strncmp(start, "USERLAND_VERSION", 16) == 0) + { + nextline = start; + while (*nextline && *nextline != '\r' && *nextline != '\n') + { + nextline++; + } + + *nextline = 0; + break; + } + nextline = ventoy_get_line(start); + } + + if (start) + { + debug("freebsd version:<%s>\n", start); + ventoy_set_env(args[1], start); + } + else + { + debug("freebsd version:<%s>\n", "NOT FOUND"); + grub_env_unset(args[1]); + } + + grub_free(buf); + grub_file_close(file); + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + +grub_err_t ventoy_cmd_unix_replace_conf(grub_extcmd_context_t ctxt, int argc, char **args) +{ + grub_uint32_t i; + char *data; + grub_uint64_t offset; + grub_file_t file; + const char *confile = NULL; + const char * loader_conf[] = + { + "/boot/loader.conf", + "/boot/defaults/loader.conf", + }; + + (void)ctxt; + + if (argc != 2) + { + debug("Replace conf invalid argc %d\n", argc); + return 1; + } + + for (i = 0; i < sizeof(loader_conf) / sizeof(loader_conf[0]); i++) + { + if (ventoy_get_file_override(loader_conf[i], &offset) == 0) + { + confile = loader_conf[i]; + g_conf_override_offset = offset; + break; + } + } + + if (confile == NULL) + { + debug("Can't find loader.conf file from %u locations\n", i); + return 1; + } + + file = ventoy_grub_file_open(GRUB_FILE_TYPE_LINUX_INITRD, "(loop)/%s", confile); + if (!file) + { + debug("Failed to open %s \n", confile); + return 1; + } + + debug("old conf file size:%d\n", (int)file->size); + + data = grub_malloc(VTOY_MAX_SCRIPT_BUF); + if (!data) + { + grub_file_close(file); + return 1; + } + + grub_file_read(file, data, file->size); + grub_file_close(file); + + g_conf_new_data = data; + g_conf_new_len = (int)file->size; + + if (grub_strcmp(args[0], "FreeBSD") == 0) + { + g_conf_new_len += ventoy_freebsd_append_conf(data + file->size, args[1]); + } + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + +grub_err_t ventoy_cmd_unix_replace_ko(grub_extcmd_context_t ctxt, int argc, char **args) +{ + char *data; + grub_uint64_t offset; + grub_file_t file; + + (void)ctxt; + + if (argc != 2) + { + debug("Replace ko invalid argc %d\n", argc); + return 1; + } + + debug("replace ko %s\n", args[0]); + + if (ventoy_get_file_override(args[0], &offset) == 0) + { + grub_snprintf(g_ko_mod_path, sizeof(g_ko_mod_path), "%s", args[0]); + g_mod_override_offset = offset; + } + else + { + debug("Can't find replace ko file from %s\n", args[0]); + return 1; + } + + file = ventoy_grub_file_open(GRUB_FILE_TYPE_LINUX_INITRD, "%s", args[1]); + if (!file) + { + debug("Failed to open %s \n", args[1]); + return 1; + } + + debug("new ko file size:%d\n", (int)file->size); + + data = grub_malloc(file->size); + if (!data) + { + grub_file_close(file); + return 1; + } + + grub_file_read(file, data, file->size); + grub_file_close(file); + + g_mod_new_data = data; + g_mod_new_len = (int)file->size; + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + +grub_err_t ventoy_cmd_unix_chain_data(grub_extcmd_context_t ctxt, int argc, char **args) +{ + int ventoy_compatible = 0; + grub_uint32_t size = 0; + grub_uint64_t isosize = 0; + grub_uint32_t boot_catlog = 0; + grub_uint32_t img_chunk_size = 0; + grub_uint32_t override_count = 0; + grub_uint32_t override_size = 0; + grub_uint32_t virt_chunk_size = 0; + grub_file_t file; + grub_disk_t disk; + const char *pLastChain = NULL; + const char *compatible; + ventoy_chain_head *chain; + char envbuf[64]; + + (void)ctxt; + (void)argc; + + compatible = grub_env_get("ventoy_compatible"); + if (compatible && compatible[0] == 'Y') + { + ventoy_compatible = 1; + } + + if (NULL == g_img_chunk_list.chunk) + { + grub_printf("ventoy not ready\n"); + return 1; + } + + file = ventoy_grub_file_open(VENTOY_FILE_TYPE, "%s", args[0]); + if (!file) + { + return 1; + } + + isosize = file->size; + + boot_catlog = ventoy_get_iso_boot_catlog(file); + if (boot_catlog) + { + if (ventoy_is_efi_os() && (!ventoy_has_efi_eltorito(file, boot_catlog))) + { + grub_env_set("LoadIsoEfiDriver", "on"); + } + } + else + { + if (ventoy_is_efi_os()) + { + grub_env_set("LoadIsoEfiDriver", "on"); + } + else + { + return grub_error(GRUB_ERR_BAD_ARGUMENT, "File %s is not bootable", args[0]); + } + } + + img_chunk_size = g_img_chunk_list.cur_chunk * sizeof(ventoy_img_chunk); + + if (ventoy_compatible) + { + size = sizeof(ventoy_chain_head) + img_chunk_size; + } + else + { + override_count = ventoy_unix_get_override_chunk_count(); + override_size = override_count * sizeof(ventoy_override_chunk); + + virt_chunk_size = ventoy_unix_get_virt_chunk_size(); + size = sizeof(ventoy_chain_head) + img_chunk_size + override_size + virt_chunk_size; + } + + pLastChain = grub_env_get("vtoy_chain_mem_addr"); + if (pLastChain) + { + chain = (ventoy_chain_head *)grub_strtoul(pLastChain, NULL, 16); + if (chain) + { + debug("free last chain memory %p\n", chain); + grub_free(chain); + } + } + + chain = grub_malloc(size); + if (!chain) + { + grub_printf("Failed to alloc chain memory size %u\n", size); + grub_file_close(file); + return 1; + } + + grub_snprintf(envbuf, sizeof(envbuf), "0x%lx", (unsigned long)chain); + grub_env_set("vtoy_chain_mem_addr", envbuf); + grub_snprintf(envbuf, sizeof(envbuf), "%u", size); + grub_env_set("vtoy_chain_mem_size", envbuf); + + grub_memset(chain, 0, sizeof(ventoy_chain_head)); + + /* part 1: os parameter */ + g_ventoy_chain_type = ventoy_chain_linux; + ventoy_fill_os_param(file, &(chain->os_param)); + + /* part 2: chain head */ + disk = file->device->disk; + chain->disk_drive = disk->id; + chain->disk_sector_size = (1 << disk->log_sector_size); + chain->real_img_size_in_bytes = file->size; + chain->virt_img_size_in_bytes = (file->size + 2047) / 2048 * 2048; + chain->boot_catalog = boot_catlog; + + if (!ventoy_is_efi_os()) + { + grub_file_seek(file, boot_catlog * 2048); + grub_file_read(file, chain->boot_catalog_sector, sizeof(chain->boot_catalog_sector)); + } + + /* part 3: image chunk */ + chain->img_chunk_offset = sizeof(ventoy_chain_head); + chain->img_chunk_num = g_img_chunk_list.cur_chunk; + grub_memcpy((char *)chain + chain->img_chunk_offset, g_img_chunk_list.chunk, img_chunk_size); + + if (ventoy_compatible) + { + return 0; + } + + /* part 4: override chunk */ + chain->override_chunk_offset = chain->img_chunk_offset + img_chunk_size; + chain->override_chunk_num = override_count; + ventoy_unix_fill_override_data(isosize, (char *)chain + chain->override_chunk_offset); + + /* part 5: virt chunk */ + chain->virt_chunk_offset = chain->override_chunk_offset + override_size; + chain->virt_chunk_num = ventoy_unix_get_virt_chunk_count(); + ventoy_unix_fill_virt_data(isosize, chain); + + grub_file_close(file); + + VENTOY_CMD_RETURN(GRUB_ERR_NONE); +} + diff --git a/GRUB2/MOD_SRC/grub-2.04/include/grub/compiler.h b/GRUB2/MOD_SRC/grub-2.04/include/grub/compiler.h new file mode 100644 index 00000000..9859ff4c --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/include/grub/compiler.h @@ -0,0 +1,53 @@ +/* compiler.h - macros for various compiler features */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010,2014 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#ifndef GRUB_COMPILER_HEADER +#define GRUB_COMPILER_HEADER 1 + +/* GCC version checking borrowed from glibc. */ +#if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define GNUC_PREREQ(maj,min) \ + ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) +#else +# define GNUC_PREREQ(maj,min) 0 +#endif + +/* Does this compiler support compile-time error attributes? */ +#if GNUC_PREREQ(4,3) +# define ATTRIBUTE_ERROR(msg) \ + __attribute__ ((__error__ (msg))) +#else +# define ATTRIBUTE_ERROR(msg) __attribute__ ((noreturn)) +#endif + +#if GNUC_PREREQ(4,4) +# define GNU_PRINTF gnu_printf +#else +# define GNU_PRINTF printf +#endif + +#if GNUC_PREREQ(3,4) +# define WARN_UNUSED_RESULT __attribute__ ((warn_unused_result)) +#else +# define WARN_UNUSED_RESULT +#endif + +#define UNUSED __attribute__((__unused__)) + +#endif /* ! GRUB_COMPILER_HEADER */ diff --git a/GRUB2/MOD_SRC/grub-2.04/include/grub/kernel.h b/GRUB2/MOD_SRC/grub-2.04/include/grub/kernel.h new file mode 100644 index 00000000..55c1c128 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/include/grub/kernel.h @@ -0,0 +1,133 @@ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2002,2005,2006,2007,2008,2009 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#ifndef GRUB_KERNEL_HEADER +#define GRUB_KERNEL_HEADER 1 + +#include +#include + +enum +{ + OBJ_TYPE_ELF, + OBJ_TYPE_MEMDISK, + OBJ_TYPE_CONFIG, + OBJ_TYPE_PREFIX, + OBJ_TYPE_PUBKEY, + OBJ_TYPE_DTB +}; + +/* The module header. */ +struct grub_module_header +{ + /* The type of object. */ + grub_uint32_t type; + /* The size of object (including this header). */ + grub_uint32_t size; +}; + +/* "gmim" (GRUB Module Info Magic). */ +#define GRUB_MODULE_MAGIC 0x676d696d + +struct grub_module_info32 +{ + /* Magic number so we know we have modules present. */ + grub_uint32_t magic; + /* The offset of the modules. */ + grub_uint32_t offset; + /* The size of all modules plus this header. */ + grub_uint32_t size; +}; + +struct grub_module_info64 +{ + /* Magic number so we know we have modules present. */ + grub_uint32_t magic; + grub_uint32_t padding; + /* The offset of the modules. */ + grub_uint64_t offset; + /* The size of all modules plus this header. */ + grub_uint64_t size; +}; + +#ifndef GRUB_UTIL +/* Space isn't reusable on some platforms. */ +/* On Qemu the preload space is readonly. */ +/* On emu there is no preload space. */ +/* On ieee1275 our code assumes that heap is p=v which isn't guaranteed for module space. */ +#if defined (GRUB_MACHINE_QEMU) || defined (GRUB_MACHINE_EMU) \ + || defined (GRUB_MACHINE_EFI) \ + || (defined (GRUB_MACHINE_IEEE1275) && !defined (__sparc__)) +#define GRUB_KERNEL_PRELOAD_SPACE_REUSABLE 0 +#endif + +#if defined (GRUB_MACHINE_PCBIOS) || defined (GRUB_MACHINE_COREBOOT) \ + || defined (GRUB_MACHINE_MULTIBOOT) || defined (GRUB_MACHINE_MIPS_QEMU_MIPS) \ + || defined (GRUB_MACHINE_MIPS_LOONGSON) || defined (GRUB_MACHINE_ARC) \ + || (defined (__sparc__) && defined (GRUB_MACHINE_IEEE1275)) \ + || defined (GRUB_MACHINE_UBOOT) || defined (GRUB_MACHINE_XEN) \ + || defined(GRUB_MACHINE_XEN_PVH) +/* FIXME: stack is between 2 heap regions. Move it. */ +#define GRUB_KERNEL_PRELOAD_SPACE_REUSABLE 1 +#endif + +#ifndef GRUB_KERNEL_PRELOAD_SPACE_REUSABLE +#error "Please check if preload space is reusable on this platform!" +#endif + +#if GRUB_TARGET_SIZEOF_VOID_P == 8 +#define grub_module_info grub_module_info64 +#else +#define grub_module_info grub_module_info32 +#endif + +extern grub_addr_t EXPORT_VAR (grub_modbase); + +void EXPORT_FUNC(ventoy_env_hook_root)(int hook); + +#define FOR_MODULES(var) for (\ + var = (grub_modbase && ((((struct grub_module_info *) grub_modbase)->magic) == GRUB_MODULE_MAGIC)) ? (struct grub_module_header *) \ + (grub_modbase + (((struct grub_module_info *) grub_modbase)->offset)) : 0;\ + var && (grub_addr_t) var \ + < (grub_modbase + (((struct grub_module_info *) grub_modbase)->size)); \ + var = (struct grub_module_header *) \ + (((grub_uint32_t *) var) + ((((struct grub_module_header *) var)->size + sizeof (grub_addr_t) - 1) / sizeof (grub_addr_t)) * (sizeof (grub_addr_t) / sizeof (grub_uint32_t)))) + +grub_addr_t grub_modules_get_end (void); + +#endif + +/* The start point of the C code. */ +void grub_main (void) __attribute__ ((noreturn)); + +/* The machine-specific initialization. This must initialize memory. */ +void grub_machine_init (void); + +/* The machine-specific finalization. */ +void EXPORT_FUNC(grub_machine_fini) (int flags); + +/* The machine-specific prefix initialization. */ +void +grub_machine_get_bootlocation (char **device, char **path); + +/* Register all the exported symbols. This is automatically generated. */ +void grub_register_exported_symbols (void); + +extern void (*EXPORT_VAR(grub_net_poll_cards_idle)) (void); + +#endif /* ! GRUB_KERNEL_HEADER */ diff --git a/GRUB2/MOD_SRC/grub-2.04/include/grub/menu.h b/GRUB2/MOD_SRC/grub-2.04/include/grub/menu.h new file mode 100644 index 00000000..0acdc2aa --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/include/grub/menu.h @@ -0,0 +1,119 @@ +/* menu.h - Menu model function prototypes and data structures. */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2009 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#ifndef GRUB_MENU_HEADER +#define GRUB_MENU_HEADER 1 + +struct bls_entry +{ + struct bls_entry *next; + struct bls_entry *prev; + struct keyval **keyvals; + int nkeyvals; + char *filename; + int visible; +}; + +struct grub_menu_entry_class +{ + char *name; + struct grub_menu_entry_class *next; +}; + +/* The menu entry. */ +struct grub_menu_entry +{ + /* The title name. */ + const char *title; + + /* The identifier. */ + const char *id; + + /* If set means not everybody is allowed to boot this entry. */ + int restricted; + + /* Allowed users. */ + const char *users; + + /* The classes associated with the menu entry: + used to choose an icon or other style attributes. + This is a dummy head node for the linked list, so for an entry E, + E.classes->next is the first class if it is not NULL. */ + struct grub_menu_entry_class *classes; + + /* The sourcecode of the menu entry, used by the editor. */ + const char *sourcecode; + + /* Parameters to be passed to menu definition. */ + int argc; + char **args; + + int hotkey; + + int submenu; + + /* The next element. */ + struct grub_menu_entry *next; + + /* BLS used to populate the entry */ + struct bls_entry *bls; +}; +typedef struct grub_menu_entry *grub_menu_entry_t; + +/* The menu. */ +struct grub_menu +{ + /* The size of a menu. */ + int size; + + /* The list of menu entries. */ + grub_menu_entry_t entry_list; +}; +typedef struct grub_menu *grub_menu_t; + +/* Callback structure menu viewers can use to provide user feedback when + default entries are executed, possibly including fallback entries. */ +typedef struct grub_menu_execute_callback +{ + /* Called immediately before ENTRY is booted. */ + void (*notify_booting) (grub_menu_entry_t entry, void *userdata); + + /* Called when executing one entry has failed, and another entry, ENTRY, will + be executed as a fallback. The implementation of this function should + delay for a period of at least 2 seconds before returning in order to + allow the user time to read the information before it can be lost by + executing ENTRY. */ + void (*notify_fallback) (grub_menu_entry_t entry, void *userdata); + + /* Called when an entry has failed to execute and there is no remaining + fallback entry to attempt. */ + void (*notify_failure) (void *userdata); +} +*grub_menu_execute_callback_t; + +grub_menu_entry_t grub_menu_get_entry (grub_menu_t menu, int no); +int grub_menu_get_timeout (void); +void grub_menu_set_timeout (int timeout); +void grub_menu_entry_run (grub_menu_entry_t entry); +int grub_menu_get_default_entry_index (grub_menu_t menu); + +void grub_menu_init (void); +void grub_menu_fini (void); + +#endif /* GRUB_MENU_HEADER */ diff --git a/GRUB2/MOD_SRC/grub-2.04/include/grub/normal.h b/GRUB2/MOD_SRC/grub-2.04/include/grub/normal.h new file mode 100644 index 00000000..8839ad85 --- /dev/null +++ b/GRUB2/MOD_SRC/grub-2.04/include/grub/normal.h @@ -0,0 +1,177 @@ +/* normal.h - prototypes for the normal mode */ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2002,2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#ifndef GRUB_NORMAL_HEADER +#define GRUB_NORMAL_HEADER 1 + +#include +#include +#include +#include +#include +#include +#include + +/* The standard left and right margin for some messages. */ +#define STANDARD_MARGIN 6 + +/* The type of a completion item. */ +enum grub_completion_type + { + GRUB_COMPLETION_TYPE_COMMAND, + GRUB_COMPLETION_TYPE_DEVICE, + GRUB_COMPLETION_TYPE_PARTITION, + GRUB_COMPLETION_TYPE_FILE, + GRUB_COMPLETION_TYPE_ARGUMENT + }; +typedef enum grub_completion_type grub_completion_type_t; + +extern struct grub_menu_viewer grub_normal_text_menu_viewer; +extern int grub_normal_exit_level; + +/* Defined in `main.c'. */ +void grub_enter_normal_mode (const char *config); +void grub_normal_execute (const char *config, int nested, int batch); +struct grub_term_screen_geometry +{ + /* The number of entries shown at a time. */ + int num_entries; + int first_entry_y; + int first_entry_x; + int entry_width; + int timeout_y; + int timeout_lines; + int border; + int right_margin; +}; + +void grub_menu_init_page (int nested, int edit, + struct grub_term_screen_geometry *geo, + struct grub_term_output *term); +void grub_normal_init_page (struct grub_term_output *term, int y); +char *grub_file_getline (grub_file_t file); +void grub_cmdline_run (int nested, int force_auth); + +/* Defined in `cmdline.c'. */ +char *grub_cmdline_get (const char *prompt); +grub_err_t grub_set_history (int newsize); + +/* Defined in `completion.c'. */ +char *grub_normal_do_completion (char *buf, int *restore, + void (*hook) (const char *item, grub_completion_type_t type, int count)); + +/* Defined in `misc.c'. */ +grub_err_t grub_normal_print_device_info (const char *name); + +/* Defined in `color.c'. */ +char *grub_env_write_color_normal (struct grub_env_var *var, const char *val); +char *grub_env_write_color_highlight (struct grub_env_var *var, const char *val); +int grub_parse_color_name_pair (grub_uint8_t *ret, const char *name); + +/* Defined in `menu_text.c'. */ +void grub_wait_after_message (void); +void +grub_print_ucs4 (const grub_uint32_t * str, + const grub_uint32_t * last_position, + int margin_left, int margin_right, + struct grub_term_output *term); + +void +grub_print_ucs4_menu (const grub_uint32_t * str, + const grub_uint32_t * last_position, + int margin_left, int margin_right, + struct grub_term_output *term, + int skip_lines, int max_lines, grub_uint32_t contchar, + struct grub_term_pos *pos); +int +grub_ucs4_count_lines (const grub_uint32_t * str, + const grub_uint32_t * last_position, + int margin_left, int margin_right, + struct grub_term_output *term); +grub_size_t grub_getstringwidth (grub_uint32_t * str, + const grub_uint32_t * last_position, + struct grub_term_output *term); +void grub_print_message_indented (const char *msg, int margin_left, + int margin_right, + struct grub_term_output *term); +void +grub_menu_text_register_instances (int entry, grub_menu_t menu, int nested); +grub_err_t +grub_show_menu (grub_menu_t menu, int nested, int autobooted); + +/* Defined in `handler.c'. */ +void read_handler_list (void); +void free_handler_list (void); + +/* Defined in `dyncmd.c'. */ +void read_command_list (const char *prefix); + +/* Defined in `autofs.c'. */ +void read_fs_list (const char *prefix); + +void grub_context_init (void); +void grub_context_fini (void); + +void read_crypto_list (const char *prefix); + +void read_terminal_list (const char *prefix); + +void grub_set_more (int onoff); + +void grub_normal_reset_more (void); + +void grub_xputs_normal (const char *str); + +extern int grub_extractor_level; + +grub_err_t +grub_normal_add_menu_entry (int argc, const char **args, char **classes, + const char *id, + const char *users, const char *hotkey, + const char *prefix, const char *sourcecode, + int submenu, int *index, struct bls_entry *bls); + +grub_err_t +grub_normal_set_password (const char *user, const char *password); + +void grub_normal_free_menu (grub_menu_t menu); + +void grub_normal_auth_init (void); +void grub_normal_auth_fini (void); + +void +grub_xnputs (const char *str, grub_size_t msg_len); + +grub_command_t +grub_dyncmd_get_cmd (grub_command_t cmd); + +void +grub_gettext_reread_prefix (const char *val); + +enum grub_human_size_type + { + GRUB_HUMAN_SIZE_NORMAL, + GRUB_HUMAN_SIZE_SHORT, + GRUB_HUMAN_SIZE_SPEED, + }; + +const char * +grub_get_human_size (grub_uint64_t size, enum grub_human_size_type type); + +#endif /* ! GRUB_NORMAL_HEADER */ diff --git a/IMG/cpio/sbin/init b/IMG/cpio/sbin/init index ef7b5d6d..bd8e06db 100644 --- a/IMG/cpio/sbin/init +++ b/IMG/cpio/sbin/init @@ -54,7 +54,8 @@ if [ -z "$VTOY_REDT_BUG" ]; then fi cd $VTOY_PATH -xz -d ventoy.sh.xz +xz -d ventoy_chain.sh.xz +xz -d ventoy_loop.sh.xz if [ -n "$VTOY_REDT_BUG" ]; then xz -d -c hook.cpio.xz | cpio -idm diff --git a/IMG/cpio/ventoy/hook/default/10-dm.rules b/IMG/cpio/ventoy/hook/default/10-dm.rules new file mode 100644 index 00000000..f33df582 --- /dev/null +++ b/IMG/cpio/ventoy/hook/default/10-dm.rules @@ -0,0 +1,150 @@ +# Copyright (C) 2009 Red Hat, Inc. All rights reserved. +# +# This file is part of LVM2. + +# Udev rules for device-mapper devices. +# +# These rules create a DM control node in /dev/mapper directory. +# The rules also create nodes named dm-x (x is a number) in /dev +# directory and symlinks to these nodes with names given by +# the actual DM names. Some udev environment variables are set +# for use in later rules: +# DM_NAME - actual DM device's name +# DM_UUID - UUID set for DM device (blank if not specified) +# DM_SUSPENDED - suspended state of DM device (0 or 1) +# DM_UDEV_RULES_VSN - DM udev rules version +# +# These rules cover only basic device-mapper functionality in udev. +# +# Various DM subsystems may contain further subsystem-specific rules +# in 11-dm-.rules which should be installed together +# with the DM subsystem and which extend these basic rules. +# For example: +# 11-dm-lvm.rules for LVM subsystem +# 11-dm-mpath.rules for multipath subsystem (since version 0.6.0, recommended!) +# +# Even more specific rules may be required by subsystems so always +# check subsystem's upstream repository for recent set of rules. +# Also, keep in mind that recent rules may also require recent +# subsystem-specific binaries. + +KERNEL=="device-mapper", NAME="mapper/control" + +SUBSYSTEM!="block", GOTO="dm_end" +KERNEL!="dm-[0-9]*", GOTO="dm_end" + + +# Device created, major and minor number assigned - "add" event generated. +# Table loaded - no event generated. +# Device resumed (or renamed) - "change" event generated. +# Device removed - "remove" event generated. +# +# The dm-X nodes are always created, even on "add" event, we can't suppress +# that (the node is created even earlier with devtmpfs). All the symlinks +# (e.g. /dev/mapper) are created in right time after a device has its table +# loaded and is properly resumed. For this reason, direct use of dm-X nodes +# is not recommended. +ACTION!="add|change", GOTO="dm_end" + +# Decode udev control flags and set environment variables appropriately. +# These flags are encoded in DM_COOKIE variable that was introduced in +# kernel version 2.6.31. Therefore, we can use this feature with +# kernels >= 2.6.31 only. Cookie is not decoded for remove event. +ENV{DM_COOKIE}=="?*", IMPORT{program}="/usr/sbin/dmsetup udevflags $env{DM_COOKIE}" + +# Rule out easy-to-detect inappropriate events first. +ENV{DISK_RO}=="1", GOTO="dm_disable" + +# There is no cookie set nor any flags encoded in events not originating +# in libdevmapper so we need to detect this and try to behave correctly. +# For such spurious events, regenerate all flags from current udev database content +# (this information would normally be inaccessible for spurious ADD and CHANGE events). +ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", ENV{DM_ACTIVATION}="1", GOTO="dm_flags_done" +IMPORT{db}="DM_UDEV_DISABLE_DM_RULES_FLAG" +IMPORT{db}="DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG" +IMPORT{db}="DM_UDEV_DISABLE_DISK_RULES_FLAG" +IMPORT{db}="DM_UDEV_DISABLE_OTHER_RULES_FLAG" +IMPORT{db}="DM_UDEV_LOW_PRIORITY_FLAG" +IMPORT{db}="DM_UDEV_DISABLE_LIBRARY_FALLBACK_FLAG" +IMPORT{db}="DM_UDEV_PRIMARY_SOURCE_FLAG" +IMPORT{db}="DM_UDEV_FLAG7" +IMPORT{db}="DM_UDEV_RULES_VSN" +LABEL="dm_flags_done" + +# Normally, we operate on "change" events. But when coldplugging, there's an +# "add" event present. We have to recognize this and do our actions in this +# particular situation, too. Also, we don't want the nodes to be created +# prematurely on "add" events while not coldplugging. We check +# DM_UDEV_PRIMARY_SOURCE_FLAG to see if the device was activated correctly +# before and if not, we ignore the "add" event totally. This way we can support +# udev triggers generating "add" events (e.g. "udevadm trigger --action=add" or +# "echo add > /sys/block//uevent"). The trigger with "add" event is +# also used at boot to reevaluate udev rules for all existing devices activated +# before (e.g. in initrd). If udev is used in initrd, we require the udev init +# script to not remove the existing udev database so we can reuse the information +# stored at the time of device activation in the initrd. +ACTION!="add", GOTO="dm_no_coldplug" +ENV{DM_UDEV_RULES_VSN}!="1", ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}!="1", GOTO="dm_disable" +ENV{DM_ACTIVATION}="1" +LABEL="dm_no_coldplug" + +# Putting it together, following table is used to recognize genuine and spurious events. +# N.B. Spurious events are generated based on use of the WATCH udev +# rule or by triggering an event manually by "udevadm trigger" call +# or by "echo > /sys/block/dm-X/uevent". +# +# EVENT DM_UDEV_PRIMARY_SOURCE_FLAG DM_ACTIVATION +# ====================================================================== +# add event (genuine) 0 0 +# change event (genuine) 1 1 +# add event (spurious) +# |_ dev still not active 0 0 +# \_ dev already active 1 1 +# change event (spurious) +# |_ dev still not active 0 0 +# \_ dev already active 1 0 + +# "dm" sysfs subdirectory is available in newer versions of DM +# only (kernels >= 2.6.29). We have to check for its existence +# and use dmsetup tool instead to get the DM name, uuid and +# suspended state if the "dm" subdirectory is not present. +# The "suspended" item was added even later (kernels >= 2.6.31), +# so we also have to call dmsetup if the kernel version used +# is in between these releases. +TEST=="dm", ENV{DM_NAME}="$attr{dm/name}", ENV{DM_UUID}="$attr{dm/uuid}", ENV{DM_SUSPENDED}="$attr{dm/suspended}" +TEST!="dm", IMPORT{program}="/usr/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o name,uuid,suspended" +ENV{DM_SUSPENDED}!="?*", IMPORT{program}="/usr/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o suspended" + +# dmsetup tool provides suspended state information in textual +# form with values "Suspended"/"Active". We translate it to +# 0/1 respectively to be consistent with sysfs values. +ENV{DM_SUSPENDED}=="Active", ENV{DM_SUSPENDED}="0" +ENV{DM_SUSPENDED}=="Suspended", ENV{DM_SUSPENDED}="1" + +# This variable provides a reliable way to check that device-mapper +# rules were installed. It means that all needed variables are set +# by these rules directly so there's no need to acquire them again +# later. Other rules can alternate the functionality based on this +# fact (e.g. fallback to rules that behave correctly even without +# these rules installed). It also provides versioning for any +# possible future changes. +# VSN 1 - original rules +# VSN 2 - add support for synthesized events +ENV{DM_UDEV_RULES_VSN}="2" + +ENV{DM_UDEV_DISABLE_DM_RULES_FLAG}!="1", ENV{DM_NAME}=="?*", SYMLINK+="mapper/$env{DM_NAME}" + +# Avoid processing and scanning a DM device in the other (foreign) +# rules if it is in suspended state. However, we still keep 'disk' +# and 'DM subsystem' related rules enabled in this case. +ENV{DM_SUSPENDED}=="1", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" + +GOTO="dm_end" + +LABEL="dm_disable" +ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}="1" +ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1" +ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1" +OPTIONS:="nowatch" + +LABEL="dm_end" diff --git a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh index c656c6fe..2da5f079 100644 --- a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh +++ b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh @@ -475,7 +475,7 @@ ventoy_udev_disk_common_hook() { is_inotify_ventoy_part() { - if echo $1 | grep -q "2$"; then + if echo $1 | $GREP -q "2$"; then if ! [ -e /sys/block/$1 ]; then if [ -e /sys/class/block/$1 ]; then if [ -e /dev/${1:0:-1} ]; then diff --git a/IMG/cpio/ventoy/hook/ventoy-os-lib.sh b/IMG/cpio/ventoy/hook/ventoy-os-lib.sh index 05533347..fb36ac25 100644 --- a/IMG/cpio/ventoy/hook/ventoy-os-lib.sh +++ b/IMG/cpio/ventoy/hook/ventoy-os-lib.sh @@ -105,3 +105,9 @@ ventoy_print_yum_repo() { ventoy_set_inotify_script() { echo $VTOY_PATH/hook/$1 > $VTOY_PATH/inotifyd-hook-script.txt } + +ventoy_set_loop_inotify_script() { + echo $VTOY_PATH/loop/$1 > $VTOY_PATH/inotifyd-loop-script.txt +} + + diff --git a/IMG/cpio/ventoy/init b/IMG/cpio/ventoy/init index ad5ac3a9..ef7310e6 100644 --- a/IMG/cpio/ventoy/init +++ b/IMG/cpio/ventoy/init @@ -24,203 +24,14 @@ # # #################################################################### [ -d /proc ] || mkdir /proc; mount -t proc proc /proc -vtcmdline=$(cat /proc/cmdline) -vtkerver=$(cat /proc/version) +vtoy_cmdline=$(cat /proc/cmdline) umount /proc; rm -rf /proc -echo "kenel version=$vtkerver" >>$VTLOG -echo "kenel cmdline=$vtcmdline" >>$VTLOG - -#break here for debug -if [ "$VTOY_BREAK_LEVEL" = "01" ] || [ "$VTOY_BREAK_LEVEL" = "11" ]; then - sleep 5 - echo -e "\n\n\033[32m ################################################# \033[0m" - echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" - echo -e "\033[32m ################################################# \033[0m \n" - - if [ "$VTOY_BREAK_LEVEL" = "11" ]; then - cat $VTLOG - fi - exec $BUSYBOX_PATH/sh -fi - - -#################################################################### -# # -# Step 2 : extract real initramfs to / # -# # -#################################################################### -cd / -rm -rf /init /linuxrc /dev/ /root - -vtSbinFileNum=$(ls -1 /sbin | wc -l) -if [ $vtSbinFileNum -eq 1 ]; then - echo "remove whole sbin directory" >> $VTLOG - rm -rf /sbin +if echo $vtoy_cmdline | grep -q 'rdinit=/vtoy/vtoy'; then + echo "handover to init_loop" >>$VTLOG + rm -f /xxxx /vtoyxrc + exec $BUSYBOX_PATH/sh $VTOY_PATH/init_loop else - echo "remove only sbin/init file" >> $VTLOG - ls -l /sbin >> $VTLOG - rm -f /sbin/init + echo "handover to init_chain" >>$VTLOG + exec $BUSYBOX_PATH/sh $VTOY_PATH/init_chain fi - -ventoy_is_initrd_ramdisk() { - #As I known, PCLinuxOS use ramdisk - if echo $vtkerver | grep -i -q 'PCLinuxOS'; then - true - else - false - fi -} - -ventoy_mount_squashfs() { - mkdir /dev - mount -t devtmpfs devtmpfs /dev - dd if=$1 of=/dev/ram0 status=none - umount /dev && rm -rf /dev -} - -# param: file skip magic tmp -ventoy_unpack_initramfs() { - vtfile=$1; vtskip=$2; vtmagic=$3; vttmp=$4 - echo "=====ventoy_unpack_initramfs: #$*#" >> $VTLOG - - #special process - #if [ "${vtmagic:0:4}" = '5678' ]; then - # echo -en '\x1F\x8B' | dd status=none of=$vtfile bs=1 count=2 conv=notrunc - # vtmagic='1F8B' - #fi - - if [ "${vtmagic:0:4}" = '6873' ]; then - ventoy_mount_squashfs $vtfile - return - fi - - for vtx in '1F8B zcat' '1F9E zcat' '425A bzcat' '5D00 lzcat' 'FD37 xzcat' '894C lzopcat' '0221 lz4cat' '28B5 zstdcat' '3037 cat'; do - if [ "${vtx:0:4}" = "${vtmagic:0:4}" ]; then - echo "vtx=$vtx" >> $VTLOG - if [ $vtskip -eq 0 ]; then - if [ "${vtx:5}" = "xzcat" ]; then - rm -f $VTOY_PATH/xzlog - ${vtx:5} $vtfile 2> $VTOY_PATH/xzlog | (cpio -idmu 2>>$VTLOG; cat > $vttmp) - - if grep -q 'corrupted data' $VTOY_PATH/xzlog; then - echo 'xzcat failed, now try xzminidec...' >> $VTLOG - cat $vtfile | xzminidec | (cpio -idmu 2>>$VTLOG; cat > $vttmp) - fi - - else - ${vtx:5} $vtfile | (cpio -idmu 2>>$VTLOG; cat > $vttmp) - fi - else - dd if=$vtfile skip=$vtskip iflag=skip_bytes status=none | ${vtx:5} | (cpio -idmu 2>>$VTLOG; cat > $vttmp) - fi - break - fi - done -} - -# param: file magic tmp -ventoy_unpack_initrd() { - vtfile=$1; vtmagic=$2; vttmp=$3 - echo "=====ventoy_unpack_initrd: #$*#" >> $VTLOG - - for vtx in '1F8B zcat' '1F9E zcat' '425A bzcat' '5D00 lzcat' 'FD37 xzcat' '894C lzopcat' '0221 lz4cat' '28B5 zstdcat' '3037 cat'; do - if [ "${vtx:0:4}" = "${vtmagic:0:4}" ]; then - echo "vtx=$vtx" >> $VTLOG - ${vtx:5} $vtfile > $vttmp - break - fi - done -} - - -# This export is for busybox cpio command -export EXTRACT_UNSAFE_SYMLINKS=1 - -for vtfile in $(ls /initrd*); do - #decompress first initrd - vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $vtfile) - - if ventoy_is_initrd_ramdisk; then - ventoy_unpack_initrd $vtfile $vtmagic ${vtfile}_tmp - mv ${vtfile}_tmp $vtfile - break - else - ventoy_unpack_initramfs $vtfile 0 $vtmagic ${vtfile}_tmp - fi - - #only for cpio,cpio,...,initrd sequence, initrd,cpio or initrd,initrd sequence is not supported - while [ -e ${vtfile}_tmp ] && [ $(stat -c '%s' ${vtfile}_tmp) -gt 512 ]; do - mv ${vtfile}_tmp $vtfile - vtdump=$(hexdump -n 512 -e '512/1 "%02X"' $vtfile) - vtmagic=$(echo $vtdump | sed 's/^\(00\)*//') - let vtoffset="(${#vtdump}-${#vtmagic})/2" - - if [ -z "$vtmagic" ]; then - echo "terminate with all zero data file" >> $VTLOG - break - fi - - ventoy_unpack_initramfs $vtfile $vtoffset ${vtmagic:0:4} ${vtfile}_tmp - done - - rm -f $vtfile ${vtfile}_tmp -done - - -#break here for debug -if [ "$VTOY_BREAK_LEVEL" = "02" ] || [ "$VTOY_BREAK_LEVEL" = "12" ]; then - sleep 5 - echo -e "\n\n\033[32m ################################################# \033[0m" - echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" - echo -e "\033[32m ################################################# \033[0m \n" - if [ "$VTOY_BREAK_LEVEL" = "12" ]; then - cat $VTOY_PATH/log - fi - exec $BUSYBOX_PATH/sh -fi - - -#################################################################### -# # -# Step 3 : Extract injection archive # -# # -#################################################################### -ventoy_unpack_injection() { - vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $VTOY_PATH/ventoy_injection) - echo "ventoy_unpack_injection vtmagic=$vtmagic ..." - - if [ "1F8B" = "$vtmagic" ] || [ "1F9E" = "$vtmagic" ]; then - echo "tar.gz tar -xzvf" - tar -xzvf $VTOY_PATH/ventoy_injection -C / - elif [ "425A" = "$vtmagic" ]; then - echo "tar.bz2 tar -xjvf" - tar -xjvf $VTOY_PATH/ventoy_injection -C / - elif [ "FD37" = "$vtmagic" ]; then - echo "tar.xz tar -xJvf" - tar -xJvf $VTOY_PATH/ventoy_injection -C / - elif [ "5D00" = "$vtmagic" ]; then - echo "tar.lzma tar -xavf" - tar -xavf $VTOY_PATH/ventoy_injection -C / - else - echo "unzip -o" - unzip -o $VTOY_PATH/ventoy_injection -d / - fi -} - -if [ -e $VTOY_PATH/ventoy_injection ]; then - echo "### decompress injection ... ###" >>$VTLOG - ventoy_unpack_injection > $VTOY_PATH/injection.log 2>&1 -fi - - -#################################################################### -# # -# Step 4 : Hand over to ventoy.sh # -# # -#################################################################### -echo "Now hand over to ventoy.sh" >>$VTLOG -. $VTOY_PATH/tool/vtoytool_install.sh - -export PATH=$VTOY_ORG_PATH -exec $BUSYBOX_PATH/sh $VTOY_PATH/ventoy.sh diff --git a/IMG/cpio/ventoy/init_chain b/IMG/cpio/ventoy/init_chain new file mode 100644 index 00000000..17e27c74 --- /dev/null +++ b/IMG/cpio/ventoy/init_chain @@ -0,0 +1,226 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + + +################################################################### +# # +# Step 1 : parse kernel debug parameter # +# # +#################################################################### +[ -d /proc ] || mkdir /proc; mount -t proc proc /proc +vtcmdline=$(cat /proc/cmdline) +vtkerver=$(cat /proc/version) +umount /proc; rm -rf /proc + +echo "kenel version=$vtkerver" >>$VTLOG +echo "kenel cmdline=$vtcmdline" >>$VTLOG + +#break here for debug +if [ "$VTOY_BREAK_LEVEL" = "01" ] || [ "$VTOY_BREAK_LEVEL" = "11" ]; then + sleep 5 + echo -e "\n\n\033[32m ################################################# \033[0m" + echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" + echo -e "\033[32m ################################################# \033[0m \n" + + if [ "$VTOY_BREAK_LEVEL" = "11" ]; then + cat $VTLOG + fi + exec $BUSYBOX_PATH/sh +fi + + +#################################################################### +# # +# Step 2 : extract real initramfs to / # +# # +#################################################################### +cd / +rm -rf /init /linuxrc /dev/ /root + +vtSbinFileNum=$(ls -1 /sbin | wc -l) +if [ $vtSbinFileNum -eq 1 ]; then + echo "remove whole sbin directory" >> $VTLOG + rm -rf /sbin +else + echo "remove only sbin/init file" >> $VTLOG + ls -l /sbin >> $VTLOG + rm -f /sbin/init +fi + +ventoy_is_initrd_ramdisk() { + #As I known, PCLinuxOS use ramdisk + if echo $vtkerver | grep -i -q 'PCLinuxOS'; then + true + else + false + fi +} + +ventoy_mount_squashfs() { + mkdir /dev + mount -t devtmpfs devtmpfs /dev + dd if=$1 of=/dev/ram0 status=none + umount /dev && rm -rf /dev +} + +# param: file skip magic tmp +ventoy_unpack_initramfs() { + vtfile=$1; vtskip=$2; vtmagic=$3; vttmp=$4 + echo "=====ventoy_unpack_initramfs: #$*#" >> $VTLOG + + #special process + #if [ "${vtmagic:0:4}" = '5678' ]; then + # echo -en '\x1F\x8B' | dd status=none of=$vtfile bs=1 count=2 conv=notrunc + # vtmagic='1F8B' + #fi + + if [ "${vtmagic:0:4}" = '6873' ]; then + ventoy_mount_squashfs $vtfile + return + fi + + for vtx in '1F8B zcat' '1F9E zcat' '425A bzcat' '5D00 lzcat' 'FD37 xzcat' '894C lzopcat' '0221 lz4cat' '28B5 zstdcat' '3037 cat'; do + if [ "${vtx:0:4}" = "${vtmagic:0:4}" ]; then + echo "vtx=$vtx" >> $VTLOG + if [ $vtskip -eq 0 ]; then + if [ "${vtx:5}" = "xzcat" ]; then + rm -f $VTOY_PATH/xzlog + ${vtx:5} $vtfile 2> $VTOY_PATH/xzlog | (cpio -idmu 2>>$VTLOG; cat > $vttmp) + + if grep -q 'corrupted data' $VTOY_PATH/xzlog; then + echo 'xzcat failed, now try xzminidec...' >> $VTLOG + cat $vtfile | xzminidec | (cpio -idmu 2>>$VTLOG; cat > $vttmp) + fi + + else + ${vtx:5} $vtfile | (cpio -idmu 2>>$VTLOG; cat > $vttmp) + fi + else + dd if=$vtfile skip=$vtskip iflag=skip_bytes status=none | ${vtx:5} | (cpio -idmu 2>>$VTLOG; cat > $vttmp) + fi + break + fi + done +} + +# param: file magic tmp +ventoy_unpack_initrd() { + vtfile=$1; vtmagic=$2; vttmp=$3 + echo "=====ventoy_unpack_initrd: #$*#" >> $VTLOG + + for vtx in '1F8B zcat' '1F9E zcat' '425A bzcat' '5D00 lzcat' 'FD37 xzcat' '894C lzopcat' '0221 lz4cat' '28B5 zstdcat' '3037 cat'; do + if [ "${vtx:0:4}" = "${vtmagic:0:4}" ]; then + echo "vtx=$vtx" >> $VTLOG + ${vtx:5} $vtfile > $vttmp + break + fi + done +} + + +# This export is for busybox cpio command +export EXTRACT_UNSAFE_SYMLINKS=1 + +for vtfile in $(ls /initrd*); do + #decompress first initrd + vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $vtfile) + + if ventoy_is_initrd_ramdisk; then + ventoy_unpack_initrd $vtfile $vtmagic ${vtfile}_tmp + mv ${vtfile}_tmp $vtfile + break + else + ventoy_unpack_initramfs $vtfile 0 $vtmagic ${vtfile}_tmp + fi + + #only for cpio,cpio,...,initrd sequence, initrd,cpio or initrd,initrd sequence is not supported + while [ -e ${vtfile}_tmp ] && [ $(stat -c '%s' ${vtfile}_tmp) -gt 512 ]; do + mv ${vtfile}_tmp $vtfile + vtdump=$(hexdump -n 512 -e '512/1 "%02X"' $vtfile) + vtmagic=$(echo $vtdump | sed 's/^\(00\)*//') + let vtoffset="(${#vtdump}-${#vtmagic})/2" + + if [ -z "$vtmagic" ]; then + echo "terminate with all zero data file" >> $VTLOG + break + fi + + ventoy_unpack_initramfs $vtfile $vtoffset ${vtmagic:0:4} ${vtfile}_tmp + done + + rm -f $vtfile ${vtfile}_tmp +done + + +#break here for debug +if [ "$VTOY_BREAK_LEVEL" = "02" ] || [ "$VTOY_BREAK_LEVEL" = "12" ]; then + sleep 5 + echo -e "\n\n\033[32m ################################################# \033[0m" + echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" + echo -e "\033[32m ################################################# \033[0m \n" + if [ "$VTOY_BREAK_LEVEL" = "12" ]; then + cat $VTOY_PATH/log + fi + exec $BUSYBOX_PATH/sh +fi + + +#################################################################### +# # +# Step 3 : Extract injection archive # +# # +#################################################################### +ventoy_unpack_injection() { + vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $VTOY_PATH/ventoy_injection) + echo "ventoy_unpack_injection vtmagic=$vtmagic ..." + + if [ "1F8B" = "$vtmagic" ] || [ "1F9E" = "$vtmagic" ]; then + echo "tar.gz tar -xzvf" + tar -xzvf $VTOY_PATH/ventoy_injection -C / + elif [ "425A" = "$vtmagic" ]; then + echo "tar.bz2 tar -xjvf" + tar -xjvf $VTOY_PATH/ventoy_injection -C / + elif [ "FD37" = "$vtmagic" ]; then + echo "tar.xz tar -xJvf" + tar -xJvf $VTOY_PATH/ventoy_injection -C / + elif [ "5D00" = "$vtmagic" ]; then + echo "tar.lzma tar -xavf" + tar -xavf $VTOY_PATH/ventoy_injection -C / + else + echo "unzip -o" + unzip -o $VTOY_PATH/ventoy_injection -d / + fi +} + +if [ -e $VTOY_PATH/ventoy_injection ]; then + echo "### decompress injection ... ###" >>$VTLOG + ventoy_unpack_injection > $VTOY_PATH/injection.log 2>&1 +fi + + +#################################################################### +# # +# Step 4 : Hand over to ventoy_chain.sh # +# # +#################################################################### +echo "Now hand over to ventoy.sh" >>$VTLOG +. $VTOY_PATH/tool/vtoytool_install.sh + +export PATH=$VTOY_ORG_PATH +exec $BUSYBOX_PATH/sh $VTOY_PATH/ventoy_chain.sh diff --git a/IMG/cpio/ventoy/init_loop b/IMG/cpio/ventoy/init_loop new file mode 100644 index 00000000..1cbb6190 --- /dev/null +++ b/IMG/cpio/ventoy/init_loop @@ -0,0 +1,90 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + + +################################################################### +# # +# Step 1 : parse kernel debug parameter # +# # +#################################################################### +[ -d /proc ] || mkdir /proc; mount -t proc proc /proc +vtcmdline=$(cat /proc/cmdline) +vtkerver=$(cat /proc/version) +umount /proc; rm -rf /proc + +echo "kenel version=$vtkerver" >>$VTLOG +echo "kenel cmdline=$vtcmdline" >>$VTLOG + +#break here for debug +if [ "$VTOY_BREAK_LEVEL" = "01" ] || [ "$VTOY_BREAK_LEVEL" = "11" ]; then + sleep 5 + echo -e "\n\n\033[32m ################################################# \033[0m" + echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" + echo -e "\033[32m ################################################# \033[0m \n" + + if [ "$VTOY_BREAK_LEVEL" = "11" ]; then + cat $VTLOG + fi + exec $BUSYBOX_PATH/sh +fi + + +#################################################################### +# # +# Step 2 : Extract injection archive # +# # +#################################################################### +ventoy_unpack_injection() { + vtmagic=$(hexdump -n 2 -e '2/1 "%02X"' $VTOY_PATH/ventoy_injection) + echo "ventoy_unpack_injection vtmagic=$vtmagic ..." + + if [ "1F8B" = "$vtmagic" ] || [ "1F9E" = "$vtmagic" ]; then + echo "tar.gz tar -xzvf" + tar -xzvf $VTOY_PATH/ventoy_injection -C / + elif [ "425A" = "$vtmagic" ]; then + echo "tar.bz2 tar -xjvf" + tar -xjvf $VTOY_PATH/ventoy_injection -C / + elif [ "FD37" = "$vtmagic" ]; then + echo "tar.xz tar -xJvf" + tar -xJvf $VTOY_PATH/ventoy_injection -C / + elif [ "5D00" = "$vtmagic" ]; then + echo "tar.lzma tar -xavf" + tar -xavf $VTOY_PATH/ventoy_injection -C / + else + echo "unzip -o" + unzip -o $VTOY_PATH/ventoy_injection -d / + fi +} + +if [ -e $VTOY_PATH/ventoy_injection ]; then + echo "### decompress injection ... ###" >>$VTLOG + ventoy_unpack_injection > $VTOY_PATH/injection.log 2>&1 +fi + + +#################################################################### +# # +# Step 3 : Hand over to ventoy_loop.sh # +# # +#################################################################### +echo "Now hand over to ventoy.sh" >>$VTLOG +. $VTOY_PATH/tool/vtoytool_install.sh + +export PATH=$VTOY_ORG_PATH +exec $BUSYBOX_PATH/sh $VTOY_PATH/ventoy_loop.sh diff --git a/IMG/cpio/ventoy/loop/deepin/ventoy-disk.sh b/IMG/cpio/ventoy/loop/deepin/ventoy-disk.sh new file mode 100644 index 00000000..48c3752d --- /dev/null +++ b/IMG/cpio/ventoy/loop/deepin/ventoy-disk.sh @@ -0,0 +1,36 @@ +#!/bin/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +cd /ventoy +xzcat tool.cpio.xz | cpio -idmu +/ventoy/tool/vtoytool/00/vtoytool_64 --install + +while [ -n "Y" ]; do + line=$(/ventoy/tool/vtoydump -f /ventoy/ventoy_os_param) + if [ $? -eq 0 ]; then + vtdiskname=${line%%#*} + break + else + sleep 1 + fi +done + +echo "ventoy disk is $vtdiskname" >> /ventoy/log +/ventoy/tool/vtoydm -p -f /ventoy/ventoy_image_map -d $vtdiskname > /ventoy/ventoy_dm_table +dmsetup create ventoy /ventoy/ventoy_dm_table --readonly diff --git a/IMG/cpio/ventoy/loop/deepin/ventoy-init.sh b/IMG/cpio/ventoy/loop/deepin/ventoy-init.sh new file mode 100644 index 00000000..17543eb3 --- /dev/null +++ b/IMG/cpio/ventoy/loop/deepin/ventoy-init.sh @@ -0,0 +1,21 @@ +#!/bin/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +sed "/^mountroot$/i\\sh /ventoy/loop/deepin/ventoy-disk.sh" -i /init +exec /init diff --git a/IMG/cpio/ventoy/loop/endless/ventoy-hook.sh b/IMG/cpio/ventoy/loop/endless/ventoy-hook.sh new file mode 100644 index 00000000..7d0820d6 --- /dev/null +++ b/IMG/cpio/ventoy/loop/endless/ventoy-hook.sh @@ -0,0 +1,36 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +. $VTOY_PATH/hook/ventoy-os-lib.sh + +END_UDEV_DIR=$(ventoy_get_udev_conf_dir) + +if ! [ -e "$END_UDEV_DIR/10-dm.rules" ]; then + echo 'Copy dm rule file' >> $VTLOG + $CAT $VTOY_PATH/hook/default/10-dm.rules > "$END_UDEV_DIR/10-dm.rules" +fi + +if ! [ -e "$END_UDEV_DIR/13-dm-disk.rules" ]; then + echo 'Copy dm-disk rule file' >> $VTLOG + $CAT $VTOY_PATH/hook/default/13-dm-disk.rules > "$END_UDEV_DIR/13-dm-disk.rules" +fi + +ventoy_set_loop_inotify_script endless/ventoy-inotifyd-hook.sh +$BUSYBOX_PATH/cp -a $VTOY_PATH/loop/endless/ventoy-inotifyd-start.sh /lib/dracut/hooks/pre-udev/01-ventoy-inotifyd-start.sh + diff --git a/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-hook.sh b/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-hook.sh new file mode 100644 index 00000000..cc9050da --- /dev/null +++ b/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-hook.sh @@ -0,0 +1,37 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +. /ventoy/hook/ventoy-hook-lib.sh + +if is_ventoy_hook_finished; then + exit 0 +fi + +VTPATH_OLD=$PATH; PATH=$PATH:$BUSYBOX_PATH:$VTOY_PATH/tool + +if is_inotify_ventoy_part $3; then + vtlog "##### INOTIFYD: $2/$3 is created (YES) ..." + + ventoy_udev_disk_common_hook "$3" "noreplace" + set_ventoy_hook_finish +else + vtlog "##### INOTIFYD: $2/$3 is created (NO) ..." +fi + +PATH=$VTPATH_OLD diff --git a/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-start.sh b/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-start.sh new file mode 100644 index 00000000..6375dc5e --- /dev/null +++ b/IMG/cpio/ventoy/loop/endless/ventoy-inotifyd-start.sh @@ -0,0 +1,31 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +. /ventoy/hook/ventoy-hook-lib.sh + +vtHook=$($CAT $VTOY_PATH/inotifyd-loop-script.txt) + +vtdisk=$(get_ventoy_disk_name) +if [ "$vtdisk" = "unknown" ]; then + vtlog "... start inotifyd listen $vtHook ..." + $BUSYBOX_PATH/nohup $VTOY_PATH/tool/inotifyd $vtHook /dev:n 2>&- & +else + vtlog "... $vtdisk already exist ..." + $BUSYBOX_PATH/sh $vtHook n /dev "${vtdisk#/dev/}2" +fi diff --git a/IMG/cpio/ventoy/ventoy.sh b/IMG/cpio/ventoy/ventoy_chain.sh similarity index 99% rename from IMG/cpio/ventoy/ventoy.sh rename to IMG/cpio/ventoy/ventoy_chain.sh index c1cc897e..2c52e60e 100644 --- a/IMG/cpio/ventoy/ventoy.sh +++ b/IMG/cpio/ventoy/ventoy_chain.sh @@ -136,6 +136,8 @@ ventoy_get_os_type() { echo 'suse'; return elif $GREP -q 'uruk' /etc/os-release; then echo 'debian'; return + elif $GREP -q 'Solus' /etc/os-release; then + echo 'rhel7'; return fi fi diff --git a/IMG/cpio/ventoy/ventoy_loop.sh b/IMG/cpio/ventoy/ventoy_loop.sh new file mode 100644 index 00000000..6171adfe --- /dev/null +++ b/IMG/cpio/ventoy/ventoy_loop.sh @@ -0,0 +1,116 @@ +#!/ventoy/busybox/sh +#************************************************************************************ +# Copyright (c) 2020, longpanda +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . +# +#************************************************************************************ + +#################################################################### +# # +# Step 1 : Parse kernel parameter # +# # +#################################################################### +if ! [ -e /proc ]; then + $BUSYBOX_PATH/mkdir /proc + rmproc='Y' +fi +$BUSYBOX_PATH/mount -t proc proc /proc + +# vtinit=xxx to replace rdinit=xxx +vtcmdline=$($CAT /proc/cmdline) +for i in $vtcmdline; do + if echo $i | $GREP -q vtinit; then + user_rdinit=${i#vtinit=} + echo "user set user_rdinit=${user_rdinit}" >>$VTLOG + fi +done + + +#################################################################### +# # +# Step 2 : Do OS specific hook # +# # +#################################################################### +ventoy_get_os_type() { + echo "kernel version" >> $VTLOG + $CAT /proc/version >> $VTLOG + + # deepin-live + if $GREP -q 'deepin' /proc/version; then + echo 'deepin'; return + fi + + if $GREP -q 'endless' /proc/version; then + echo 'endless'; return + fi + + echo "default" +} + +VTOS=$(ventoy_get_os_type) +echo "OS=###${VTOS}###" >>$VTLOG +if [ -e "$VTOY_PATH/loop/$VTOS/ventoy-hook.sh" ]; then + $BUSYBOX_PATH/sh "$VTOY_PATH/loop/$VTOS/ventoy-hook.sh" +fi + + +#################################################################### +# # +# Step 3 : Check for debug break # +# # +#################################################################### +if [ "$VTOY_BREAK_LEVEL" = "03" ] || [ "$VTOY_BREAK_LEVEL" = "13" ]; then + $SLEEP 5 + echo -e "\n\n\033[32m ################################################# \033[0m" + echo -e "\033[32m ################ VENTOY DEBUG ################### \033[0m" + echo -e "\033[32m ################################################# \033[0m \n" + if [ "$VTOY_BREAK_LEVEL" = "13" ]; then + $CAT $VTOY_PATH/log + fi + exec $BUSYBOX_PATH/sh +fi + + +#################################################################### +# # +# Step 3 : Hand over to real init # +# # +#################################################################### +$BUSYBOX_PATH/umount /proc +if [ "$rmproc" = "Y" ]; then + $BUSYBOX_PATH/rm -rf /proc +fi + +cd / + +unset VTLOG FIND GREP EGREP CAT AWK SED SLEEP HEAD + +for vtinit in $user_rdinit /sbin/init /init /linuxrc; do + if [ -d /ventoy_rdroot ]; then + if [ -e "/ventoy_rdroot$vtinit" ]; then + # switch_root will check /init file, this is a cheat code + echo 'switch_root' > /init + exec $BUSYBOX_PATH/switch_root /ventoy_rdroot "$vtinit" + fi + else + if [ -e "$vtinit" ];then + exec "$vtinit" + fi + fi +done + +# Should never reach here +echo -e "\n\n\033[31m ############ INIT NOT FOUND ############### \033[0m \n" +exec $BUSYBOX_PATH/sh diff --git a/IMG/mkcpio.sh b/IMG/mkcpio.sh index c288ed94..301d7cca 100644 --- a/IMG/mkcpio.sh +++ b/IMG/mkcpio.sh @@ -28,7 +28,8 @@ find ./tool | cpio -o -H newc>tool.cpio xz tool.cpio rm -rf tool -xz ventoy.sh +xz ventoy_chain.sh +xz ventoy_loop.sh find ./hook | cpio -o -H newc>hook.cpio xz hook.cpio diff --git a/INSTALL/CreatePersistentImg.sh b/INSTALL/CreatePersistentImg.sh index 83f1e7e1..2e16ca51 100644 --- a/INSTALL/CreatePersistentImg.sh +++ b/INSTALL/CreatePersistentImg.sh @@ -62,12 +62,12 @@ else fi # 00->ff avoid sparse file -dd if=/dev/zero bs=1M count=$size | tr '\000' '\377' > persistence.img +dd if=/dev/zero bs=1M count=$size | tr '\000' '\377' > persistence.dat sync freeloop=$(losetup -f) -losetup $freeloop persistence.img +losetup $freeloop persistence.dat mkfs -t $fstype $fsopt -L $label $freeloop diff --git a/INSTALL/EFI/BOOT/grubx64_real.efi b/INSTALL/EFI/BOOT/grubx64_real.efi index b653327403e6504b08629d627fde8f2c5c6e7689..eb7a847189b08fabddf84cadd0d7cd1e263d3460 100644 GIT binary patch delta 135202 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 delta 124157 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 literal 0 HcmV?d00001 diff --git a/INSTALL/grub/i386-pc/command.lst b/INSTALL/grub/i386-pc/command.lst index 774f3c5e..832cd8a7 100644 --- a/INSTALL/grub/i386-pc/command.lst +++ b/INSTALL/grub/i386-pc/command.lst @@ -1,6 +1,8 @@ *acpi: acpi *all_functional_test: functional_test *background_image: gfxterm_background +*bls_import: blscfg +*blscfg: blscfg *cat: cat *cpuid: cpuid *crc: hashsum @@ -106,6 +108,7 @@ help: minicmd hexdump_random: random initrd16: linux16 initrd: linux +initrdefi: linux keymap: keylayouts kfreebsd_loadenv: bsd kfreebsd_module: bsd @@ -122,6 +125,7 @@ legacy_password: legacycfg legacy_source: legacycfg linux16: linux16 linux: linux +linuxefi: linux list_trusted: pgp loadfont: font lsapm: lsapm @@ -184,6 +188,8 @@ vbeinfo: videoinfo vbetest: videotest videoinfo: videoinfo videotest: videotest +vt_set_boot_opt: linux +vt_unset_boot_opt: linux write_byte: memrw write_dword: memrw write_word: memrw diff --git a/INSTALL/grub/i386-pc/core.img b/INSTALL/grub/i386-pc/core.img index 7232ad16d3752f46c9fdb716cbe8fc61f2a551a0..27043b12ee37bd598a784b0f2a8eea258347b0f5 100644 GIT binary patch delta 314900 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úz1^Q+h%^SN|cig%(dK-&Q+BG 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 delta 312425 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

k*#d&ect~+r+nqx zVQ%a@S0g~@c-P#>`>&?AJl4=X-G41Bvh3Xc)U@pKoM-h5!%iDLQaNa&>zN_-T-=Vs z>qG1ICuKQtIlr6_hJN{0WcPYn+!e9(^!dlOvYQ{>Zp5PyEz>Tzq2gxvT=#&9a)F29 z>MZTw=$8aH7-&R>a4Lto$ z)2=V4s`5cux45Tqy;a#`54pH`%=(^f&3~EsF4+H8%#2j{`0Jroxj8#;oS?b&*+Y(f z=VS%_mbqS9H$%3eetBq5d3LR8>tBOAUd@7QUpN=~aUT$_pZw+B?TIaVN7npu{-F0b z@$%!Q1F!AB_!*0)8227pU#080Z(i**%Qqhr_e`4d_vx|Mcla)CJo~6#d$r$-KW9Z> z-xmM)^o@40(~1Lp&$KUW{k>nUB&6h8uqXTPNZZ|EFKj-|`(ASP=-analfIs`IV{q_ z`uzmgto)tvZu{MnVs%0VOk$tCn9=aFl6h_gr}sd4tw;h=`TYT+r6G9kQyzQV0FxSYV*cqVr2 zIBCN>IkGZ==X=Jbh-2aYYwt<<)IE-jntV5RN5k7sd0w>{jeFvYL!Pc*@02p_(TK}9eTJrqVpVZT=|7Fhg?P038RH^E1aWrmE0|B2)59*-;~mARZgIdG>1Tyv6| zyQu$Rsm|%JV1K0(?z#VUg%7@4#FKKa;b7Tn`HFX|SL;-1e!PCfe5cu+gv-j4&5R#w z?);z7cTSdRR!`)ulY6%Z9NAf{_HvELYzK#FYb6iVe=JMtxKkGBptkOI1riuQ~)?1M(b`e~O1-X6fPwgv@zxcwn#z=9$&3?=8mV1PwDXx)*8!`Us4>6k`I}kx9gMaEA1%pQ+j*nDfjpG>W0)*3BT9NI~En*6p>YAUbsnY z&EqHfpTcsUt*LLExnpaAdD3qSx3+)NyH8$rZR1)xRqXq>OwGR=FNYedSsnaaUSs3i zylu5KZ@%*lHm;yxU5BjnN858W|4h%CIxop0S3YGz_q)RZ0;XF(DXhu7Y4c|WlcR*k z`C0u%jB~GT6UcV{EPv&kY5<>kz*3hdJA!uFN1aO2`MY!Z^*b?J>p53_uXT8+;2XUl zl4H)%Q=+R5nAfL^g)9!f^7+k7s9z zpVpQKCSG(9 z?6bJ`NklsRvuA?pG{+|v=JRadewNCAbv^d8Y`w2Vkp8``7M=EiMQ`F`-Yo5zT5+f` z;zxn0eyaJgsIWYfKfGH%v)r@&epLENYP&^!@ysViIx3&t?_TY@I5YIhl^Pj8#$wIW zQstEbwS~Jg8@FwgS-I#s*QFKD1dkXhL@m5vr`xpGX>zU;@$`oZ^ZyJ z^L;_eY40NH)o*;;e0LZ3y$yOfmnQ3*tiUHl)vh#Q@xipjSko=58vA8V}PS(HaYW@rN=JH>?qgZVhKyD*c6=>@}WtC@v+6xt@U!1dDoki zqnMpjX#?%<{19FcRWviQk%?!t1@R=!&r^(ocX_; z!{u$&hu1-qE*{==jPu0l>~n-0Z*SVwKpqXKdRmV)8k_ME#`1Ub6~;;5kc`%hYOjulGA- z5|{5;A3itgmtWe3sxLDZiDftxG}SKbeWrG;%w7KGvaE|+�dF+R$@bs@fsq7U!AF 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 z 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 z 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

tU0qXY##=0TDAApOcnj#Q&?Ol z)xS!}+~B?BOWC@8wlh8`Jd#-H{@z%huXrOn=ZOnH*KO9=)Gb*d#&D$AvD#x#!DObn zx{lMBorNR|WltQ|o07h~bfub-*c(sNh+Au`Hcei}F`0YinYw2i>i69I_^Yt?m?nGr z6ZM`&vlXXuC{6y6ux;kN&LS`W*=J9!tKVU|;i;HSJ@0m%r~@}4u&HoW5_G82GwJPTCKCWeZV_H{c zHT%YNuB}Nw8%@`4YGJ*jfBQr!!-82sU!JXeJ9}Q+H+PP+La}!oW~^13*wAo#tAF{7|2hGdiROn_NujBvEJIuO)TSK$dyHj*Oghi6cYIa` z0lU>RoDU?th&ZuH#%5bh32*Aw+4p(sUj@p0JX`kd|26Ne%W~s7o;M0jV~X@X`Ha)| z?!k@W2lh`-5^J2g-~eaz@oNS_c&VG2!|&8O{|~YO51)(X6@9#4zbEd` z<+{`Liw|GzblYIyQ}b+%73Z(5{sA-JAL8Uot__K+dvmStWIo@oFge$B;rtoP4;hyU z@tD@H-`tqm9{)Jo{EUF-WZ!3T_Yb%Q2t1pmCvoj>w|u{Pn9u&uhqWaJ5pr26X7d%V zo5w4h7Fl=REZinhyOrDI&$`Di84cbpGtZp2?~|O}_DHd;=xzTwSNr``h?TR^)XdKc zyrCXb(NGh#`2OY#Cr;j#?_H84KEr$TzIw53$=(@w)}tj*UDeBqD)QOAdi}bzFa1l~EP6XrYvJ>($M&h$g)HtGrheDAk8byO(N~^p865NXNl(4KWtO8V@40@R z*4wo^T+$v|>&;2z*}Qo2N}IRUO&jhdJeg}bpW#H^T* z{eYeEj+-BHLXstp<@(oi7O$3G z+c1SKVtTS`Mlh>vqK-~P$SU!BdLkheN6eb0JLz9P*v8v7Z*uIs%TwBoLoQ}KS5MUq zW4w5C(e3U;ai8B$BR_S#x8a`T{-uABK*-j9Cx^;!+nCt{^gcgrUf`MY@3a-S-j0p+ z?C}%#pZRk)<@TDZPK(})Ps|IcZ4r-rWLop(sdMLIel_`@t5!ByrS0VrI9c6%u)EFt z`l`<+_cpf*ow8?%5}9@2zWTPTr_GCQSUAtrUmVcIA8a3S+HCzy@rhp-c{d)r6tdOt zvPb*JfBpRIqUBZ>B$tLt**}%3V-6|GJHMxP^`Uy^p9_AnOmyG0AMxx1@Y{w)qtB%zFlN2*H(`bsI_DtnSn77t=4$zv|g|_@?rO@{MM5 zH)+K>pLFioot?nv_tQqxNV;v+&HM}hZ!KLGHg9V6U38`fCN-mr0@=cSXo?OoPfmgLYcSp3xd&D>A(cjtuMyl*Fdx-O*t zP3>vVm;Vn6emgwRV>5H$-r%lu2Oh6kmi$+OoC8+v*gB=_(q6g6c8xaND*5&s!nJMv zpHNabYD&wkTbI@zJm9-y z)giuhDX-1yPZ}SVKC(EQxu1`za@JFU&4Ho(S?e;LG`89u(oIUJJM*djRpvh>Nf9gK z-=aHnoF!M=$ljkVHfN!k^hcks*?zX`9=hcn@vP;|w4L`&;Ar99vZMV!4KKX*t)Ksd z?MABh-Df-5ZpTe~(R+B0MtuVli)ifRSx&toE0*rCKJ$HFu2{Y5<`>H}P4_Rqs&_Ey zit#1g+Ajr>KYiErPg>^B6sb^sblZfWWecZ@f0keDe)Yv+z6UHSjfI{+UvE&HbRji2 zOh5F|sR|jXeH8}_vl^Bh`dfVANzsjar+H?kr~P-B{`g3FOVHMpx z{ur;XvNJR9ZDp#>)QSb}I`wk{SyulmQ1rQ_-x{)Kk#ps~Qig?lE46r^bV$$lZb{+{ zRMffn{2D{S;m2!(9xVE1VRZA+Dz?zR^nSoRN=Y|AJR{P}@#poH!MhAOk=$|~Gw9s?@qhF;V7VLt@1e|-ae}B@b*OBy< zSFA64JZa{?blmOU*d#rIo$c0 zXB@VyWTHyDugqR1l?z!NlZ_P_ofHgxyZh?(=E!!4>+qTCuQ+A&^vm4^$2NVvYON%- zgkf!)pTObs?(>exz1?s9oo(XVI;)V}kl#%06ZWvpQvJZxJ?Gb-g}Sa^3^( zv^!8})wjxg>+@S$)Ryl&r7gts@4%b0N1TrzdAi)wLtE|DA8oVi>w~|EIS5w&y63Ml ztu|xD665+gjV-Y!*H!zTw|=-;Y+7qnsBhj%=H~Dnb-8-0+S@8G`Rs^acipRS!qWVJ ztz|8RhbJTmiU9)7AxApG+*ho!n1z{%GU(a z99Ay6?=IGIOM}B8VC!uK$$zE=v59I|)_iB@RM}d#x%!rgjPvD7g>Nid5AE&Zb-liK zf|k}!5jDvvUY|?ta(C6AePOFux+ijl>Es_>34f+a{+ZeYzRvNvGWST#qq^gr;j%YP-GpzP`2FMm zm48dyCWeVx3*J;_=!w^0R&;psQ(&d!|AiGN?fP0;k35}ld((}d5%xD$Z8E5T?6a(F z-Gm2>^^X(0{sga-O0S>EB)vzGdkr_2M2upHN7$sq4bx2TG)!o|{*Y&u`J12fAN6i{ zKYhu3i6(wM3mwmM=Pu~%uWaA;%-~4i)H7#8SdaLcUG=fdwc5SYX3>}90$wv;-sT9r z``?(cqRRS1=KMpaICmJOe>rN_%D!>W0-pMM!`-vO+P53Zi&Tm{UnH~bN`}OZ%-P$D zL?7;%F6VyS^MgjSt9V5I3*kG$qNns$)q7QMnX|-mUP5&0jcHG|xBc^&>$P%fo5W@j zy@%VTy}h?u?aaDQny1=dh)bFu^S@9V$|OGq46hdb9 zEV&bxRsX1n(Qs$+SJzIpg7^2Ae%-J2cKgpM2afgsSdnCTwe0!aH|8&h{td}kMo;6MKzBgOCgUlIY zU4j1a-WhqXZ=0;D@GD;CvFGl=z}rinZBfp<@_<42kF>{J(_J%)GqYa_G#+LPe0}BP z{?a!;|Aor0RTtFO3X}gg;fFW#%gl=^ZxSx)2~Ouw7F{;!{0%v4K|di;$>}c9U)}r< zGx+r`emTJ|eb$6NM$3!!de*{T7rI!!2kq!D5&p<9Ma zsJ~03<@baao9F*r@oMt(S9g!Mbp;x)%@S~_J0PdqJ)9Ew3kRNk=NK?+m!@RKPb={=^~m^mq38%eq}HxDth*IBI`NZM*YvpVY?J z>N6%-tE=-JJQn2ZzD1_)*B{M|H@Ac^^eI$3USPX6CyeLqS-wTWhv(hPJwLmdnX|n8 z@D5Rvmmio*3L8~ZLq9Be`~9HFQ|U(q4fV!5{%7$nDqX`qAyeXS+qRFoUsWAWa&wga zmRJ@rEoi&zhML=%Gj6+NPoDIe^HtZuFTYMU&c5gneKCrAv6{qJ#g3_#`}S<$?s<~` zrT5F_7YD17YW*JZ6rS0qpS3RVof*IJ3-%T3DlUf2z5T~($N86zWum*U%$-}lDD~}@ zXsv@61?r1tC&r5Dy=!q)p3Zm0DEH2~n^xnX* z=tkt4xQkc1@|X)=Z*FJZ{6jb|z+pePdFc9(dCxv?wqCN)uPZ)gzS^O`Su+y8lvMu+ zmG&vV_9;xyS%FdU zZhBvlv%hiU+PU*SHZM=gdrtnv^LASPjSIWDA9?KzKAgt!=ifBu**fuNbBov9w!Qgy zb9J@jnYq;+N|En(-!+JhH|YQIyyAo7CD#yvu#!hl)WR12;+yHRr#mJu{>Q_|6_-3$ zmt1v~`cQbT>e_6RD%PjL_0ID@t+ox@q~-N&qEl|4-s0VXw@cAeMf>roVC=W_kAbCtOH-F?Z6H*ndc$S5q0pY#2a+1=D9&Vg$6iq}4! zxYt*3-2IW?>tNfWLWY^P0cA!XliU~^!ZzO&sGXgmc}wWw>;AvS9iN-FS)O&^nmxZU zbl(Bb#+R?{H!PobKY4C?R_pXgo0+|z9RALJHh=3|P2Sv~I4u{s`NiRH`?)pmd7e-Z zS{%E4?Yv2cZ>MNJXI-Hke&o}%g%X?J$$zgutNOdpxZovQ#PpO-0rjUs!T)z<8NaV# z&bKIBP`=AkhP!U<2b1pegzWb07w_WNA4R8N1KSKUp_*3t_^!?4t zDZjrzSXaM+U2E!TJ@JVW&qI`?_g#7xG_!JQpA=KXy`730|L1kAbnF+kpYABYbmc?X z+4F6?-i5#Y&3o*j;kj!pA`ADtlzH|&-SY1Chix@iJ`^nIsGGXkMepl@sO2ZuYCUN9 zChDSo{tt80??nm@38B+^S9#kx9@=I5{)x72Dm3=2)=+!G;fBoV9UzzWz+&33| zIV3!@#|{52j%|kPMNi>_eHBVKVizp`P=CS4Y8$JVnUh`E z&iW*Ot#>Ttlk_(V{5n^k)AXMCp3G76oa`#+G<&-xXOeC&>g}ow75?vQv^LLurL=Cf zZ-kNE#di(@((SDbi>ExSf1R_etLEUD|1PY$1)uId7K;crp8E2v3rFF{jLGxv?bk7$ zUa-_ZWc`LuKGSSUXP?sDbHa0OB70WOrawkcAKPj!efaF}FZ&m#x!E3bF)o}~7{0GD zX>UNUPD+)3W}2(_j@iN*2M%0jVzJBWYH6ss-rgf{`}V_zjnDG_l>WFocX4HXfNl70 zlih2i)fP+7SS{=65_Tg^$TG@7bIC5H?K{%XJl*?Qap~iIT-*z@{`!0NTxBXqG5xRC zKmE%x-Gj;t6gOR-wcwPEDqq3*j7k}cjo(T;*o}Fct}s7+Y2hEyZD}<@?!`gb@5cM` zg16te)VY>Zd+A2ky-N*dEWZ8Y^Ov~oi{93MS(D4YKP_X^^BwowH{P7Q=;Msqv)=Cox@~ecVE%f&w>$janEw@;c3`Q^0?AE#Lo+-+c3*MT zIb;~HHuJN`IyZ&{4dnw*qD$7w|MlRi5Rc#O{Zgsf_1DC`zskz)&(83O z*#D;a1ji3?xgBz=l=zhvG1lq$DP`A0Jp2+>Df27j@^5LIdOoYa6XpM|(ORc4+u+>O z_E-L%lEy6>SN7L`dHCUr-YEyEloXNPGwPO6uI`QOsoD}o%dcJ+{&JS7Wkd3#xXn%$ z^C!O*@=_{bIreYOgA<31)ZS0<5V*=5@bK8Nt3OYCGquUDsSg%Q)J@yZz3@?zKWnXq z;@TL+1}Kyu&F>WQ?0t1T;>FX4DY1>)GD6ubH=hV)eAdp*f4%j2@dvrX;m#_xe$4*!Zhbmr zFk|m&r2}baIGR`Xr1b9Ge=q(1?3jY6B|l3#o?YA$;x1=!kJ;g1-;)1!hV>iE&4hP* z7jk#yM=s#dUJ~Y3^YlB1fJXpt*4NA7lh0nBGN<8V`L$aciZ1Ir<+1$#QzxwTZK{?@ zly^1z&4bGY-<9adALL!Fn{|I<>fu^es#|D@98VfZ|D(95czY`|CYc0-*(+SMN_{$W7@F(*-5u)k(}OTuSGb1 z+R7a{{lUSs<}HVyq~)!O=W0t1?tE?9ds(FX^@O$0#Izfat!}}&KeX)1peM6xoi|+D$Ha=|hnZ5e?QN=s4mN&PX%C_vBuh5a5k>vCD z+|748z0?&9HY|GoyQp>Njqh!Ne@gBJ8~S{Bnz-nNFS|g!LxCsz57#TR9h@CR+-@X) z*;=D?IXS8~@qfE2$JP(-e74>GN6Sua+IQ^ndNWy8DfcV3>k6dWb$nZ+#h8U$H-4Dt zvDE&}?ECNDoYM5aRaN`^;yK%dH3gEaD}5BE$?x~qxcgAKagMY{%|*wh4(l57i%ewa0dw`Ev`U zcUJ#>uG{)8GZ5`k`jU05y3~l_;P=RF@qhEq?Jn5zTCTb7_(aJSyF5&vJYI6-r?dP| zzYC?$HmWk7S$MYGhxhqAcE?usbvGE+e0$-!{;B|0R||5SIGWvZq$p^@LcwG08@92tR62V~1ZK_t@~q@@ z+zr-)XJtZMlgcIabS}#)?eSmv@@`jq&{yl-g2!au2&zoJF8TV_u}{iUzPm=%>P1k_ z^X=)^S6+TLW5uGTjDOV&mI_ElyIqywxSGK^t^AqRj|mNnU3SMmZNJ2&CugNz5P9>; zV%LxLPPdNBgakF7-hEW+v|z%o#I+xvgnrz0>Poyt^8371PwroQRhE_T&tnOv$b0WY zi_Sj$&ueo>;=YuM)Ss)my9j9r7iW< z=H-6$Y~h_do91r#|2j~A>#WY7_q_doci5S5N38MG2_jS`# zI_Ez;^ray=_us@)fj>+7K0KXM?YVVgyjfPtyASWa^RG0VnOS9#_(8Jk*Ly?Nj%5oL zT;BP|@#KyoPhGqIRQ|>jTr)pr@qK&RUwS9DQ(~*sgv;Ge-xaTWQsn0KbjLowzXg|; z>=GB}(O`>zkT0pwZB#G$=CbaIZ4DL^zVwCN*uvS*V%li^ODSiH_Vkg zcseCf)qcIP>y~KcKDGl7jI+8d%}?#ft={pgBlhmz-FC9Gqh2&N1}|oCsqd@s|Ks>~ zQOFF_+&B&oe*OO5gQrA7dF?IUe!Srrc0#v)j(+T!nt*ik1wYmZ7$}592nw*gZ0kw; z^Hh(oRYz9G;9Z8Ti5+Y4yj8s`f7MUFnyKKfzen75w(=SCH8Ja{TW0A*x9#ZFF8`(TYIES*f3IYp{JdK~wOVwRQ`g$7#nCf@q>nl| z=5~D$eC&Ak%)ZA=zH%F?dFFji%dUGHv-?qH`+_o|#fHCJkEez8F$J)GxFB_)=fv*b z`l(-c+aBB~d~`w6KC|m}XP#tF+ZU%2^&{YBk?XCJq{??M6qnh{?`J=v^vbqt`6Nxn zjaKgVi+QG-Y8Re;w0>52;rSiL$&Z=UY+M50F4Zvo9=}^T@;9f}gqkCc8RoYpF8#We zH`i%Vm-#Kub@fga{rT0JQCo!9zGj&cf3j;cV~9k()3FBuKX%1j@(JReHUIP3`7<3Z zNSy8dB{x|r+xztTkiJQZVx3cRMe}BzxtCybdZi=F)tMRkrDtyRMuk)gbXD2z;?U!3 zR9P(8`=ZYABd@q2U&oOZ;ZKs9*YOlS=t@5m64tTeo$jPy+um1^a-~Un7bWM{3Y@!R zl2CI|YG%S6<$6O07v_-OW}f~q|GqO?&3&z3OgsvU=!rBmAG8~`25A+2kxt%>q^f(@~o)-M)8pzt%qAhe|A(( z*HhuWzvlSm;{CdzRfi&0-H@*rnb?1H@ z_tgGdCtjS3>^XkNrkd&9e8Y*|!5f+#4s!l1*xmDM*{0)me9L$QO?Q8^ST1CupH%-- zr06Nj<0C=Z|2J>4;M=lXy7=$M+ZWD1DEhPQUYtkA?VooiZ#}YC(z@d0yA=YS@n26f z`sE$=%3xeCG0iLH`HfsjqwAA9JXRf0t~7txbNKXv)ws%om#ulVQQXOK z=aiRMKYy%#vF`l=R{jgmVzky*hew=FFkJoZR$sZtX8D~-UO#I^+h*%cs=8WKov)Pi z@wURjg<1z=>VF#~aU}_@^p8w!=+n_J;!d1!@p1GH`v)s5Ix<}uG|zfwE$lh_Pr>Df zy#Ap}du8uyE-CQcku>dfhcJ7=?tQOZ!d}?^TYKa3RIW|#6FPmPeOK*%Cvf799Y4#h zD22(Ayd3L15*QZNoLQ>d%Wzs(!1YV3bE4ssnNN>I>t`<)zg$({pY%fS$_$N{9J+Rn zjXE*&UL~4o#4rg)p0j@?*ciK~>}PO{y=EEOXYKb-U_#dI=lA?JM;%YzEIm;y zD$CXWi0m6#j;p(m{ygzBM*8*pghN*i=Lv1e+_XgA{5<32X)l^5r+q0+Ei_BeSY_** z%rK83!eYXP1+02;`x&}5zHWUa#cArtwrGN&&D$SU4DIIYFR^!Ki0rD7vrW^|t-l)^ zBNsn^+m4EjS5lrF7GYw0)V?TW*7XOx2QSP}xtp)@E5+B({3SUM52zuCgeWW!|mJhNR#ZI{&H zr`C}(Z9=x36Zjr7Q7@W9?YQEB$if}Xk{^H8%OqV<3Klw)q^mxAuj9wIS@Suw9C>HF zmJ#5vR??SwT>aj~#&U)`hgEmc-+6vN(r@bi6+G~&+yAV7dmUrMx-GYuPw=0K3M!ak z^g1Jdhlcw8?|NP(U%9R0FL~O1QLass@P2=CjsF}E;Y4|z)B`q;4jngXI(|+mJkqT1 z;aP)qz4a>HQOfNN)04wGQs>Cz9yP!8t+)7k`;LHwDn|d+mv6rEcyjY`2g8!Jk+J(e z&a=PVD7e1O^;7ray!M+9g&7k+>)tu>-bYeyVmR~e=+#BjJv?t6Qu^_w#O62itJami z&tIGHCL9yFHuJ>h|9mz#;*0-HJhhBk<#a$ za^;%2v5t{<`SeEuS(;%&BE?FdK6{5Ao;tfg?c%GFnSH;^(sgHt-}rJehI!$-jSrX> zURtR=UG45VDB*=L{cW@T#+-s^P_H2$1* zwu}#$5>yeo;C_?B)s*E%$G3R%pIYSA$Y{0XngrY1wd;)E#cmCL^X;W|@PnJFDt?je zHT87Whm@}U!>2wC~(AYRB{2ud_bxWso?4NOedwAgz-r0}pm3}Ta zyrsk{>7cUeU1)DFZ}WRKoo%iY|L%5O{d;1v&&N~WmbtAub@QwJ>&J^vFj;axo_XxmfUBv+Pq&b&h(IRYl{z@^*yueXnv~1wf!sk zFI0V)J^R~J*7=h*J~ujbGb1a?DEt4NePPq;w;eYx-&fdo>ZW^^o{ERLg|A4{u{WKk zX6#$%Cl)>@{jS=Ay0Wh=3^&--|77ti*WQUQnC-D_Z&FCu!ouUCOJv?@E;~9S_F?FA zrhr2JWIGXO;1fv4>rkQl9bLa zeD+f5&Bpq@pEdri*5@j)ubO>;q4kPn~-)?apGZpyVYJzvLe3J(IU!VMoiw zhf!unFP-Hp+PGt4tyJjt*H-gqq?-x5ENj{+nH~Ay(L}wOzuniz9dErfm*aw}uHmVx zt?#yEGTt`IiEeZ)ZQ%K2_+v%>dxpDNngYqLZ_6@1thnE_VnY4C`nYcUGi&_gI)bw@ zlD`#ASrKwhl;K|5Gl_tP>lGiG^&(xaeCp>E&DCoCI>RTiS20?t%42b!wc;(`$2#&X zyq(X`gWcw`C~z%wTOunowc&y711&YKpLOODrDu7Ze@K|$ z>-;?LOZ%#QAsZ_@EV?V|za~oMSvhn6p1}QjTiJ>ZJ&BW-btkQ=`J2q6dFPpV^2Mb` z$`j2>kFLqTw$LGgMK-XMVTXS>)twu|B;vZGk=ct*Sn`CJeDcEwaGa5BMZN| zMRI88t)sn{OJ7GXJha&=Vryu*;g_()(iFHif;8Y3_fXv z`pLg-`F0|Ba}zH^M%MO?*{fb{Uwt->Bl_|3=BA0A9Go7KyXI|JUC<(OMj+002IF3% zb@Qt}oI0<{GliRFerTijp5`gpi^uzV z*PbP9UbM-}=W_j?Be@eUIC7Y(Se13J8+PYXr@4gf-rY+WZcu9s(m#kIhq8GE}7GWH3lXbF_ha1OZW`g?uvAM4H0SI%9_VbQak#9zJR z2AgJpyUqP~jSg$AvlOoJ?b~V1vaH(c+m_Jt``ngDo~?hgH~NiUnaS0{3fB`iA|ID0 zrj)ckSTn24rla^z^#0W=p3IcIbR{R?_V#6Rc7GGwv$HQ%{y9JU#6^?z#>Xw*GeWv{ zN-L-Qs$1U9K6{?g%M%^G{CdKTGrP|B&ablA#(PAt)Z+^CfuLtQSLZ&HSP{-8yJEfh z>#ffFRlTdEVs5-Bs(-4qLFI-RyI5e!WrhCC3$N#Od}-v&*67YXc_A)M&iHj{^^FNj z_g=A_d;RwQ<=0*$FTYXV^x@eAUDNmHCuQD}Vb^Wm7(CbRPG-@@n}1q`6W7iuu#}(k z_pOF=vdhLC^h}(zwAmr&Ur6eFU4MNSf=On`eCv{y>h8(@}$Ka zk57DExw&aURDa*u{Y?TDlcPV$)O~UO@2`C3{qku>b;m>3Zcnx~|EA^E%4c8ZvLC4hI8cIdSJWsB_#J{RUBT8ngtBLY2(LM=dhlW*uuTTASNiAWW zs?6_Q9%~rx&RhSWZSlM*?{kbwa;DdNORSka(d+72#RdAe^TO8NnG{xcMk+G>>`cX< zoI>TZrgAexKi20w8dLD&rsb=YtmV-yE&GDLuiY2?%=+v>2SvW$zql_<%+^}I<+--% z)W&+{*s0Ul)2%%uze@6bGn~3bF8#n(#og{xx-K6&`px6AfyTDVDN?dmR>?nBVpQD! z@Ndf|-dlVBS?)PmR&%OZcaCC)VA=QQ-f2%>E#9yE?wPxhP5%k;@0)vjE}YvIfAZ>` zyzT#r1h;eYbbO9wbb5MlWAvO$|L1Httn({R<4)_ka+7*{O;yg#`^z-)J~3}Oo06Ha z%KAiyNWnbc6&c1(1t(ujD%q;%;XxJD!$&IQ{S}i~NhjmzPc1zb%+GWs+5weaMBAsa?XkUi(%i2>%P6 zP}Ljpye@Cu7Qc`U^_$p_{mEE+IqY3Ud17Bo$gd^mBQ`KSUvAR3tM6f*nzOCgIr*o1 zX4S2qP;>6ce3?V@Oky{1l$_mJ`Q%C{w}{hm$;8E5xBa>JY}%={9m!FKw>qqgcWUVi z>D35MP`R~sgFI6k_j zl{o4AW4;q=w>E4!|4meHt;<=KS#Ezqc#|y;-*%d^!@t6NMNGiluYWElJ8fzZE|Jh= z;7fnk{`%Ij1eOx3DLdbX9K9uVO#00Xsr&O>U705rJ>;J4=_xUDj^^vh{3#Z{lml}Q zG#J#EUElKWOZBtU>pB`P&Cfe&yMN!BpYlZw0dEd*sJLxeeSYIy<)p95&Oa82?mFZ6 z`M=Zo2U+YFb<8cco#(%DOQ6E};m$ASH68C|53n4}3W(hI>&*9=|MVtCGS+HkJ4S6^ z@xA-Y_W$g8k`s3|$1Joj)!}&gN4o5nIH%}($NM)5e;=*?|Ms=|>&T9-;CHV-zgywq z#q~;t`(|6->yz`IJ(%-D#6QgUbPNS zL2j1wi~Dsqm&S`l^G;>BmE8DvAJ_F%aXXXwfj@lCOg9IO#69K#OkwYo>Hv-&R!``dxe$z9|qsbT3n`jeWlVn zT?N7YzSo1~3OJN(9F8@!;!iGWBP7@Ep9PE+6#&o5BPpmrUQCt9Xl-9H}^F zyyV@R7@6%k3!?Q@y*G+YI@P{zo$dDorhRK;&RQ^ki&ng~HmjNWSiV8d?$G}3 zv+wT9So>6ao#p4`PW@{CylTa2JCn0_X2@TbDm49Z;DU88>yr5sK6_1i(&Z>9yO2*P zSCqR+_f2`>i*nJ2mN^IVPZA;lT!9P{*kvr3gDFyYfyU)rP@|&lBY;C$z*4*1D8&GxkeRj!pv6aCk8qo`x z{w;Gl{jlbn=eKu3OuGBL%wQ^VneSe{lewK*~i?=`7Rx7y0|vbsg6ZW_BI{Al+?YKw<;y*ou7h0eQqDqk@q|v zVh2hEB@Z&($i6rEIB)n$pEZ|W%}!+CZJ!^kw0MK2>)z_L|JQ_%NXJ%t6}@D2(0}p_()Xz%G;XC-eixDPN_Fe>c3`; zVk%rQQ6SItmhPUug=#9t%ntgs#&^}fm}TGkDeBpAdEb8m)tnP`|J^D4&GS#T>(b1* zRSNc3ZWn#6Nz~HYUI+%Y*dH|)JCn@z^&D-S&zm(RIW zquH|Vmz2SmrgsB(JThNscKycu9TGQfh3}MB@*Hp@lc+Gj;+R2kc4sH*4@TW)r)x`O+tB*Z?`*Y?k`t)%`*wN3&XXZwcJ!RJ>qJlYT? z;(C}%waG< z?X3H~=eNb|65gZNHYFFIQ#^g}XPb1+|4hEs`_@cx-Sp)0(dEmT?592V?v=YV&wJym z?P*GRjmwoJ+@-uPc$U?F-FxlNuY?ctn|~hF<6v+=D+Ul>zyh}+`KbHnR64~ zC|*j8v3LXCTepi5Qe+2cD7i)1KWxEb1XCjIFrGrnMbqqB45*I%eFc#u+k#)y~W zp8hX&&b&#-w$J@{(aq%Y%J?4|U&DB%r`b-HQ&6dz=X>Ia;=jK#W_(T#uj@CZ?c@2L zdv9;N$pZ=V=tH{ZvRpRH^->#y0%an%W|^+LdUgL6zF7_`R?A;>^8Yy696yy=HB5QS z1tEd^ch8FB{Us+btN^ao?;Z-mBpGBLlb#LVK zREzeg4su%?BQB(S*sose$uGu`uxW4PuFu}3&eNHE;!>u`%D`(y`MY^!UVY+Dg*#M!R|OuXf9ox=rQnR`N?_=n)M`sb9vuuQhkG(8_Wi4#BgQQ{30f z`Fy&dxnrHg<0^%B^DgDeD{_c=%kT?|Hfdk6WK!+9>+*E(?7-=pI-_q)vlWcBHhQR0 zx{hhWkAzf{`Er+zi1y8^JD|-xVMqDdJKW3nWH!H;bIT_A-LwGH1dD2`p8?!Ym|4%J zHS26#xxnqghLVQ*$x&x71o6y#a_{5S%-PFxtkNnK@&k2}^s4wD zw`Co>d#}KWuvALSxtiY6$9rdc&O`q1FS2e+ zs;vGVXWP}I9jeY^b942>yS8GpZo0tI`1FpHM{C;sCf74eJP@MuXYHkV zZhuU)pKL3L|D~F^t0Cost|+hkyxo4O^wukxo^~t`H~c%k z#O*__@&T*0Mwd@md{F+MpyB>Rpjg&-(O0K$KQ8yDPuu-MhN--1{|ipx^;}!D14E~1 z|B$|N=+;ZK2P#PoFHQ!gw^Dw8bs^D0;!Q=0~mS5`)Z!XLdycIBoEg&>CxH-?iFvfY+gFLeva`S&jdYgTH z@Kd8YEZ^`q2yAf9-`yADZ zOfn?q@%%sjYp&Ql+Z0`;71eS#OLPt`)LT%qFeZ!Vgz>(gk;hBRc|BX}j(Hk&mG53G z!2W{sx8)Vbo%IK&8Xr1ven%nivH2@LCEhIyywo@4N#k`r1^Kj>=L(EeULSqIS95Vk z?A5{_kJ)Wl zb?LKZ>PzN?Ub?1l@;7<$1GkT9GYXIY31O`&`u?h4i0xpg<}zQ88}-aBqE?st_e96{ zvFF-a>%9BGW4%d`Z+lpmqMj{ZWvrxjVL?;Kjuu;cw%O_0pUcBkLQ4+uM$CBsGHji_ z;qQ3E&zIgyERYT9vrOGm`toOG3h%}>r^6&}9$q|)+i7LrGsj~-iKd0Q!W)!-241v! zKXX;+(izLMA2%hpOt(}uIxbuU7f_xJZ0_Wc{kWTJ>>Uzob|_Q z#{Qi`F*{q@P1YLOcGs&<=9?uYE_iF{_lmXUJ12VmHo5V0T5y0(*q1Z^*DR1(G0Um` z!;I;Cx92UoAmw9s?w_pmN6QHndzE50D^LD+C-&a+c*ob%Oz(*+23sn$TFb9lI{9I} zW@k~}``Lo|IUbHl67Sot>rFO#_cfM%QbKqSk4e|;Cz@fC6j#1@AGq&f(=-3APhWz9Q)9IF*jFLV`oUKyVU}3y6abGrlKPi4dsLg(Z;fBFAg zM$IGHy7I5+*CVo3{MO;8l{c7udHD0f-0MxbIiCzKKA1VxSy2DjmWhi`+1~S<+&lfM z>mjWhM$fOj>#LX9QgnH4L0ERdx&QlAyFVS9(D1qPPT|fq`$P|Xt2E|*Q7Lu0@X_>% z_fOew2-vh+eSXiUOWpf7eyV+w6X{w0AZ4+2ZT!n6Yt5Ify`g^QQs;A%Khl0GVai+ZM@|Vde-)@OnS=J}aNPotl?cq4( z2j@f28#42EdoXElbTSGJ)GA8vD|XQ{nErqB0Yhz0_cc*G7yRuO%&yh2kC|gpeNM1i zp{PNy`0nMH3wv_cR?hw<*t2u%`ksdYs>-WxwPh_{5^8a=W6Qxhp?@5?Mt3Iyt zmHcJLRNr+t_20_8bV;R)$}b~6ORi~&v`IU$W1*pI_mwN*nP(+?WS^M+YAN1gsa1b> zz6MA7*?>gem!`kF{;WKurq18^+r8_|n|ZAp1cHzDO7^-xocJYw$9muE^`+cj6IcD} z-mkCJw)LOr{k~sUmMxu-q4oYjv_9@n@FbJ@vQDBFycS7H_;|Yf&T|`XM#{#Nyed z*Z=f=`d1qJOls;^k5x~<^KW&(;mCP*n_lEgo&qC-4=?JATaJGy=vW}UDtKQ{(7x%d zv+S4sZA=$4o91NA()8}xqfPVOo+PoPcrNvh@(hWwWV~N})^Y#({rA34zjCW&;m^CS zo7sK^db_o{)NfI4S8tDBT6g1Ie|uDNp1<;mmCn(-rcZNs+_IuV)JUwNRN@ z)~ht#Le7`zamh(@t$!}9G=2BeqUY)>_yey+$Q|5c8o(@Z z_MMtq$`n31*>&6kG8|SX|6Xmnwo7KR#>IH9UAARAo36iBdAFD)tJ?T%*48)kA8R}f ztG{xb|47>b#x2|GZ0A{o)_tgNzJKBbrs|4I zrbjF+(|vP5sq~SQt!>ELsVA0cDeak5vSrq);;KItbApA|E2$pT zH$(ULS+oCh7DnbDi8{OYO?RKp-;m-p!N)$&e5+tNYe(s&J=SxcxoMaPGOGNjj}MtTdN-Ef9kWDaPP9dVGfVxS%;Nbfqe(}t1NkI z^i5!c(9s`ff9LKxu)fOXVCGCkEqe*YlMMAa^XlV-7D&jb7TfmidL*z)ev{BrbIV#^ z4ds(fDKe7|8icx*%w2Qqw$i`beSX_{?mQJ+;-VLkS}VR|X82Bzt0`PfvQd5_lh{6I z9ou#6PC?DJ=p%ox@c5LyH=XkOw{of58PVBmU5lo&_^56-Nwmz{NHqv^_|v}dJ3;dSMXW%?i1Ygf8MuK6Mp?X@vB0A z;hm3aw#6dv1p|ExS-Hn+Y_Z1C4R)^}euD-kMk#04Q`|fOe znY{1EHhsz0)_N?yY!b@^M(G*s`ZD!D>O=NVtI2c>KDqqqi4(`KZTTZ0FVeuH^HWqk z`@B}|e)*u)VTYq^S76D?uBjP2pT2qdmFw`afDGM-JHDM!*en%fUmx@P z{mR2^?YkxicgS>pE?^Je=+typIhUn(mTc;cNdzwhyeV)4nZx8uRT|?u7fEnXC z$`{_6y}s7m!GGd3$IjaFxdDD|(FzmRE(%{gF<@Kh;rUN&ZixEVHYV$DpTRMA*QBeQ zdizD3Y%~SFxZif-$(;ORi_x=5;aBQ@2x@$bwC&2(Z|}1zxU$;xXNGVAYqRIl($@I; z^^0p(?W|up=aT-j=&Z}R2Y26zIsef{q-eUyl-@tW=d7<;Y!?VRR>es*V)?oV_&s{Zz`^Jlk zH<`;+Z{N+HFu%-YbNx!c2}hn4zuc#EghOai$_DkuHO=(_Z@jj@a$eA1uq^f4(x~P& zr~4luTEM(3Zou z?=pCtUtak}*1>d=f%PwlFz<%R4>OHsviAYEU?$dHAlNXN6V$+xx!n zCEZOLRsZl@kI?UAOv~MdtV_h<@`%ssD zyl+J0ti2lBuRd!tKE9Wm>D(`yE%VQMy7X{N(w|o;@^?ngrE_Ug%)#kSb26^X$vyM) z$}5l5JL_(HyUMSZd4BfWd@jWmQ`lVBM)Ytg>zL$TVtq2F_4yY8{h;cfp_BR27zKqA zIxkGB-@bcYhSA|=W|^zkEBu-urYrQ@c5;kW3ty%ZQ{%CczGtVpbno@ddNZf?=N`>u z<-1q`CCtU*Gah3EhXqqHW8r!h#8{kG~u=oAOXlcpFm{m%|VHkh3C%8lNkVXw0hr8IzLfwse-;`qSIY)?6}d zxp~~d`P5ytXU&=-;oUEq2FNpb@haII~K&vP`~*gN zKfk)GEvE_N<7q72?`2sSU)_~dSg+ZWm!p5`et$*Tm&T1@G6vnI^Z6|%g;)pPn;7`h z{IA-(1O5@q_uDXNzNdh6W0kJ{Gwuf&iiAIZ`)7pZ-E~LrV76_3{dF$ zvQ>NQ{tnsgTc)28J5j>xbT8CU_txqA2izEUPH^PedN)sS!h>mkA$!_q2{Bw&wQss; zciaD)Zcpa*?nBekCb&$UP-#?sA?~l%bM>lw2}%r$CbJvNS*yJFt>~`4XZ3x*0{?i{ z?z!Y{*(uv+HrKvv!+~ux6I#5M*x!D=^pujw?fqf@wj`gwdGTysVMu^c*MKlvf%<@1}=GD4M$L@P`s7q}5YPWCW&p@HahaBJeG%iZ9Imq$k z(q5%RRv}IA?W?cEGj$%F=lQ01o?mW4{k}_+`%Au-@LW&ke;ru($j zpR&E5h8=syE|(LTw02FD9@n?Rk0o4t4hg80z9>+*U{~nu(kb61Gi|n<%R7PQSL!+@ z^)q!Uwl=LjSkTPAce2b3#SjslI{A0WeUqKm?J{_vS%2QK{J_bc^yz0Ar|zrlkjc6F ztg~_s1EaH*!0RW>ceeC4U)q(s`K=%8v7Ecsclrw-w(+?fy}e;g#lf37{pt^1G;Dm> zr}bv-^tyMkf!496hwdNRW%uH1#{TB*EORRtv&@~~UVldU(Y1qo zbYXsk*}EOrKc!Z3)O$`?IFV^}K;)TT-IEi%_ujr4F`ejEBF+0rp z>8e?u-za@%qQjBZvK8@DKYrWl|8G--9#7JWTQimU7K`q^C9Dx{DnH}t*SLcxY&4(! z;wsOrHDTa5>3hPj|I-|SkL9_k_i`$aJx^OQdvDQf*LjIMe=@8;=Y7q`yg#|lt$)ey zv+qm(e!JlzqMZNXRkK0$!Iv|qMY5LFmkUguzEo~Wm8TR-kVL58p4Jm7&5k*3+$UEy z<*PdfIxOk8<1H-_{`^`cTJ)O9XBN&c-&6P&RL#g?Wyq1a>5)+(dvs^qmTTORrazW0 z*xC2=wPIlHpJxtV|4UtXaOJUEX3YP-w^QGhnQmi?{dpy3!CsbGD*SpX_dgt{Yd<*O zfUjQ1CM_)|eAY{Wt`ohP^SjeF-qPQCY-g>hZp6ll#j|1$DMw$K$nRJwH~c_AH>|b>H<&8+T>%I zRqZ$1X6Wi)sDAV%E6VCX;Ai%{WZ`NF>kqqw*i~=H)|XE{<)ZGp^^An^Z-J>N4_|t_to@rt#e`ld*Rrr_ZJ$+R6YO<2?_qIS#@l+zd-2w{rHdx@OU2|_Pkb8xqQ!?% z@%prqpvn@Fvokqc%)**AswpNhcjRU;F8Ma&a9aKPuC2%VQzoqG zE?)5cPK&_BVAm|>l`el`#MYcVJ5ftI<>kf5yNeEWOgPur+161Ox1iE>+QfS@_Y_6W z77 zqPMa~b{F~XRoT_L$MdD|;?yHn!SxGSPV+f2%$0N6x98;kNiUwhR5O2lCh41+VQJl> zmzJ%1%YJ=iXmGz57C-xo(dK23dec^OvE7x`&kQX+@RYmloZ%#GgT)G-(mHLD0V~_8 z=h~OeKHJdztS-NC>taR0d>OVEXEq-8kdd!EwfY4W5p0jHE42?ezPESpG$sR~l3zRLrcSaG**LX5NT$|s+s#8cyh_FGsRojE~H%j!~I5HjNzX#Gl14{HBu1@MA-#wai3` z(sRCPFW7m%^&}pjwCDe7=d8`fhlBUccl1k~Tju8E{5>zeuv_@U&QCW=#TQ##*|_AL z7O%`g4YAM1T+_bT+_LXkpqR&GvfC<_^YNGdOKWx{3K&kBZW(R$Gj8qdi3&%v#Z)?L zwIpwO3T<-2F^(ymRA8&}CD!4!G54Zj8W!ulG&iUx7-B~xyepPA^)5~i< zi!SzM%N?8G{C($w{pr`7wl6mb{pnUeX_hjh#y>Y!*{kKxk4)SYwsXC(pXAyF-e;z* z^u1DV6Xh`d;_S)GqUH8G&poSk?!k(Oo2OamTQomNXbh9RG2!&?+xfPE#crEowwy`| zQ2bXS_SLiJqD{3Udl#onqVEB-TZU%@-!nb@{`U4dS@lH2Oa0D0n^c+JE3a$~-}Cm6 z|G|3cdm7?)R~8*mIe5-6e(BZJ6YsVxQ86}LtYzJpp}3O8Em^g|O#XfQ#-^#kv;Duc zox8Thh5Ld@f7Xq4D;OF%cc0quh5eLg>@0^x#U<@OFWsEKrD^tEk^GY!`wqtMi-^{( zFyXjperWC1&p{EntDcogPbDJ#Vd?+N@3d&imbMCahdQ?CTwuUz0xGJM_P+ZI|UB_n#~H zM0Y%O(mc?T^?9bE_saNLsgIs>@@KlvsS{fFLFlj2qvdzPe;QTDZCT5xU9S^qUSA`2 zhx5kCw5wc9*DrY<{{1ER!AsUTFJvw%Z$Gg9z~hzwg?F)99?Lcm^ZYXVchcSK*-=UP zZ+<^tw5TjQTb#cw!RYj{W#`#vz0)rgbaZlK+;Yg&g6I0Ii>zGI?|NdM9dY|I_XMXx zDA%stW%mW6TXw|vE5`=B?a(*cxT$G+{q;+J;vX-pjAgUudpx;y>ERk#~d$w`)r(B*W6k6ip3vz9bCIP z`rxucBW;OP_wzpL+h&*ExV%8?KHv0Br@obYJ)FjA%WRy#ckazRmw5BCZCbXJG7|w`P8b{B)_*)I>h=w?e^+{32#0w#`eVHYZEnUOhEe>g(+q zK7XO>ZK1Vyj~S&h$CYodz1+F`VVmiB?)3X#rbP461R327sf$zIS{f3;p%7g0;SF{~GVbQfr({ZzLmg$mxI?Hp`GR9uG%&Pi$<*qd8 zN|hUir*h6ZZa(ewJHROTeCG^np41%44+m~3re~(7f6#cBY$nxpJGxZTF2^8e)|I(_ zx!Z)5-pIe)wl%-u<&Me&RyMqbUjpxhezBia+g(( zese?B*WT5QE__ga>B8GDntQGWPvUgZ*>!Q<89w({JFjHhRPU&b_`@2rHGcL>+t8+~ z`)4a!e0_MEXYr=vlB=>egfTaYOTB)pTl+CXf?+1_yHz*T<`*T}{rNU4{JVyT@u}4* z^QIhRTF(=_z<*QU%*0!XhHaOv&nMMCyY?wq_JZzyW3T_}T|e&SoROQlH*?Xlmo`tn zPhzfh6lnZ5FUsunzJ&|ekJTpgaTaF(KlJ6mBYC;#fYYUCq)w(aPS~J&Kh7gR=kS5o zvl?Gre3`O@W#O+y)rG-4>mMrCsy|?AHpy8hB^#RgO7pa5fwg~+)2Gi}4*N}P`;RZX z>tC<4!TlAtvDQki@Bh1tZ{E*&wZV~f*VQW1UrX9FjrL#c+3L48BmKjorLsa6->!j9V4th{*Di-k@dbQeN4N8ZT;da+b1Z! zd;U9f@%ia4sWH{==99iWTzy9W+VY+6<9PeUR;mWPufKF$frs&cSMY7yx4&=kUpx}; zcr~)QF#CV2fBxoof4N?zmV|Qsu9ta!@x95_kc)Tw7a6Y)Tqbp2<@)`7M;=B!V`pA( z;IUAcAL;_Jy>PZ_gf=bl)z{`T|9=|Y*UR$TU(=Dw_;usEj@ij?moCpq_(sD(4>V10ehR}_T}@<-1eR4fxVK2%oLS9+mx^Dy-}uI-}P~a{Lje! zzt`+P%~GLwRA;mP)XDivR@dfNoZ<}n(trAU-QSj&qNx8@)p$-md2{~w_Fw%I9Fxq? zep_ApO~$x0LWK3#!fR$7)!Td~Cw+YXLwx4VEqbc%i#=D%UDP?fb8hIt0^!Q0KMWk! z+VNMaD<`pET`MX0xAN>Kp|!`Vry6C~t6Tgka@_jti|gj*w_K~3df%LGNV)B75w5y- zZG~vQulkADM9Ji9iIx>ht&Y#Fe|CP=AH5xJa_k?UPj%hDG`KS<=;YC4{U_exW^oQK zrBh>XWG5!wW31-?@;1b>tERyv>ix7*>+hDg)hFo~a@1C|6fe=eSwNK~1 z_Q~A1?o}I^T_P{(@wmeLsvBEH%?{y3x>rvwO8;^B=xv^SKcVu3@<=1?ET0AU3Nq9} z_WC_7fARCUUZHfH)^+>9?e}!o=Ra1}2|MZcwD~eqTC19Ze#emB>B)ma}Afv zTl@;l7}Iac+?ZHcpSfCgFaMSbN4C2kPc*X1rAI7%a?UhLc&h9{=Z>P7xS({#y&C^J z%5C;u-jKn(Lf_3LS0h%}ri;^DH`hw>+H!B}|9d)qrL-M8T&`BEy0+I#YtpW57iS)~ z$=dCGDj>x>DyUN@Sm}A^xreMS>Y7HXb1buGPI_9wD`ID^x%z(Py86ClpQAn=SDAU6 z^(&Wy_%ej~INTr=63Kc|09(ba#FyC3y^a(cZ@ zWm&$Lo&CX|k4+7nmYuk&m@=VHn@uZqpHf5aw|_fpq~k(foS46<>-EMp=_f0{{RzDL zd+C0$=BLZ_{@-B!q`B_Vk$Jx2Ub=tV*E5<(2By7{`KvzrX`S`DpoM%|vl>5i^{?4# zQGbJ7z)+|!e(8&c)&+G5i!M6fec=@Rdddd|?J3?ozd1g#hiV6M-dN^&Av7c0L$x+z zzHEKs_mHSB^**zn-tsMy;C~=_PdzM zvKTuay`Q)K#$+s5q5Amey=fmepZ6{@w;I`dAKJKT{?`5N z)-#{%?^J0z5iImiWTuSedPQe{r*$`{?V7sp+pqnx5$CLqtbexnZaG(R<$fWyP^A}# z61X4s{%k*Ptq{Fg_J`f(V~jgb>6l%K%w3tB9(8l;xtdVn$>~{BbK4r1dAc_w<;$)1 zKA8FKRpb2MUk=nu$pwq%KL||jDC)oIzi9P2hZTnZA4wRScYR*eC*Btq{ASmQK%MFR zGdAs*A0T%%{x{2=J2&MnD$iY$>y~ord+_gFrvgkn7Dc}L_F&^48NS^CQES}a=P}By z-*IN;lH+sB@6@u~?_Kt3N7LTs$mm1w?@X6z`nCAz^yy#LJz-kCT4ZPa%u>;{YLaJ@ z+?c;RPXBiC(ABqB1G*;P_fQs}s>`tCUFn|s_Kh~KYW#aUMfdt0()kn+*FNjcTg4me z_+l4-Q9S-t?$qH2^>ynRMVlJml(IALczsJ>L(QJGz|zWp&B35a^DHi$-yHQtZKvU! zc?O-^T=>NKPiivA-8=ScF~5HJoy7W(&Hk?Mudz%sJ{GfS^TAgxx9<4N@xA-gce`_( zp09NDyZzHl{46g&HhmD-=Bht0;HjO6?c9~;y6>5vUVo$e4*UEaCT8!y+*$l_A$#{< z)*WejJ3E_s@8;Y%F~PoH=GwtqahCsQUO2>a<=MPjYB3xqM6*n{_;P7>@9h$O_RUwG z|8u=#skmI<<9!nUW}7s7+c?+x?|=Jl%Bxexdn;<f6sRsKUM>)xl0CC>9?1-OeoS;Spg5OyH5>~MA7@q-d;&R2X4@7c!kTEah` z<3PX8qLcPt4{p=gm~NtROKutayyI*y?+4oQ#If4UTdeBYHha2Gn9=+DS2P}TDRED) zy6Ix^^3 zre3mbo9n9NvO*xBq*G+8&2qK#j~mrm_1$M0%wO?dit~cEV%+IP%Y7Zw{+wf4VJe+9 zFIq=z)y%fF?pvFS&Mcn!D{WyGw_%mph6o)2#XHGoe{Fmnc>h=Mhqp4v#UBTUt&!TB z^sdWw$Eov={n~=K)tLBo7oXW+_NLx6$Di#$*zdEJriUNB@GP%;#jI&|d&~bX$Jky) zou0g_GF$WA<52t0fvmYvo`tEKnER*uwC~xJ6sdkqe_g-mev3#gv4xr44f6lv3{D=M z@rGTmSNp(o!%gCE>p0iH``Ufv|53MVk^Q?(O6`s*$S-xw&or^Q%{%?5zQ3?}n9oZ0 zdh1H7Pm}bg3vqqf)Ue6#CskRJsiyw%`YLq6E^FtoBrYk z#{DV>d_Ju@Jy)bLl8eQ@FsaO#e-mR}$y2xL8UF&3e0}fDJ!hoyH2&Z12{(mA?)|uL z6{Ya6=ty2x;qCglj|%_1-xu=IaT~Y1ZRbnnzS93J;+$#^OS(9ij=U;)C7`p|)@k`4 zu@leNh z&DAe+RVs|OZTcU0s>|@hgMDV@f!Cj|V9uAhu$?h~K~d{ZvCR`#wbjpJZA~hBW+{^S z{7BK6V`1AD-pE{9z%1YQ@S@rN!W;kR&h#k1TX6c>B$s5ipKD_`eJYV_TGm+^6IGLQ z^(n*3mvbCnF1M;XSj9EBc{=~0G$RY%Q_g?570H+v3?!}jwV^vilg)~|A#mgo_g-g|7x zexnjzkM!MJHXo8&xukZtQ0~O?P22CdTPu3*xy<7Hw=e9m@5k2l_p2>>8K2DKd$YAZ zMzUrLQ@^Mt|JD3oN58U6IJH@(c;aNiwk0JCIlT|LER3EZ_{&P*b^jw*-v5&nie_B0 z((tRlp3Cz8Q79Xy)a$JHlmE8M+I`7zlx;Q8nUb{a&Tkn`8&1uXvW<(cIAYF7QT@bW_s=gcY*XL5?%_w#Jd`<9O) zOM~a`+Y|gn)Fk+2cvnV7^{g-EMR(#I!(S)0D$aSrBXTeO*n>3<)A!V$&idDQaazm7 zriHJ2zeJpKmkYcg!jsOfq#Wnk{b3TKw{DOTe3k zvXkeE?k-#M%|k6m>UhKjP4BNCG%9W8#4=0l)ly3necfFUD#7$lE%Y+)=VhyO{#m{i ztW^5;@+|*jvDudmMdg0Kkk8P2ye}w#{mR(`8&=<~Id-MmkIhuIKIPi9>JO)uHCEiN zDXXz|_q(k!?aXIR4_?M+e;U7DoSS;?;Z8>;CAL#K6FxS-$ycw`Tb~v^ulJB&@1uw* z>(1FJmTi3UzOiJYt&F&P(TNQ#>woj6eCy>2OO|N3FYF{0e9I_& z(kl@+i^H?FJa#$SSnZSl^VaG5_Oxx9#_oRNE90{$Fe^VI_D*PZk8*6Ez%$dFuMyLx>}j*9nkN2S=;S1+$|Rr29?m~q6W=i?q9riBN)=WJah zHO;q}y@_MjscoWhAAUY|=w7nNP)CO|t9%Eyd5ETiPg;pyT`bEb*$g4cN z@RbBhl>Wi|Tp4k-M^T9j*6v`a*HF_7YW%f#4#V}S4V!9h^xaa`&6RaOo_w?U`~|(z z#~YP5ey%H7Q}p>*-I0Y)^EO@jxni~44CPp+FE>qgx&QNOuV1BSu*$`}*F;#Nb>5Sx ztG|p*`X;Kps%HMBv5NWAIY+boFVr^lD3vBgPdDb@C~|$CFNf*uGu1^i@5J(L;^}Xj z@MAWsrohX*&69n!uCfc2C$XWzdm5~5KyH+O=~ z>!r;t+v5K|6e{fe+$i(?q|{wr<6Vb@Pi|mozxuW8jqse0Q{HNARE{#4uM?#8Y+G7` zD_4O3uKd91Uc2SidoC69Dmn1z$`X+q<(@xWRD)+KigEL{akg!2V47{Hrd5B%*Sso+SWGf1Y^!t>15$IqB}Iu7A}cjvIMumakxB zc(Atj)NP&pc5AMxKWkg+5!fOr7Hq(y=_xmb*GKKP#Xgl2jD{!IuXU|#ICoW0=Wp^7 zzL%$inqKD}S@zf4-a*cHgFz?X;<@RCEqa_i3yxJ3yxjcH^jt%w*@N@EI(e&D&SJ>v^`^RRQYHM6~7XQyW`z7#F(wUl8 zd!DV^;zOS-ez|G#mJKbfuKU|9LJ!_ znjg6h-T0UCtnOKn(toesyZrC``d(J)8UOE(pewr_ml$LLjpE_eo z2~UdNfsQv}w~rZyWUy`cyMIq|!1FSP|LWzLvo92yzW;k*Rg}_n8->*pd*``!i3|Q( zvoCrM^SVzxr%ZNg^DF(_Ak?#7>*%LEM(>0jReDa=?-$S69+^JzyZLL|-BDH6yV5Sy zTP-{N;^)zp`_9^Sj~w1l&gcAm>r02okJg(q=2JFrN=sh5c*BW{HuqLkxLqs#A6)CJ z&}$eryZg(g{{3agx*b-ed}|Q>*(A03yV)zw#JzuJ-8j?Fbo)PN(f?dyEzZbf5xK)f zQ&&uWYo}Oj6CcxV|NWkSkkWQdN$LKB3`?EAzbdPLua#HRzB9t--p5mkSLb~^YgE^0 z>Ztp+!Zo|O-*NfV zZ~ePqtohJ-NQ=0H+?;1cegLocGdl_AuAHE)X3|X)IV>u6i8sa{FN;~^11bk z2OOfxtmW;GpSx~!ICu5!_FkV2BHJn+t}1QSIwYZPWw|m&>$zXA*6t&Z-U?ou=1|#u zx=(iTCAK4JE?e%f^6y=$b+y4H^K?#QxtY(5*RM+KrOrua)E&uYufKKd-m8zbziWlp zK7DfFP10SiQ!`&W1YeoQdEhkX(QRC5uelcO<$AH9kY#;~*lug@95$EzJHv9lub=(l zTVU3hHEZ|HeZkg(hkjo1+dchWeE+6S%WE$e?|?L8)@doedB*DR?z z7GII$+4t9dWAy1u4(a?AIt`wf)d zJdN)@eQDZtUxn%p)<)EJMyl8R zE(tIWjXiSs&GobD?HN38uBYFh$>6$lCda~K8b-qFQZ4K_IJ9*n+ePh zoEbC)vK7H48y%MH`uyLWc~PQ~l)x+gGEp}Ww zOxdH5Z6je){`#_Sw&kY0+2v(+{j-m(JlSyOMsktvp?c#&x!V(_AM%+b z^82*$EQw0zun$UsZj7gY?D#cl{*j1s{|#L3p%+$XUsc@@(JgBnSfj$~;xTdWfA0eA zc7r#3DdGOVckDJ7KI--{i*eKP2aao-+t=)ryfmNnYh&Z&9Q(dk&p)5tug|vp2V1H4 zZjZSumpICH7=Eg@>^sUA&9Ae(UQcn>-DkY9cEKB#7ey9{WJ*oCvfW-OWv_|e4cTRX z54-H1X6|99%E9cm5&@GQnxUaA2vUp>Q2m8weAkD{H zdiLp+?+mV=nXOtfe-HE0<)g{^zHO2#3GCEU_%} zvf_cL10kHI>%zUNxBbZ$D!!;W`+{b^7@Kz29d_lLc3+jWpH>`u99QIV<y2v%WZN z(r{a7DxBhYY}0bV%F>@tlr@qLuD!3bXx@Vt%Qn90oAfH;wNsQm(~i&z&Z|NeH9Xz# z_sO`*tjnqW=n~p8yXejLR5gB?v~~RAJ0@>b`glP}BxH?a+bo@*vrM!kW23y4tqLpz z|M}_NTi<{#mAjlWq0w z#Z6Y0Yqx5wd^<62$<}+iQA%vjx!)hZ{k4=I-YBy|!;umnv)a?6JIM8g>1#U)9`b!wm&-3wgE9cdwY|VU+Z>I=ahZ!!5J8 zb@!q-e11Dsx=H4Es*C?pzRy~_9or_<{5)PQG+*;jLYDZKn5_D#e(N{?YVO?kT&<|Q z>^euRro@(M4Defc}(vE=^yl0TT%2#7E> zt)6rF`J=p^T{kUPrElB!I`rY4sZ;yceinW#=PKaxYX5GxW!D+1E~N;lu)oakh?n^H zL%}WU**2^9^&v9vndGYXbT)Ww3!byrAYJL(fxUeE88*KT$D2hkEPF4%@T!mQ>-S2R zBQ7oU$~$(TVAo1V0|VKmP8NK>=JmR^EMDAqg;%)2Q}o^6cnP-q+~>{(bnSTZW6hK~ zEcXp7w)8dKUMu+{b#8l?`p1KFj{i9NX8GmMc@nyMJLGEqFEHL%FT1UKV)@KBp9`ZG z2TaW>NKJXz6Y}Zv`@C#Fm6y*2mX#OGzZ9DAv6bW3Y95`-W_l|kZk=-cUeefPZxJ8Q z@xboUMg_lUw_O{oTrB4AyYYZe?%juTYPYl$-yLXJ{(Rn*n-Y8EHRJAoKA*k%vDHQa z7ly3+EMk=t!|xo?h?i{_nE18+RyFeAFF7vm7S}~uYieV}tFm2dT4E?5UZ1%#?B5JSI@;ZinqPvdk zJ9VykTlBMhlEsHJier?lclUm2f?D=^{c**wA zb-bFp9^O93D9)P`-_zAIRnu+L%?S@)Z~6RMrfJ?RuRY(c^K%tc-nspDf(GNR=h9E^ zbfq+i@!#`!zIOUt@!gB>%Ws&WK9}L=w8Ph*h^>8Tl2q^7Q8V}X-=BihcpfrsXnVSD z%O>Lu&MSg->;DB;g#S(aof@~U|MmUd6O-iwx;*W5xs!G-dN1mrzU{oXX6~Kq3E9D( zIR zf6>_;^hK&Gh&M(zz#fjiOu~uJ8ZxI6nIG;mk{kdz%}kzpB^$FPvbL-!S38W{D~Hld?+R>^N{^!j0R}cbD9lci3e@ z?FXLgPlNavwtahgYflHy{M>|v6HfkIrx&nFb;XKyYvri=y9sTt>%$+$?mIW3blR0* zudktf=5Z50@}1RlpRqV6?nd0v>08$Eom;b_U-4$xch5adzH_(m9^29IKiW&<|M~hS zS9&HcT>s&f-J&p|_%;=}e)bFe5*LNmb{}Hc!nR>oQin%E)r9Qg$zNo{syAwGdH7mu zSGPb1U)w4B+F*;HGua&k+zNaiZF!Nf_GgB`+`ry(GfxV?ykPe1O`630`MMGJj_*lz zso#IOx07+T=K1PP3oCB!T2}Gz=H7dKAJ!^m#@8?G*>r5HM!w1C>9I05Z*1w$^HNb< zK1uh`<38`~G?pw^OMC0}oLlam;pLkgt@($?d&Qv@8^t*muaRM?P;H*Hq}jLJU)#}y z!Q%z%t0|79f3~bXzfI9{T1|&T|IgOH>IvtLI-geUtap5~YK1|RQ0nfReB;Jv|IXU4xR}srFd;0OV>{0VbCX32t@2bdqI4H0|MZhIx65%pWcP5^ z&8Fb4pA1@VExi96=daqiN5kk!m+8hIp*q$x-}A0+_;e!nVne;iq6AIG@OK~O5AIue zc|GgCppe-X4@8d2rtwHb8Jza$EM925Zx-*BN#d;A>UcG_rra?I_2!gWzG`}Dn9U#M zX^{)K?hA;VTfLZ(d)9%UjY}Ow?-(D{6IIn^h`hN$FGhWA*hv&JSeKhTg zXiE7V#nU#kRJVJJOx;xcu)gW^V^P=LN#U%^cIf0W@Y(J)o_+57;f=jO9xvdqj7yB1wQ)k->*oG_cKW>! zx{V(;=(V#Otymghy7=DLx`Qu1_W919eZ;$FQcT8s^QCsmUoX#KzC88xKaY){>zUjQ zdYJxhnVMf?Sz5i`^TI8`Q*q~`f2j#ilb!TS=C6Wd%iig=m-x+R79Q-Z<1^ZL;FG3_ z_qNWigvcz%0+j+D4g=|(+A2?X2;X{o(YEy}S3BeWm)qA*FJ})d=r@1B*rD;cTvPa# z^sJA|Z6v4gIWg|(Dyn~A5&tCo+LV0hm}T|H9voWV`{{BC>uUAYz2|Kb6JCB4$Sp3p z?HYAYbuaVzy+tLRH$2{$MxK4~t#Zj@-uHRNY8=@n_S-I}+z5JgXc2@zL353{bYoX^;OC5I`%G2{3tU1yF{?_a0?iQRkewb$8c%nSJ1?_S-I@+j)20>?|8JFZ{euwGN^ zC~AF~eMG>nr9QND{gU46lCG8xLP|51O;FOWH|6JKvHw;RvFG~}+q-4@4E0L;BaXJq z)@rkK@M<-+p9;71toHT2el_Q}Y=_&@j{iDmSE)*u3vS6VhSPg>#6 z_4LvmwgBd{T@C;JWi#y8EtU$;{Gr2}wEC+|#1qw<^R1spD4Z_&viv)b(L?T;&(`p2 zJ!zFZziRfY#%&93eh`mkT{b6Vwc`w?`Y*LPFD*S154Yy3&5pZ~zU%3${l1E)W--`a ztch|yn~?qd-L-g|8YRvd$=gr5ER>1hJKVm@rBrs)|HXS_lcsTR`Mt|qOEmH0S)ON` z@9&w?GWDj^x&6VS-RaDVPv89Sw-l1TEnE5lvB_%>5^Nla$h zj=IJ54;>=!f6uaP-*oGg=!W2f`SttNOZlvK7`U7>a?_g4x29P5#vSduufL~nx%%`{ z=<_@E`?j(FcJ5}Mtdw)BVTRar$>sA~cDA_hy}ZZbe3*nj^XJVl2yX~AenfKp##TgZM<(s4R_U29H9G}ZQm9Kr=d;Vd@ z3%}f!<&3xFzh=z%zh-^)rl~Cpe9kbhsd8{B*CPI!Db>3JVD zu1pa7P}9e~d)1Ele>)bPX3Pyvc@*+!6=#vG%+12Kb4GrelRBQ3zw+t3A6L(uvgcb# zO{0EdH|sOa74Bz45(P87Ub@}wc+BMRYeUt>BipWWrQMedDSQ*S?6W|g3eU1xwY#(? zP28Av?CH5h1{dFc3`&2?DSe+O?wP8(=;4!+uYWeZ;t<`H`hL;=p6mOWBXT+NzE-sH z{axVqfJLa4r|k9ohM?Osm)@+n?aKZmtNyvCmgm>teDyPZRrOP51^w(cb=Qzz9aqKL zFB`tE)cUTf#=W_M2`2)x3j{W&7c!d*s-I(e@yJ=@TiW!iFXs1a>@ApjFeppUU2nR9 z!Q>5h;}(0V^`}axs<%H@eHGba(Ob0On|Idt3mPlkPtUbG#B(&Axo)Y$#|2)~mha&C zo&LE#!XxIM%Krn6-ygqb;_fQlaMsnPan9C@En4LZ9JbjQ$|>G+p3^3G?ZHVg$#zy9 z<0BKY*VXlH{U5b1_PXM;T^!3I=Bei|IWM4Xte|8(-EGIQzF9_Y+w$s4g+9Mc|MS@O zYmrqK`^kvVE2r|4o|Ua^*MBE2e)g>j^8;aq%URwNRO+=}oI1L+^0z|cu^)nKgqNwf z&$#kFEFo*lHH#aXA`I~jS5=A(RVz+@l)b_K_TAUHF6O(=vL&sY70n~`_Imk@$*Re% zJhe}31w+rXym`5cVe38RAHvVFysoxhd;046&hst)yA;Bfbsg!jJTdcDP`{X(&`rOy zISnskb8aR2B`TC#*6Y+?IKJ%U3UOWo<>}D|a$ZT?-79u4dA-4O!JaMk%NmYHX_=JT z-d=F1G5x#M?uY*if4VRvA7cBzyRYLrr)RgltI?Csa)~JoGw#+lH8vfebNk^|+3*(v z^TiBOE##a9a{kQw9(E~I>{RmG?ce5oWf8hNt@FZ?%MoUwv(B(Ho;>DOpS@3M=i_gN zmAlX2#WfAZwO zH}y!FCyX^ma;$mhSARR++8mjzYwX`Ha*%!L*1LE0+uS+r-uG<^zkTf5grj|I1u;uf ze?+9LzVlwW&*6Al-uslb9!_Zwr`9jlx&Jdhy<%<8?yB7uOO{@1(RK5`T&#TOkH@?f z3q9l4PFqs@H2X(ER>Pdj%Wm(#*&aV{`aJLO_F0Qk`7Nqh13I?`i+-uQP5assHm_Ja``on`6R+gon)k*bFwo4>A@F&;n{rL*} ztm|E78Ld7!m0fZt#7-on0J{hzt6+}riO-eTV}zlSD`0nIxXT;lLK zr(OA0U|q0J@zuOFR!pg?qUTk@{wiA?Umx~8E^=e}ooO2CR-wh^D{fwWu}a9P&VIAC zT+(9k<}+dw_A-m`M2J@Jv{e7c@c*LPr{o^Zw3R0n;rKm4qDxkm~~J1yZi^qKMJb0E(Fsr?fsvk#!HXr@h#1I(g1^5zV)<2bc3!xc^(UG~^gJ zw}q3^Ur&Z#x6YTX@h^0k?`I;zyDFRE9Hl7WWaL&wZ}};(aI@2cjBS@x7JQ6(!QC|F&!qQ%EKlfcTln@_a`PF5f{Sv}v+`~x zcrM(&*wDc?Ig4lyw5Ojl*}J|w7a_dsrke&^9sB`YRH)W0wK zeD}zguu-Fu;;4@*7n^!ia9Yvf$xG%i z2zmZudexrKWE)b{cVp`POTk@#=EUE9nsN5Xe=o6Lm5FoZL!0@Z#9!LlZ}8#wspE~M z%8el@o3AbJ=uDq)YASqe@0sgA?+PE2?mKR?W`o<;-&3Qz8Mv#>a>cr|<$p?iyLYzd zN7Ltrf~&gEi72(#ub#1>FshrSn zsf$wro%e0yalND5?ew3izff~~oBqR-tPhUQ_|Won%^tg1;iX-7#Xj151;*8V&#Hg@ z-k?%Zt+U8(iTk;U$C|}v&E%W3i$Qwk@|!wd4(krYH-z1p5ge{-!8Wu0{+rO5v)>)? z$}d|h^DpV{skHYZLT#y+ec#D*oqVXnQD47BdEd5(8qVX{0iioG=Js5D(r50y$n8(j z`+4&<^g2Q`8WU&!ylwp6V7k9|%A-Y$Puqg}bT`^@eq3~}$#2pEH>LiA$3rDjR%`q6 zK3pf?St?zhr0MT?-|dSthc~18yZR|*Zfy!1|GQlLyH@yDq4#-B7Z+0p)&*aGb3IC( zVE@(qL~ncX1nb8iCiva2EBYuHu{WZC+uN=6jz-I2D(%)^88MN`ant{%X#SLt3160eU~71p9jxlOP{qdkpR@2wr!|d}YEqC_i1|y|B5~=T=VTf!vyN<9Wt%QMSJ+(n zPvi%ITajk$ahKNqV7pV!bM(n(|L+mcoDQD*Ay|J*F0*fO-+Hf$%k)k3rxkzOJNu)A z({A&3#t{xHgfGbQR;e8psy5@kbnTFd%N@4w|NZqMxNG)&e*XOFlcK2y-q-uhu@PEU z@?Lz_yjy|6O80`#`M5k<{Vy!o|Cs3}af4(7%Qf%Qw%JSB`xT_xg%|LaSUoRjiJw}! zvsmJWtYex<{i-STi8-8C?E)iW&)+)sk=?jTegC!V-4o7rd2e5;DA;y&>U>Vt|A(*Y zop-%R=-{^lPgo-v-?~G=dKl7 zBF_D|Xr(qgLvOaw?PFg=PI+2|Jpb!kV^y&Dy~jJ>RtLV9kC)t8YPs0!n&7tZKPy)@ z2Os)#?WO){>73IWY^0Q*Tle4YUw$X~ub|EW;iT$qHedhlU(GzhV^`Yoh~~P5KKv^W zaVD{_A1Jt(wJq;~yUMQEsVnMxnBQk)h4VMmpRGT$>)r}G#^S2SpFjU8Ri0QW|9O={d@lUb(Vf@@F@MWN7_F5Uu4M9 zweO^sC|%^;zT^LnpPGDqe@kn_V;dU8%K!dmy<9M(?(~v+=AwwHsegCQI61|RyFQ_U zb$6KWky{^Ap59eTS8)08wlcZ0cI9cArjX^!S6JRP`?2b7$c?S#&-#waI6lmu$=Fx? zJ$dq}I3aKKMHAj#UiUYq$#0i7d+dxNH?sh@^3z*7FMWLSyi|Ux3ftkgM;%or$*rEh zzoBpaw*{ACcXfNN&NY)Yj$uL1x%Co``)=AFzo-#xJrFl zmDslpUJ5<8>iLhKZLIa48L@NSzU=bcwb@@j=!jin&Xl*#wSP8y$=oTzZ&;`Qo%P>t zT0&e+!+iIMIH6*O49Hdw&S&kj9mPJXt*v@E>*j@|gUrbmrEj0dJS}Da*y+14RLJ|w zGx2|o{S{3icPFn6hUFxRzxZJUzAJ7#SVX8iL@^&U@aeSOvT1IfKTWm^l%LN-P{ zIQE#|IAnQt(5p8KrKc$`-OiC?JNNm5Ysx9C?Cle`mG4V`o48{_>6ssYrt(-ywLWKf zeW7Vd(IF1^Zie;p<~4pSJx+7 zRo5SFzoY&g-OIJMGqmabj0w-*T3@|jVb*-CW}B$$Z+9+|7qeM=IjA)G?b0+QgM`jwhVAuPE0kT7 zpUhtKPFQ>Oq=Q%2bc>b0J$H~f@zt8s>+63fCY`#b`s0cS?+(uOHBWA@Enobjzc`vr z(AD*qXKC&u&S#UHUhQ(;6MJT*S@;26!?47JjfdGR=Nrs-`eXLth>W}3>Md)7i=zBf zLe(yvaMeE<(DaLYu~tve`X#F*LP`>265{^)?LW`FVFQQqueWo2rOv#c({y*XUU$Gf z1FlA{`kqOdo4Jx7>tuv~y|nt{$9*T(bKCtd6!80X=Ay$Lmb-@nMV?&~?# zM|~~w>LI$<-29_Y%&Q4?e~U}*Zs7j8X5o+S`R^uWseXHU-$N~|!%yU# z&wpbky^Y5g^u5wB;B9W0b;oe#napNiQMGD0hi?(Ta4BzY?-YT zw<^ooOFAU&%G2j{p;z-J3-sA9`u#d$-p`2T8x}3tyssozA($`T+YM0ojVjAe9uv(d08bpc1}N5uivBWrDn`uAT96OaKhX$t15Xj&#z9IQ&r1&1a(*CdE9OJ zExI8$v(jKchjU}~Q!f2UGyiTeU-+{mBF6OM(xo3dMK8%5bYa@?tVH7Xp8UJJmd~(I z3VO^a!W-+cc2nISx9C0vKCkSkp0(FBjLyZyY~L|GaMJgrj9(S&9i0@6w$vxCT3xJr ztM~cwGsUuQSNDkAbz`Z$c`-4?ddXjgf(bYFCpc7#KVKL5G{s%Iak0TGpUS8JnR#8! zRRNQ;KTMtc>F}F_bGG=d$bY+7vNHaLj$TFo^Cj&6Qyx4{eK*ZYOmsfalA}jnwHz&P zP+D{JXu-*Ss&O9}x<6hP`O6>p>!Rew_Il|hG12`y!gkH=@!*+~I-*L z#aojaUEHp^J=vodx%Y!vL;qLi|4Wq4Jn@-*eWS>Z?v9re{OVGdhV^>(?Ued(IY+tv z)t(uA?*n9Bugp#mn7ENc;@Tyid0q_0Gp-9dZxw9NIN*4Dt(~{K-@cDuZS&frICk@H zXIIy#mu+7VGJUV@Hs5&up9(MC%I-=_?Ag<*ysh&?`@s+IxE~xgJ}1NYWQ}A(>U7rD zOS}8a4^`aOK9YQYmE5QH(yqupUzs!4&x(~@V2kF~zkYi0+y0e@oq{#&_L~^m^=kxI zg;xJOw@l31PRDXZX-tl>YwEYpTXSAVYaQ`CY?GqtezE>q^#jj05(o13uHc(2{qNAK z1a&X*Kl=rZ_|yzh3(9yzGuwyiIqWF)7J8 zCU2Tvw)p|`%Zw~`#UqSor(W83OeJD&jrOPCFE|p9{7t*GwO)+vuAy_y ztx1OadYogg?4>*7OfVd&kwt> z|8SUdSGrxo@WO*jQxe?QC6-QD#`#&YUhmr#g~Xqs67h_tKVQG&ObP0`$Nb9E;6-$) zdRuUV(T&&N1sACmRF;W- z(67UNT1Upjalx#B5T+j!|E_<1E;(=~!@84KD|EdNtgUCCnmSiV?2<>05bF+um&R-6 zGX%4oHYoKud~|=FYJvE|B}`tg3{rP~n6UrNS$DOS72=be*T)=kRE&S3-m$qnCM%UY z*#2H<@dk;dmvdVEcYG^*XIN$*BmQW~q-UoddYs>)efmhOkoA@#rOC@gw)w4oP$)U4 zLM7+MVIjF2dO@*<^^Ti#clEE|DA-(+cOy*i;x>IwUGI-)XUlEXzi#UslmEE<_N2Vr z^>?cOFPeXPi9?NOmr%Os+OnBnrd!Sw{^a~3L3>8Uu1BU**d3VpQ+_!Z=Ol|x7D~Hx zdY`Jv@6tc|4{FTMXXkVtuRLQ@?7r^p)O*dRZXIxNGhg?41H-;^&fe$h8IN8#7GkP@ zI`Z|TAG2Sz=gn2C*67LhKO!#3thC76CT7E zxh7kCuQ5K9);v2^r?e1V|r=TEHv&}!Yfna{O4U{Ynk+N{EfCE^p(Z^|YMC$Fh{ z-zTJ@Ua$Wz?$nFlQ{Qe?-1`5!YybS&WxCgD^YsJP96ZYM@U-yyra#Bdo=tzO)XH`$ zAT+Hz;??vkc5-ZX6|o_V`*(!sUbj4ZUv--P#_8f-udi%f%6?_ai{goiZ7wU%wbtk6 z_SZ*v*!sog>A#Rj-x{};<=^pyBV1*S3JbqyrHLfXORT=!@FM7)<*UxN9a9rmZ&-9M zQ)Dueu4?b$YwuLt89x6$_cG#<$mWkqf3o8CcK*LF{5vA3?>E=G-uA_J4Qfn;rU{;q zbc~VPmv+56?#J7^zNP;rKiWC7ZSGmlzU&B@PQEh|_3PXY+O}o>hnQRz=A_ce8#|2&-w8lLU< z345mYGi}x@eWCj3~_{opHbm^=0eTfknvO+;KqqZr%zZ6%dbo=<)mY2~55(@t1 zyS@LVE>`V%P&{jgzxDjC2}{0cm1uq2T<@+ctH0=ez0M*3qo+c4)gP9g$*sOzrT2FA zY;!}^En(GMo7J_gvRCb8iHv{s_7uaCUdkn9bIZWcaBu%DsEX9?9L` z_O7~mcHRp^Kh1A9{AMH{EZMi?ob8JnR=sX{AA0gD@A2Jbn*Na8c6NQH^sf&W%JR%y zYzp4{xp{j{W%Mh-s|Tk zt_h9ka7!xtS)2JrA#62orUx_ciu`A(o0DyBbeH;EtX()sJ+t9^F-(*E_e(1$b+?&7Njl9XTcXR3d8GI*O=6mGWHXfJ19>u$I+Op4)=Y#)B-0b!F55u!v?jmL9&Nt}xy}B%P zPh7=d|BHxgd?!~2PdDxgd-C~|bM*AbMKjoq0*#ul{;*-Po7dTG&iUs!)6e39g^Qk< z8+*ULbNl`*?VwD?eSytv@n_QS`rlzX$llcOt>fYx{Yx8Nw^gL9db8&96zi=?k7WZt zN=Qx!e{P&pznIPQ`%I%5*|%ryuNCBZGu?Pk?t3Fa4JLyL4IH9hxkN8oZatK2s9v{1 z_-L2nu9dIZp4xDIatd>d{536hbNl!EbIf0Cd3wjzT0MOu+siJ|jbCm}(frpR{#?^X zGRw+hXU2cS4}~}RlM0$%%qy(a*It{jhb7^m@0{$qgMpo{(Vy!tT~O~)PrSK^TcQ07 zI5;JahY1tE{Y3r`)f5{!8Kd0OMHj~tgbp9eU zUDbRI*Bbf#Jj@mQmOk_4dK6kCRX%x!SVOSiVNJ=(OjdpAX6q@!`LkBlU&wj{KW+@A%R1^l%`H|I`yF=ghr0f5MN$8eEK`K4~lLPBAlWi~RFwRo87rZkykQhST1@ zI)15crT(`!QxD!K(=qVq+)*8CwP)51&-kq4r@aHcqH;A?7i=_Ya95ptrH<|4O)muo zuN#Nv)?4ioS{S^isr;wM%R|-kbw6d+%+LAMpRr}je}^xB4T2{6RwW+$+41AbrT)Ab z0aMnl^?%oYWnU(j^4x8&wy1jRa9>kezH{wog$(_(d=8OPy544QIg%u&dnF62S@`zH zWfm@X?FiOW(Iao*>^7S318yl6XwIw9`Gp5(o^JImAF z-}St>D?*A{(988|TKx^Pmnqxh4_%wX^X(+}!mUy6zCQcU7jZhBR@`y@pAZ+GdXHDKi`ttHBBO)Km8Q4wwx^LFHrj9@A*j=cf5Eh|8KR*r%QZ~ZgFNu zl)g(-pXyw<_Tw+x3+5+;oVHm`mAqOubLBjN)K zhsq5*zet3wJ!@U&cVYJT@5NK{XN0P*ee~@>Nc(;X#)dUj3fc3$f{t$K;k39SW3aU} zZZ}KMtHa9;?#(@PIN?*8=GG-^*2VGl9>4vKy@~0i_w)nqzBU_ARsR3jrXcYAq(@oE zhsg{glKSmG_U|=f7rks@5ERb1dc&!>`sf#}5x%?9jHlPs+?k@?@@|T`f%Bz)m#RzO z#0rl*KPKzwecjn$Q^66IkPVDyIcv+h*N05&J9T6F+F-`?*BPB6qRk5evMSpaidCCm z^b|RIYQmzv+1KLM%&GYDHnHM7@5+EHtRhlO%0gBZT=_CrmP)k-TRyX~Q;Uz^sHxvS z^?v@8H^^Rm4% z?KoSo^z5?5w>r5BHrJcAT@ijF_rF6u;orin*PT@+^*7|*-*p$?dn}@p&ih)elY!xa zm*>u%^E|m3H|A^gT-9Ua+I};{NTb0`&WE!|O@}wCNzzkQQan{!L-pgGovIqGN3G&5 zYF7&Ku7Apu@uK@l{}zLWGv}|02r2%I-+z2+wYI_BKO6VH5pZ2`H_o{}!DYToQ=zvNcc zmy5Z|6d$cfs864DSgcZ9{%>>3XRfw$r=;X(|F2n>ud+q$hUYtuulMwV_-uK<^NLtD zD##u56lI=z^~?0^J33;5%|51CJy~q?)|vOFt@VyFN&GJPt88zIu2aCX?)lt#zdcSU z|M|FJo`O8@(JaPiG851Ie9g(E|0YJo;cd##ZS_Th`4aO=+{81Pw!M3sn*3mYq;=`( z2H6??qJqzIk8G1Yw{ewFy;|nZ_gk*$O`pf)kY09VjR%+Lszn;-A119c5jXgMJ>q_X zXT&kf@aN1aaq^vxOCp6$14~?=#lH@F#ofXvw|mN+)XVitEsi`rcqL-bqkHQ^I4$BW zG#`npG{^PUE4{n1L2_DD#(}IZv#T|2s}t58e=ud&V%w3(@Zgefr;gm^jk`Iu!aSvQLO^%(EX4x3wuthXYfkiKd`vLk^I^Z| z70y`ySjO}IJ*_coUnH-JJ^9~SC}YElyN-e%i#g|}i^S?0O{%x#JG8G{s>I09TUx&H z>n~x8kkY$l5@%P+KA3Ug$`_rBH-sL2KPAR$VeH+Mxcb)IY>5MlCasA*f99o4z@~ry zXMf1!l6X3YuTn50R=z0l<9vSqT_@N4*y|{7bN!vvPOqPTB$D*1llFUC@0RUzG@mW1 z-`Mj`dwFlJ@p_Jfi_fGv2#f9X*U?+@ zCa3u1*B>yDe<>4s>ETyKiLc%P^|f{; zr_CG|EL!x9FK*{tiABDCXO8Ah)C=M>vtPNuSJ5yxr+nFBMJ1M{Kje<5Ki~CmTANPY zmvFHw8@$p^nCO>W_SXCHaK_ChxBVeeA6H7%Mi*42mCyJ!6M>3p>o2*a-WFP z1%t)Bzv@?oHaD0pdZiWiN3;EzgZkIy;`5#MH#H@8gb3$-lXWcms9|nfaWB5*rn1;n zsnt$@E?nJRm0q@C+iPACEoYY>OKds<|6An!4m@)_>tfgS1x6pA(?|er-l66t}If{@q^j% z$7wI+ACA8x!uP#MIC^d4L6hYxzsWroTiEf<$6Pof=-8?_F*RwU*B_1553ZL;n|<&f zkE%zt)ZQIIh0n~xc8A!{+&i`2L&~5$<5qd?yXpf^XE$iH+RwkURXES?g5%U{{&g!h zO?>oTc4y3qwor}rzowPet3AKh=rvVLkl}b5(rT5%dJ(jp{YNy2Khl|rL zOxP9hR`adY!RyJ9dl;sQ*4RcIIvvaPfqA-&%%o+7uS$5HU;9w;Wbb9q&=?+Vk@d~& zSD$2rEVkO)V4=&iFRh`j*TUe(rh8V&s@0V%&THmOmYL*|rGM^5b4Eet{Co9}m)$khMT#qQ1EKgwqFuJML;so&W6BLv@zlPg_E66ub01F_R8DAAk8( z|1)8>UlztMx&QEdkJ8J0e?Qh_jY-O!1xMp=>D>+doE@^t>8Yw~=5L+^q0)!%Zy%Qa zek;ZA-qt-ntcDvo`d?0nSUL3%N3O*R_j;jdXLYln-ux@8UD7#w_V_j3dfn<*V0M&8 z$8oKC)V~bY_2L~dTwVJmf}Q2ko~_!tBg1evV`$p@{S$lnUOH(%$qGpbSXcHq_~Osy zOMk3ndN%w0kIcuAKNm=Wg$}nfWbDw;A?mSzZw__xNPK_E7u8A7u`2B|_$H zv@w1&_0^W_mRX@O%eEQZdDH*<`mOW{(d#ssC;Ql(-Pip*H2$sK!~2=OzbbEhSiK{B z<;~N_gg!kv9e&67rB0xgd)^1u^RW%BSC&TQKVQ#iabd#A`nsJDU(_B^uaxLMD8n;6CO^OK$GHmL;ekbNBi{miO-)1MT7wT>xPDh#?MyEx|O%&%A9 zAGz-szr*VM+YJtHJ1%N?bhZ9as`)=JxrfuUc~03K*D|9wY99i6>K-na*zw}mlIb6O zbSE62Vw~%7{o9FmiOc`g8~i$SKQ6tuJb5PL`7;Nurd_-|afM=A5%{2S3NNxY9+Jo>tZ;O;ev} z?)U$AZop<@>u7k5C+J{_>zkfOGB8nD)_3(iq2b0-_G=<|7dh{VYvDSu{Maum)#VCd_v9E}#7+=p;^ep&d+3Xu_%4ND z9j;54+dI7+2~>UO%~!H``R|?>3f(`03$00_662I2zal zZSS-)i`(}5#OXy1kiB`sAQees-MiHK|2iFse-_Ptd1x+R(JeD0G4-|UE$p%y`BCcc@gU;O=JN|u=5$3mOJ z_=H(+=CJ+RF3`|ddd%b1;>S-E4onJvoyeH)ae7VSu9?rit9>ok^GetwskGE}m%-8d z%p2>k_-O_%H_33G@V`8%{<7Eko+3T2VuPD|=Irs}=H4rIrFPDZOZxFW{PFyYwp9Gx zFW6+xg8s2Xw{$5}?(e?9VIQvt<^DK82`Qm()Q#vK;AF=*S z`9D`w>e6Yw_3Kx@`g@}O$@6+4#ut-&UaVak^}lJq=5-~jh&ai-FLH|wlP`LDTAi5N zKP7i|@JAu5<=IC%>{HJkQ?Q*|>srw*{Y~1NOZA9$xn=jdGoqIws~jbGO^w!ERIQdY z;MH)lUmgB`e&#ionjVRHi7YW?0h3m^&aOXqxh&w@wKYE7zb?y)?P@<<6l_v==8MDq zdB3l$`Wdrp-`y^D4^icxfAmrmICgS#oU$vlzq&Sqr7xz``yAK2J?@VCo%XMFd{gAb`=ySvyUo7E z%fbGuu;GhhQq|r&Y&U(a%9riU{uy`XhLac%8^7$~h_!n4!UrOm)sIUBm1%tFxxu+z zNrgjuv-ejoCx6K+_smwMPmt&}TPd8qJ)p=o_B6u|+wLWtJ@-~D{#kkQl`QYo_88UE z-*3^Y0{z;Cw{)_i2OX6ogJU+>^bK$E1E5G!^-(s!5Ijo(&r)k?IuX?U2XPLJKo;_E1 zYuc%;vm}(5gb#lYRsQ1RrgHdXCC~P0^1YWW&&@re+FiQ8Ft_cl?zY|6LrsGZiW$9o zvRo~ZJzGx1p5cIr_}9mWLp^`qUpArsvxAOOr6`**b7IV9xw&c$f7sGjme?v@Tzc)I zSu)f86Hab11WQGn22tE3(O&H_6uP^xwyErSDP?74HeM*lxe* zQN7z9Hk+4;0Sk*aKl=W&ak?f8?>Z^NhfM3<{o#_&Jmh&drE2?}3&(5gx9xg-aqo$` zx*TJ>e>ug64;yTsuT~n>cu_}gRyt?UNuQrmmR}p+-20ul?)k5%?m1G7Gfv%!KXWSd z*M#E-_qrJ=uY34@Mo08YDF;S*-=KL%zN$XH)qnTS{`#8M*o4K8cCT5qWAzTU@wEV|?yZtGL zCkfuHmgINY7&LLhiDbbOy8`C!Ke@R=h+%r!v(kMgQsSAXgFH*l$c2S_^?o@Z^M$8# zk88iyACUv6YIRr0pRC_@c1oXeNYahH(U%v=Zl4go&Hdx_^=rL&9zEcn@MzMCS663r zoxk_@d#=NRaJK_;lb!C?=h&a9`f3Jb!Fmg`R=6iZ(9;F|I9lf&SNI{ue3zyv)w+PtRwXrk7DYN zEV;Z=$FcOniK|Zn-f3&}FKoE?L2t^}(mRXKeRj0wu)Mq?UrXaspRa(5SDDmpE_W?UeRM0EB$^&au&B+|SXm>qA6iJ@*#r zVma}R^*hoI#~5w8Kl#r8gNe=$`u@$5m1DT}c+VO4BXX9N@rsep=j5hLdUS5>V zFyHJKPmJ*FQ*-&+A~sCe$7Fg{al;b+k8=+@=sNDY<8f)9-PQ`_!ztf;h2@O}rB2!~ zOfP=prfl8upljLhuotIG+?Fi)a>8c5BKx}B)u;AHWb|^^vxZw5?rC^>L&3Rud+)yP zllu$m7Rc@LXLeaM=|KdC*@aw&3o~N36#l99&e}Wm(4MCUr>$9h=7a9i_qi_0jWInp zR)3T~TpDqE<_9mf%JU2QOe-yReMx3|xYd16#qoD$H`$-H?784vc=BX;SD%SsdgPPp zSqW7)V?}u-qiq=TizVxi%dGfw|HEz{^|CKkP65AM?^d0w;`U$Jz%c zW}aXuG3z?^6{DNi0ljK_;elay*CpOG_w=jS8qlM9& zQf6}&+88-|UD|!}xa$rj5i70>vi|0qidTHo6jKyR+|#=IaB6)-XWD}0Srw7nFLJ+LBYCL#xyB=p(j}orRZlF=FVKDK$zJo`S^G)%w^#kY zWe&b-y!zm}$U%*|qp9+r@?L2#+h=^w>)l(k(=JUBTn@)<*GlnvOkcmMLYdJfVSV&< z+Z>xZkCbo!(p@W8svW$dIniVLJAaF9^~rPE@A>M;JngDmY3qCOYFBkVQ{#pcVik(! z!4}SkO!t-l-SKPr48uzg0+Zgp-tDLTRO9OJh;3ht)!v=|Y9h4v<~85nF}3}E$30W0 z%`7y1DsA;|^UV1_Vyxy|W;$sSbXw=|g0LNFnPt})=NAibzh01IZ`MC|V^G@L_Y@*o?T2QH@`mg)?usr0jAwKJL4DLDSh77 zv2Rmk{0hmXvWrSixiqY>m>cI_krA|I)70J)MWr*M-C-A)p3U_9)3|X?_}OJzOEXKZ z=2`B#d+&HApGQ|;=Gs%uu_3QdmNsy5wtcFK3ED2@n3+;v!+EdYboI12+gY546eQx> zCy56a zdDiWTu3J<)xF;Twwy(c4FSG51QnaRTaT|AH$Q99FMe!F!CiH#^V+mV-{OV%cJ#ps* zdX7)+ExcL%XXoRv+KEe)nnK@jzVxfUx;%5ms*6|loL6FVI468CM<8XROM4-EuX26h zW3NU=$tkOE7tFf%>5#w1&a8Yj?{DVnPo#VOg4k{g^;|aQaC*1?$^T>3^^&}dGu4V5 zCcV|`j7_arlaz5vcJH+;zLtIAS$F&{AO0Z}*D9;)(tND<(z`~ryE)xQS-j^SJ*7Hl z+Z}P<+Xh!Szu)QK#MmG$>8H_sQZt}5MoUn@+H=yx*-OHHGMc=QHZ9%QAipsBonvsF z`jtf~*Mbr`ZaB}MR2kuOE%%aT`GR`2kQ?)3Ss7JR-DO)%xi{~!yycD1Ikjb(dtC1!W~?vqb3lHKW|Stwue_Zz>n%aXcT zd|`QN9f2%vN3U*|$vv+jnv#80k0IxIpNTy$*d=Go4?_IGH>^6 z_S*WOtSjcvRvk!C6Pv3Z`8fH0pV@?7&EwncZRUXxF#UzuoBES2mm>UU`