Compare commits

...

14 Commits

Author SHA1 Message Date
longpanda
ed1aa3d5be 1.0.72 release 2022-03-26 17:33:46 +08:00
longpanda
8e66110374 Update README.md 2022-03-26 16:07:51 +08:00
Kerollos Magdy
f5f65aa868 add GitHub actions state to README (#419)
* add GitHub actions state to README

* Update README.md

* remove link in README

Co-authored-by: Dylan M. Taylor <dylan@dylanmtaylor.com>
2022-03-26 10:51:26 +08:00
geeseven
4e5fcf211b add IMG to no iso tip (#480) 2022-03-26 10:48:45 +08:00
Celine Lee
9789069c0d Modify casting in protection against underflow (#1514)
Dear Ventoy community –
 
Our team is working with your code and we noticed this if logical expression:
 
                if (len - 1 - (int)(long)(pos - pwdstr) != 32)
 
We studied the surrounding code. We believe we understand the intention of the type casts in the above if statement. It seems they were meant to ensure an underflow doesn’t occur by the subtraction between to char pointers, which is a great catch (!). However, we believe the way the type casts are structured, the code is not actually protecting against such underflow because pwdstr isn’t cast into a signed long until after the subtraction occurs. To properly protect this code against underflow, we believe it should be changed to something like the following:

if (len - 1 - ((long)pos – (long)pwdstr) != 32)

Or, to enhance readability for junior engineers who may not know that the “long” type cast is implicitly of a signed integer type, we could include the `signed` keyword for added verbosity:
 
if (len - 1 - ((signed long)pos – (signed long)pwdstr) != 32)
 
Thank you!
2022-03-26 10:29:18 +08:00
longpanda
1cf45ac0c5 update 2022-03-26 10:07:22 +08:00
adrian5
40fe21f909 Fix wording, normalize capitalization (#762)
Co-authored-by: longpanda <59477474+ventoy@users.noreply.github.com>
2022-03-26 10:05:18 +08:00
George
e6bdf075ca Changes to english language (#1140)
Changes detail to details and replug to reinsert. Which makes words flow with the sentance better.
2022-03-26 09:47:28 +08:00
Chrystian Rafael Rubio de Melo
7c76e57bf4 fixing grammar mistakes (#1482) 2022-03-26 09:46:35 +08:00
longpanda
7fe038b697 Merge branch 'master' of https://github.com/ventoy/Ventoy 2022-03-24 23:48:01 +08:00
longpanda
c01c69db3b Add missing execute bit when packing (#1530) 2022-03-24 23:47:43 +08:00
Celine Lee
0e996e74c9 Update error message to align with int16 range (#1513)
I think this might be a minor typo-- since the conditional checks for `priority` to be in the signed int16 range, the error message should line up with that expected range.
2022-03-22 19:15:25 +08:00
longpanda
1371159f0b update OS detection 2022-03-22 19:14:51 +08:00
longpanda
44b38dce74 Add support for venomlinux (#1526) 2022-03-22 17:52:56 +08:00
10 changed files with 87 additions and 51 deletions

View File

@@ -21,7 +21,7 @@ body:
attributes: attributes:
label: Ventoy Version label: Ventoy Version
description: What version of ventoy are you running? description: What version of ventoy are you running?
placeholder: 1.0.71 placeholder: 1.0.72
validations: validations:
required: true required: true
- type: dropdown - type: dropdown

View File

@@ -960,7 +960,7 @@ static int ventoy_plugin_parse_pwdstr(char *pwdstr, vtoy_password *pwd)
return 1; return 1;
} }
if (len - 1 - (int)(long)(pos - pwdstr) != 32) if (len - 1 - ((long)pos - (long)pwdstr) != 32)
{ {
if (NULL == pwd) grub_printf("Invalid md5 salt password format %s\n", pwdstr); if (NULL == pwd) grub_printf("Invalid md5 salt password format %s\n", pwdstr);
return 1; return 1;

View File

@@ -20,7 +20,7 @@
. $VTOY_PATH/hook/ventoy-os-lib.sh . $VTOY_PATH/hook/ventoy-os-lib.sh
if $GREP -q '^"$mount_handler"' /init; then if $GREP -q '^"$mount_handler"' /init; then
echo 'use mount_handler ...' >> $VTLOG echo 'use mount_handler1 ...' >> $VTLOG
vthookfile=/hooks/archiso vthookfile=/hooks/archiso
@@ -37,6 +37,9 @@ if $GREP -q '^"$mount_handler"' /init; then
if [ -f $vthookfile ]; then if [ -f $vthookfile ]; then
$SED '/while ! poll_device "${dev}"/a\ if /ventoy/busybox/sh /ventoy/hook/arch/ventoy-timeout.sh ${dev}; then break; fi' -i $vthookfile $SED '/while ! poll_device "${dev}"/a\ if /ventoy/busybox/sh /ventoy/hook/arch/ventoy-timeout.sh ${dev}; then break; fi' -i $vthookfile
fi fi
elif $GREP -q '^$mount_handler' /init; then
echo 'use mount_handler2 ...' >> $VTLOG
$SED "/^\$mount_handler/i\ $BUSYBOX_PATH/sh $VTOY_PATH/hook/arch/ventoy-disk.sh" -i /init
elif $GREP -q '^KEEP_SEARCHING' /init; then elif $GREP -q '^KEEP_SEARCHING' /init; then
echo 'KEEP_SEARCHING found ...' >> $VTLOG echo 'KEEP_SEARCHING found ...' >> $VTLOG

View File

@@ -342,6 +342,24 @@ ventoy_get_os_type() {
echo "openEuler"; return echo "openEuler"; return
fi fi
#special arch based iso file check
if [ -f /init ]; then
if $GREP -q 'mount_handler' /init; then
if [ -d /hooks ]; then
if $BUSYBOX_PATH/ls -1 /hooks/ | $GREP -q '.*iso$'; then
echo "arch"; return
fi
elif [ -d /hook ]; then
if $BUSYBOX_PATH/ls -1 /hook/ | $GREP -q '.*iso$'; then
echo "arch"; return
fi
fi
fi
fi
echo "default" echo "default"
} }

View File

@@ -2113,7 +2113,7 @@ function img_unsupport_menuentry {
############################################################# #############################################################
############################################################# #############################################################
set VENTOY_VERSION="1.0.71" set VENTOY_VERSION="1.0.72"
#ACPI not compatible with Window7/8, so disable by default #ACPI not compatible with Window7/8, so disable by default
set VTOY_PARAM_NO_ACPI=1 set VTOY_PARAM_NO_ACPI=1
@@ -2349,11 +2349,11 @@ if [ $ventoy_img_count -gt 0 ]; then
fi fi
else else
if [ -n "$VTOY_NO_ISO_TIP" ]; then if [ -n "$VTOY_NO_ISO_TIP" ]; then
NO_ISO_MENU="No ISO files found, $VTOY_NO_ISO_TIP" NO_ISO_MENU="No ISO or supported IMG files found, $VTOY_NO_ISO_TIP"
elif [ -n "$VTOY_DEFAULT_SEARCH_ROOT" ]; then elif [ -n "$VTOY_DEFAULT_SEARCH_ROOT" ]; then
NO_ISO_MENU="No ISO files found, please check VTOY_DEFAULT_SEARCH_ROOT" NO_ISO_MENU="No ISO or supported IMG files found, please check VTOY_DEFAULT_SEARCH_ROOT"
else else
NO_ISO_MENU="No ISO files found" NO_ISO_MENU="No ISO or supported IMG files found"
fi fi
menuentry "$NO_ISO_MENU (Press enter to reboot ...)" { menuentry "$NO_ISO_MENU (Press enter to reboot ...)" {
echo -e "\n Rebooting ... " echo -e "\n Rebooting ... "

View File

@@ -7,7 +7,7 @@ print_usage() {
echo 'Usage: Ventoy2Disk.sh CMD [ OPTION ] /dev/sdX' echo 'Usage: Ventoy2Disk.sh CMD [ OPTION ] /dev/sdX'
echo ' CMD:' echo ' CMD:'
echo ' -i install Ventoy to sdX (fails if disk already installed with Ventoy)' echo ' -i install Ventoy to sdX (fails if disk already installed with Ventoy)'
echo ' -I force install Ventoy to sdX (no matter installed or not)' echo ' -I force install Ventoy to sdX (no matter if installed or not)'
echo ' -u update Ventoy in sdX' echo ' -u update Ventoy in sdX'
echo ' -l list Ventoy information in sdX' echo ' -l list Ventoy information in sdX'
echo '' echo ''
@@ -165,7 +165,7 @@ if [ -d ./tmp_mnt ]; then
umount ./tmp_mnt >/dev/null 2>&1 umount ./tmp_mnt >/dev/null 2>&1
rm -rf ./tmp_mnt rm -rf ./tmp_mnt
if [ -d ./tmp_mnt ]; then if [ -d ./tmp_mnt ]; then
vterr "tmp_mnt directory exits, please delete it first." vterr "tmp_mnt directory exists, please delete it first."
exit 1 exit 1
fi fi
fi fi
@@ -345,6 +345,7 @@ if [ "$MODE" = "install" -a -z "$NONDESTRUCTIVE" ]; then
sync sync
vtinfo "esp partition processing ..." vtinfo "esp partition processing ..."
if [ "$SECUREBOOT" != "YES" ]; then if [ "$SECUREBOOT" != "YES" ]; then
sleep 2 sleep 2
check_umount_disk "$DISK" check_umount_disk "$DISK"

View File

@@ -176,6 +176,13 @@ chmod +x $tmpdir/VentoyWeb.sh
chmod +x $tmpdir/VentoyPlugson.sh chmod +x $tmpdir/VentoyPlugson.sh
chmod +x $tmpdir/VentoyVlnk.sh chmod +x $tmpdir/VentoyVlnk.sh
chmod +x $tmpdir/VentoyGUI* chmod +x $tmpdir/VentoyGUI*
chmod +x $tmpdir/tool/*.sh
for d in i386 x86_64 aarch64 mips64el; do
chmod +x $tmpdir/tool/$d/xzcat
chmod +x $tmpdir/tool/$d/Ventoy2Disk.*
done
cp $OPT $LANG_DIR/languages.json $tmpdir/tool/ cp $OPT $LANG_DIR/languages.json $tmpdir/tool/

View File

@@ -248,9 +248,9 @@
"STR_INSTALL_TIP":"The device will be formatted and all the data will be lost.#@Continue?", "STR_INSTALL_TIP":"The device will be formatted and all the data will be lost.#@Continue?",
"STR_INSTALL_TIP2":"The device will be formatted and all the data will be lost.#@Continue? (Double Check)", "STR_INSTALL_TIP2":"The device will be formatted and all the data will be lost.#@Continue? (Double Check)",
"STR_INSTALL_SUCCESS":"Congratulations!#@Ventoy has been successfully installed to the device.", "STR_INSTALL_SUCCESS":"Congratulations!#@Ventoy has been successfully installed to the device.",
"STR_INSTALL_FAILED":"An error occurred during the installation. You can replug the USB device and try again. Check log.txt for detail. If it always fail, please refer the FAQ in the official website.", "STR_INSTALL_FAILED":"An error occurred during the installation. You can reinsert the USB device and try again. Check log.txt for details. If it always fails, please refer the FAQ on the official website.",
"STR_UPDATE_SUCCESS":"Congratulations!#@Ventoy has been successfully updated to the device.", "STR_UPDATE_SUCCESS":"Congratulations!#@Ventoy has been successfully updated on the device.",
"STR_UPDATE_FAILED":"An error occurred during the update. You can replug the USB device and try again. Check log.txt for detail. If it always fail, please refer the FAQ in the official website.", "STR_UPDATE_FAILED":"An error occurred during the update. You can reinsert the USB device and try again. Check log.txt for details. If it always fails, please refer the FAQ on the official website.",
"STR_WAIT_PROCESS":"A thread is running, please wait...", "STR_WAIT_PROCESS":"A thread is running, please wait...",
"STR_MENU_OPTION":"Option", "STR_MENU_OPTION":"Option",
"STR_MENU_SECURE_BOOT":"Secure Boot Support", "STR_MENU_SECURE_BOOT":"Secure Boot Support",
@@ -261,7 +261,7 @@
"STR_SPACE_VAL_INVALID":"Invalid value for reserved space", "STR_SPACE_VAL_INVALID":"Invalid value for reserved space",
"STR_MENU_CLEAR":"Clear Ventoy", "STR_MENU_CLEAR":"Clear Ventoy",
"STR_CLEAR_SUCCESS":"Ventoy has been successfully removed from the device.", "STR_CLEAR_SUCCESS":"Ventoy has been successfully removed from the device.",
"STR_CLEAR_FAILED":"An error occurred when clearing Ventoy from disk. You can replug the USB device and try again. Check log.txt for details.", "STR_CLEAR_FAILED":"An error occurred when removing Ventoy from disk. You can reinsert the USB device and try again. Check log.txt for details.",
"STR_MENU_PART_STYLE":"Partition Style", "STR_MENU_PART_STYLE":"Partition Style",
"STR_DISK_2TB_MBR_ERROR":"Please select GPT for devices over 2TB", "STR_DISK_2TB_MBR_ERROR":"Please select GPT for devices over 2TB",
"STR_SHOW_ALL_DEV":"Show All Devices", "STR_SHOW_ALL_DEV":"Show All Devices",
@@ -402,7 +402,7 @@
"name":"Portuguese Brazilian (Português do Brasil)", "name":"Portuguese Brazilian (Português do Brasil)",
"FontFamily":"Courier New", "FontFamily":"Courier New",
"FontSize":16, "FontSize":16,
"Author":"EstevaoCostaG3, David BrazSan, Hildo Guillardi Júnior", "Author":"EstevaoCostaG3, David BrazSan, Hildo Guillardi Júnior, Chrystian Rubio",
"STR_ERROR":"Erro", "STR_ERROR":"Erro",
"STR_WARNING":"Atenção", "STR_WARNING":"Atenção",
@@ -429,7 +429,7 @@
"STR_BTN_OK":"OK", "STR_BTN_OK":"OK",
"STR_BTN_CANCEL":"Cancelar", "STR_BTN_CANCEL":"Cancelar",
"STR_PRESERVE_SPACE":"Preservar algum espaço no final do disco", "STR_PRESERVE_SPACE":"Preservar algum espaço no final do disco",
"STR_SPACE_VAL_INVALID":"Valor invalido para o espaço reservado", "STR_SPACE_VAL_INVALID":"Valor inválido para o espaço reservado",
"STR_MENU_CLEAR":"Remover o Ventoy", "STR_MENU_CLEAR":"Remover o Ventoy",
"STR_CLEAR_SUCCESS":"O Ventoy foi removido deste dispositivo com sucesso.", "STR_CLEAR_SUCCESS":"O Ventoy foi removido deste dispositivo com sucesso.",
"STR_CLEAR_FAILED":"Um erro ocorreu ao remover o Ventoy do disco. Você pode reconectar o dispositivo USB e tentar novamente. Verifique o Arquivo log.txt para mais detalhes.", "STR_CLEAR_FAILED":"Um erro ocorreu ao remover o Ventoy do disco. Você pode reconectar o dispositivo USB e tentar novamente. Verifique o Arquivo log.txt para mais detalhes.",
@@ -439,18 +439,18 @@
"STR_PART_ALIGN_4KB":"Alinhar partições com 4KB", "STR_PART_ALIGN_4KB":"Alinhar partições com 4KB",
"STR_WEB_COMMUNICATION_ERR":"Erro de comunicação:", "STR_WEB_COMMUNICATION_ERR":"Erro de comunicação:",
"STR_WEB_REMOTE_ABNORMAL":"Erro de comunicação: remoto anormal", "STR_WEB_REMOTE_ABNORMAL":"Erro de comunicação: remoto anormal",
"STR_WEB_REQUEST_TIMEOUT":"Erro de comunicação: Solicitação cronometrado", "STR_WEB_REQUEST_TIMEOUT":"Erro de comunicação: Solicitação cronometrada",
"STR_WEB_SERVICE_UNAVAILABLE":"Erro de comunicação: Serviço indisponível", "STR_WEB_SERVICE_UNAVAILABLE":"Erro de comunicação: Serviço indisponível",
"STR_WEB_TOKEN_MISMATCH":"Status daemon atualizado, por favor, tente novamente mais tarde.", "STR_WEB_TOKEN_MISMATCH":"Status daemon atualizado, por favor, tente novamente mais tarde.",
"STR_WEB_SERVICE_BUSY":"O serviço está ocupado, por favor, tente novamente mais tarde.", "STR_WEB_SERVICE_BUSY":"O serviço está ocupado, por favor, tente novamente mais tarde.",
"STR_MENU_VTSI_CREATE":"Gerar arquivo VTSI", "STR_MENU_VTSI_CREATE":"Gerar arquivo VTSI",
"STR_VTSI_CREATE_TIP":"Não será gravado no dispositivo, desta vez, apenas derado um VTSI file#@Continuar?", "STR_VTSI_CREATE_TIP":"Não será gravado no dispositivo, desta vez, apenas gerado um arquivo VTSI.#@Continuar?",
"STR_VTSI_CREATE_SUCCESS":"Arquivo VTSI criado com sucesso!#@Você pode usar Rufus(3.15+) para gravá-lo no dispositivo e completar a instalação do Ventoy.", "STR_VTSI_CREATE_SUCCESS":"Arquivo VTSI criado com sucesso!#@Você pode usar Rufus(3.15+) para gravá-lo no dispositivo e completar a instalação do Ventoy.",
"STR_VTSI_CREATE_FAILED":"Criaçao do arquivo VTSI falhada.", "STR_VTSI_CREATE_FAILED":"Criação do arquivo VTSI falhada.",
"STR_MENU_PART_RESIZE":"Instalação não destrutiva", "STR_MENU_PART_RESIZE":"Instalação não destrutiva",
"STR_PART_RESIZE_TIP":"Ventoy tentará uma instalação não destrutiva, se possível.#@Continuar?", "STR_PART_RESIZE_TIP":"Ventoy tentará uma instalação não destrutiva, se possível.#@Continuar?",
"STR_PART_RESIZE_SUCCESS":"Parabéns!#@Instalação não destrutiva do Ventoy concluída com sucesso.", "STR_PART_RESIZE_SUCCESS":"Parabéns!#@Instalação não destrutiva do Ventoy concluída com sucesso.",
"STR_PART_RESIZE_FAILED":"Falha na installação não destrutiva, cheque o arquivo log.txt para entender.", "STR_PART_RESIZE_FAILED":"Falha na instalação não destrutiva, cheque o arquivo log.txt para entender.",
"STR_PART_RESIZE_UNSUPPORTED":"Instalação não destrutiva do Ventoy interrompida devido fato desconhecido. Cheque o arquivo log.txt para detalhes.", "STR_PART_RESIZE_UNSUPPORTED":"Instalação não destrutiva do Ventoy interrompida devido fato desconhecido. Cheque o arquivo log.txt para detalhes.",
"STRXXX":"" "STRXXX":""

View File

@@ -7,6 +7,7 @@
<img src="https://img.shields.io/github/license/ventoy/Ventoy?style=for-the-badge"> <img src="https://img.shields.io/github/license/ventoy/Ventoy?style=for-the-badge">
<img src="https://img.shields.io/github/stars/ventoy/Ventoy?style=for-the-badge"> <img src="https://img.shields.io/github/stars/ventoy/Ventoy?style=for-the-badge">
<img src="https://img.shields.io/github/downloads/ventoy/Ventoy/total.svg?style=for-the-badge"> <img src="https://img.shields.io/github/downloads/ventoy/Ventoy/total.svg?style=for-the-badge">
<img src="https://img.shields.io/github/workflow/status/ventoy/Ventoy/Ventoy%20CI?label=actions&logo=github&style=for-the-badge">
</p> </p>
<h4 align="left"> <h4 align="left">
@@ -37,6 +38,12 @@ FydeOS, CloudReady
**Other** **Other**
VMware ESXi, Citrix XenServer, Xen XCP-ng VMware ESXi, Citrix XenServer, Xen XCP-ng
# Subscription Service
Ventoy is an open source software under GPLv3 license.
But Ventoy project need to pay for the server hosting, domain name, bandwidth, many USB sticks for test, large capacity of HDD (for downloading ISO files) and so on.
For the better and sustainable development of Ventoy, I provide the [【subscription service】](https://www.ventoy.net/en/doc_subscription.html).
# Tested Image Report # Tested Image Report
[【How to report a successfully tested image file】](https://github.com/ventoy/Ventoy/issues/1195) [【How to report a successfully tested image file】](https://github.com/ventoy/Ventoy/issues/1195)

View File

@@ -297,7 +297,7 @@ int read_sort_file(char *filename, int source, char *source_path[])
} else if((errno == ERANGE) || } else if((errno == ERANGE) ||
(priority < -32768 || priority > 32767)) { (priority < -32768 || priority > 32767)) {
ERROR("Sort file \"%s\", entry \"%s\" has priority " ERROR("Sort file \"%s\", entry \"%s\" has priority "
"outside range of -32767:32768.\n", filename, "outside range of -32768:32767.\n", filename,
line_buffer); line_buffer);
goto failed; goto failed;
} }