logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 720cea9e987428e8f13fec6b86fc26f76c2c18d0
parent 6529d7d216a4a24499bb0c1f0184fe608e724edb
Author: Michael Forney <mforney@mforney.org>
Date:   Sun, 27 Jun 2021 00:16:47 -0700

squashfs-tools-ng: Update to 1.1.2

Diffstat:

M.gitmodules1-
Mpkg/squashfs-tools-ng/config.h6+++---
Mpkg/squashfs-tools-ng/gen.lua2+-
Dpkg/squashfs-tools-ng/patch/0001-Use-_MAX-to-remove-need-for-configure-time-type-size.patch194-------------------------------------------------------------------------------
Dpkg/squashfs-tools-ng/patch/0002-Avoid-unnecessary-VLAs.patch57---------------------------------------------------------
Mpkg/squashfs-tools-ng/ver2+-
6 files changed, 5 insertions(+), 257 deletions(-)

diff --git a/.gitmodules b/.gitmodules @@ -306,7 +306,6 @@ [submodule "pkg/squashfs-tools-ng/src"] path = pkg/squashfs-tools-ng/src url = https://github.com/AgentD/squashfs-tools-ng.git - ignore = all [submodule "pkg/sshfs/src"] path = pkg/sshfs/src url = https://github.com/libfuse/sshfs diff --git a/pkg/squashfs-tools-ng/config.h b/pkg/squashfs-tools-ng/config.h @@ -29,13 +29,13 @@ #define PACKAGE "squashfs-tools-ng" #define PACKAGE_BUGREPORT "goliath@infraroot.at" #define PACKAGE_NAME "squashfs-tools-ng" -#define PACKAGE_STRING "squashfs-tools-ng 1.1.1" +#define PACKAGE_STRING "squashfs-tools-ng 1.1.2" #define PACKAGE_TARNAME "squashfs-tools-ng" #define PACKAGE_URL "" -#define PACKAGE_VERSION "1.1.1" +#define PACKAGE_VERSION "1.1.2" /* #undef PTHREAD_CREATE_JOINABLE */ #define STDC_HEADERS 1 -#define VERSION "1.1.1" +#define VERSION "1.1.2" #ifndef _DARWIN_USE_64_BIT_INODE # define _DARWIN_USE_64_BIT_INODE 1 #endif diff --git a/pkg/squashfs-tools-ng/gen.lua b/pkg/squashfs-tools-ng/gen.lua @@ -1,6 +1,6 @@ cflags{ '-std=c99', '-Wall', '-Wpedantic', - '-Wno-maybe-uninitialized', + '-Wno-discarded-qualifiers', '-D _GNU_SOURCE', '-I $srcdir', '-I $srcdir/include', diff --git a/pkg/squashfs-tools-ng/patch/0001-Use-_MAX-to-remove-need-for-configure-time-type-size.patch b/pkg/squashfs-tools-ng/patch/0001-Use-_MAX-to-remove-need-for-configure-time-type-size.patch @@ -1,194 +0,0 @@ -From 3bc8305b275f4551e8af817916108d27927e559f Mon Sep 17 00:00:00 2001 -From: Michael Forney <mforney@mforney.org> -Date: Sat, 30 May 2020 01:23:59 -0700 -Subject: [PATCH] Use *_MAX to remove need for configure-time type size checks - ---- - configure.ac | 5 -- - include/compat.h | 14 +++-- - m4/ax_compile_check_sizeof.m4 | 115 ---------------------------------- - 3 files changed, 8 insertions(+), 126 deletions(-) - delete mode 100644 m4/ax_compile_check_sizeof.m4 - -diff --git a/configure.ac b/configure.ac -index 71dc54b..4d4bc0f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -260,11 +260,6 @@ PKG_CHECK_MODULES(READLINE, [readline], [have_readline="yes"], - AM_CONDITIONAL([WITH_READLINE], [test "x$have_readline" = "xyes"]) - - ##### additional checks ##### --AX_COMPILE_CHECK_SIZEOF(size_t) --AX_COMPILE_CHECK_SIZEOF(int) --AX_COMPILE_CHECK_SIZEOF(long) --AX_COMPILE_CHECK_SIZEOF(long long) -- - AC_CHECK_HEADERS([sys/xattr.h], [], []) - AC_CHECK_HEADERS([sys/sysinfo.h], [], []) - AC_CHECK_HEADERS([alloca.h], [], []) -diff --git a/include/compat.h b/include/compat.h -index 8a2522e..e82f2ad 100644 ---- a/include/compat.h -+++ b/include/compat.h -@@ -10,17 +10,19 @@ - #include "sqfs/predef.h" - #include "config.h" - -+#include <limits.h> -+ - #if defined(__GNUC__) && __GNUC__ >= 5 - # define SZ_ADD_OV __builtin_add_overflow - # define SZ_MUL_OV __builtin_mul_overflow - #elif defined(__clang__) && defined(__GNUC__) && __GNUC__ < 5 --# if SIZEOF_SIZE_T <= SIZEOF_INT -+# if SIZE_MAX <= UINT_MAX - # define SZ_ADD_OV __builtin_uadd_overflow - # define SZ_MUL_OV __builtin_umul_overflow --# elif SIZEOF_SIZE_T == SIZEOF_LONG -+# elif SIZE_MAX == ULONG_MAX - # define SZ_ADD_OV __builtin_uaddl_overflow - # define SZ_MUL_OV __builtin_umull_overflow --# elif SIZEOF_SIZE_T == SIZEOF_LONG_LONG -+# elif SIZE_MAX == ULLONG_MAX - # define SZ_ADD_OV __builtin_uaddll_overflow - # define SZ_MUL_OV __builtin_umulll_overflow - # else -@@ -51,11 +53,11 @@ static inline int _sz_mul_overflow(size_t a, size_t b, size_t *res) - # define PRI_U32 "%" PRIu32 - #endif - --#if SIZEOF_SIZE_T <= SIZEOF_INT -+#if SIZE_MAX <= UINT_MAX - # define PRI_SZ "%u" --#elif SIZEOF_SIZE_T == SIZEOF_LONG -+#elif SIZE_MAX == ULONG_MAX - # define PRI_SZ "%lu" --#elif defined(_WIN32) && SIZEOF_SIZE_T == 8 -+#elif defined(_WIN32) && SIZE_MAX == UINT64_MAX - # define PRI_SZ "%I64u" - #else - # error Cannot figure out propper printf specifier for size_t -diff --git a/m4/ax_compile_check_sizeof.m4 b/m4/ax_compile_check_sizeof.m4 -deleted file mode 100644 -index f834df6..0000000 ---- a/m4/ax_compile_check_sizeof.m4 -+++ /dev/null -@@ -1,115 +0,0 @@ --# ============================================================================ --# https://www.gnu.org/software/autoconf-archive/ax_compile_check_sizeof.html --# ============================================================================ --# --# SYNOPSIS --# --# AX_COMPILE_CHECK_SIZEOF(TYPE [, HEADERS [, EXTRA_SIZES...]]) --# --# DESCRIPTION --# --# This macro checks for the size of TYPE using compile checks, not run --# checks. You can supply extra HEADERS to look into. the check will cycle --# through 1 2 4 8 16 and any EXTRA_SIZES the user supplies. If a match is --# found, it will #define SIZEOF_`TYPE' to that value. Otherwise it will --# emit a configure time error indicating the size of the type could not be --# determined. --# --# The trick is that C will not allow duplicate case labels. While this is --# valid C code: --# --# switch (0) case 0: case 1:; --# --# The following is not: --# --# switch (0) case 0: case 0:; --# --# Thus, the AC_COMPILE_IFELSE will fail if the currently tried size does --# not match. --# --# Here is an example skeleton configure.in script, demonstrating the --# macro's usage: --# --# AC_PROG_CC --# AC_CHECK_HEADERS(stddef.h unistd.h) --# AC_TYPE_SIZE_T --# AC_CHECK_TYPE(ssize_t, int) --# --# headers='#ifdef HAVE_STDDEF_H --# #include <stddef.h> --# #endif --# #ifdef HAVE_UNISTD_H --# #include <unistd.h> --# #endif --# ' --# --# AX_COMPILE_CHECK_SIZEOF(char) --# AX_COMPILE_CHECK_SIZEOF(short) --# AX_COMPILE_CHECK_SIZEOF(int) --# AX_COMPILE_CHECK_SIZEOF(long) --# AX_COMPILE_CHECK_SIZEOF(unsigned char *) --# AX_COMPILE_CHECK_SIZEOF(void *) --# AX_COMPILE_CHECK_SIZEOF(size_t, $headers) --# AX_COMPILE_CHECK_SIZEOF(ssize_t, $headers) --# AX_COMPILE_CHECK_SIZEOF(ptrdiff_t, $headers) --# AX_COMPILE_CHECK_SIZEOF(off_t, $headers) --# --# LICENSE --# --# Copyright (c) 2008 Kaveh Ghazi <ghazi@caip.rutgers.edu> --# Copyright (c) 2017 Reini Urban <rurban@cpan.org> --# --# 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 <https://www.gnu.org/licenses/>. --# --# As a special exception, the respective Autoconf Macro's copyright owner --# gives unlimited permission to copy, distribute and modify the configure --# scripts that are the output of Autoconf when processing the Macro. You --# need not follow the terms of the GNU General Public License when using --# or distributing such scripts, even though portions of the text of the --# Macro appear in them. The GNU General Public License (GPL) does govern --# all other use of the material that constitutes the Autoconf Macro. --# --# This special exception to the GPL applies to versions of the Autoconf --# Macro released by the Autoconf Archive. When you make and distribute a --# modified version of the Autoconf Macro, you may extend this special --# exception to the GPL to apply to your modified version as well. -- --#serial 8 -- --AU_ALIAS([AC_COMPILE_CHECK_SIZEOF], [AX_COMPILE_CHECK_SIZEOF]) --AC_DEFUN([AX_COMPILE_CHECK_SIZEOF], --[changequote(<<, >>)dnl --dnl The name to #define. --define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl --dnl The cache variable name. --define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl --changequote([, ])dnl --AC_MSG_CHECKING(size of $1) --AC_CACHE_VAL(AC_CV_NAME, --[for ac_size in 4 8 1 2 16 $3 ; do # List sizes in rough order of prevalence. -- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ --#include <sys/types.h> --$2 --]], [[switch (0) case 0: case (sizeof ($1) == $ac_size):;]])], [AC_CV_NAME=$ac_size]) -- if test x$AC_CV_NAME != x ; then break; fi --done --]) --if test x$AC_CV_NAME = x ; then -- AC_MSG_ERROR([cannot determine a size for $1]) --fi --AC_MSG_RESULT($AC_CV_NAME) --AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1]) --undefine([AC_TYPE_NAME])dnl --undefine([AC_CV_NAME])dnl --]) --- -2.31.1 - diff --git a/pkg/squashfs-tools-ng/patch/0002-Avoid-unnecessary-VLAs.patch b/pkg/squashfs-tools-ng/patch/0002-Avoid-unnecessary-VLAs.patch @@ -1,57 +0,0 @@ -From ce07abcd65ad1d5c39c53b39a16bc8d960fd3279 Mon Sep 17 00:00:00 2001 -From: Michael Forney <mforney@mforney.org> -Date: Sat, 30 May 2020 01:50:48 -0700 -Subject: [PATCH] Avoid unnecessary VLAs - -All compressors use only 8 bytes for options, so just use a fixed -32-byte buffer. ---- - lib/sqfs/comp/compressor.c | 16 +++++++++++----- - 1 file changed, 11 insertions(+), 5 deletions(-) - -diff --git a/lib/sqfs/comp/compressor.c b/lib/sqfs/comp/compressor.c -index 946ee25..7e3f092 100644 ---- a/lib/sqfs/comp/compressor.c -+++ b/lib/sqfs/comp/compressor.c -@@ -42,27 +42,33 @@ static const char *names[] = { - - int sqfs_generic_write_options(sqfs_file_t *file, const void *data, size_t size) - { -- sqfs_u8 buffer[size + 2]; -+ sqfs_u8 buffer[32]; - int ret; - -+ if (size > sizeof(buffer) - 2) -+ return SQFS_ERROR_INTERNAL; -+ - *((sqfs_u16 *)buffer) = htole16(0x8000 | size); - memcpy(buffer + 2, data, size); - - ret = file->write_at(file, sizeof(sqfs_super_t), -- buffer, sizeof(buffer)); -+ buffer, 2 + size); - if (ret) - return ret; - -- return sizeof(buffer); -+ return 2 + size; - } - - int sqfs_generic_read_options(sqfs_file_t *file, void *data, size_t size) - { -- sqfs_u8 buffer[size + 2]; -+ sqfs_u8 buffer[32]; - int ret; - -+ if (size > sizeof(buffer) - 2) -+ return SQFS_ERROR_INTERNAL; -+ - ret = file->read_at(file, sizeof(sqfs_super_t), -- buffer, sizeof(buffer)); -+ buffer, 2 + size); - if (ret) - return ret; - --- -2.26.2 - diff --git a/pkg/squashfs-tools-ng/ver b/pkg/squashfs-tools-ng/ver @@ -1 +1 @@ -1.1.1 r0 +1.1.2 r0