The system is: Linux - 5.15.64-1-pve - x86_64 Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. Compiler: /usr/bin/gcc Build flags: -O2 Id flags: The output was: 0 Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" The C compiler identification is GNU, found in "/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/3.22.3/CompilerIdC/a.out" Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. Compiler: /usr/bin/g++ Build flags: -O2 Id flags: The output was: 0 Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" The CXX compiler identification is GNU, found in "/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/3.22.3/CompilerIdCXX/a.out" Detecting C compiler ABI info compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83e47/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_83e47.dir/build.make CMakeFiles/cmTC_83e47.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o /usr/bin/gcc -O2 -v -o CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCCompilerABI.c Using built-in specs. COLLECT_GCC=/usr/bin/gcc OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.1 20210110 (Debian 10.2.1-6) COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/10/cc1 -quiet -v -imultiarch x86_64-linux-gnu /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -O2 -version -fasynchronous-unwind-tables -o /tmp/ccaIBjea.s GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fixed" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/lib/gcc/x86_64-linux-gnu/10/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include End of search list. GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 1f803793fa2e3418c492b25e7d3eac2f COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' as -v --64 -o CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o /tmp/ccaIBjea.s GNU assembler version 2.35.2 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.35.2 COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' Linking C executable cmTC_83e47 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_83e47.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -v CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -o cmTC_83e47 Using built-in specs. COLLECT_GCC=/usr/bin/gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.1 20210110 (Debian 10.2.1-6) COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_83e47' '-mtune=generic' '-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/10/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper -plugin-opt=-fresolution=/tmp/ccwlmW9q.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_83e47 /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o -L/tmp/instance-18/output-1/host/lib -L/usr/lib/gcc/x86_64-linux-gnu/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. -rpath /tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_83e47' '-mtune=generic' '-march=x86-64' gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Parsed C implicit include dir info from above output: rv=done found start of include info found start of implicit include info add: [/usr/lib/gcc/x86_64-linux-gnu/10/include] add: [/usr/local/include] add: [/usr/include/x86_64-linux-gnu] add: [/usr/include] end of search list found collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/10/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/10/include] collapse include dir [/usr/local/include] ==> [/usr/local/include] collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] collapse include dir [/usr/include] ==> [/usr/include] implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/10/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] Parsed C implicit link information from above output: link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] ignore line: [Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp] ignore line: [] ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83e47/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp'] ignore line: [gmake -f CMakeFiles/cmTC_83e47.dir/build.make CMakeFiles/cmTC_83e47.dir/build] ignore line: [gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp'] ignore line: [Building C object CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o] ignore line: [/usr/bin/gcc -O2 -v -o CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCCompilerABI.c] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/gcc] ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa] ignore line: [OFFLOAD_TARGET_DEFAULT=1] ignore line: [Target: x86_64-linux-gnu] ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex] ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 10.2.1 20210110 (Debian 10.2.1-6) ] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64'] ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/10/cc1 -quiet -v -imultiarch x86_64-linux-gnu /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -O2 -version -fasynchronous-unwind-tables -o /tmp/ccaIBjea.s] ignore line: [GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu)] ignore line: [ compiled by GNU C version 10.2.1 20210110 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.0 isl version isl-0.23-GMP] ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fixed"] ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include"] ignore line: [#include "..." search starts here:] ignore line: [#include <...> search starts here:] ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/10/include] ignore line: [ /usr/local/include] ignore line: [ /usr/include/x86_64-linux-gnu] ignore line: [ /usr/include] ignore line: [End of search list.] ignore line: [GNU C17 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu)] ignore line: [ compiled by GNU C version 10.2.1 20210110 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.0 isl version isl-0.23-GMP] ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [Compiler executable checksum: 1f803793fa2e3418c492b25e7d3eac2f] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64'] ignore line: [ as -v --64 -o CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o /tmp/ccaIBjea.s] ignore line: [GNU assembler version 2.35.2 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.35.2] ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64'] ignore line: [Linking C executable cmTC_83e47] ignore line: [/tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_83e47.dir/link.txt --verbose=1] ignore line: [/usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl -rpath /tmp/instance-18/output-1/host/lib -v CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -o cmTC_83e47 ] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/gcc] ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper] ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa] ignore line: [OFFLOAD_TARGET_DEFAULT=1] ignore line: [Target: x86_64-linux-gnu] ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex] ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 10.2.1 20210110 (Debian 10.2.1-6) ] ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_83e47' '-mtune=generic' '-march=x86-64'] link line: [ /usr/lib/gcc/x86_64-linux-gnu/10/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper -plugin-opt=-fresolution=/tmp/ccwlmW9q.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_83e47 /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o -L/tmp/instance-18/output-1/host/lib -L/usr/lib/gcc/x86_64-linux-gnu/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. -rpath /tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/collect2] ==> ignore arg [-plugin] ==> ignore arg [/usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so] ==> ignore arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper] ==> ignore arg [-plugin-opt=-fresolution=/tmp/ccwlmW9q.res] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [-plugin-opt=-pass-through=-lc] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [--build-id] ==> ignore arg [--eh-frame-hdr] ==> ignore arg [-m] ==> ignore arg [elf_x86_64] ==> ignore arg [--hash-style=gnu] ==> ignore arg [--as-needed] ==> ignore arg [-dynamic-linker] ==> ignore arg [/lib64/ld-linux-x86-64.so.2] ==> ignore arg [-pie] ==> ignore arg [-o] ==> ignore arg [cmTC_83e47] ==> ignore arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o] arg [-L/tmp/instance-18/output-1/host/lib] ==> dir [/tmp/instance-18/output-1/host/lib] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] arg [-L/lib/../lib] ==> dir [/lib/../lib] arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../..] arg [-rpath] ==> ignore arg [/tmp/instance-18/output-1/host/lib] ==> ignore arg [CMakeFiles/cmTC_83e47.dir/CMakeCCompilerABI.c.o] ==> ignore arg [-lgcc] ==> lib [gcc] arg [--push-state] ==> ignore arg [--as-needed] ==> ignore arg [-lgcc_s] ==> lib [gcc_s] arg [--pop-state] ==> ignore arg [-lc] ==> lib [c] arg [-lgcc] ==> lib [gcc] arg [--push-state] ==> ignore arg [--as-needed] ==> ignore arg [-lgcc_s] ==> lib [gcc_s] arg [--pop-state] ==> ignore arg [/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] collapse library dir [/tmp/instance-18/output-1/host/lib] ==> [/tmp/instance-18/output-1/host/lib] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10] ==> [/usr/lib/gcc/x86_64-linux-gnu/10] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] ==> [/usr/lib] collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] collapse library dir [/lib/../lib] ==> [/lib] collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] collapse library dir [/usr/lib/../lib] ==> [/usr/lib] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../..] ==> [/usr/lib] implicit libs: [gcc;gcc_s;c;gcc;gcc_s] implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] implicit dirs: [/tmp/instance-18/output-1/host/lib;/usr/lib/gcc/x86_64-linux-gnu/10;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] implicit fwks: [] Detecting CXX compiler ABI info compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_537c9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_537c9.dir/build.make CMakeFiles/cmTC_537c9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o /usr/bin/g++ -O2 -v -o CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCXXCompilerABI.cpp Using built-in specs. COLLECT_GCC=/usr/bin/g++ OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.1 20210110 (Debian 10.2.1-6) COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/10/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -O2 -version -fasynchronous-unwind-tables -o /tmp/ccIvG5v5.s GNU C++14 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/10" ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fixed" ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/include/c++/10 /usr/include/x86_64-linux-gnu/c++/10 /usr/include/c++/10/backward /usr/lib/gcc/x86_64-linux-gnu/10/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include End of search list. GNU C++14 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu) compiled by GNU C version 10.2.1 20210110, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.0, isl version isl-0.23-GMP GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 048fcaee3460a99eb0d68522358720e1 COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' as -v --64 -o CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccIvG5v5.s GNU assembler version 2.35.2 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.35.2 COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' Linking CXX executable cmTC_537c9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_537c9.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -v CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_537c9 Using built-in specs. COLLECT_GCC=/usr/bin/g++ COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa OFFLOAD_TARGET_DEFAULT=1 Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.2.1 20210110 (Debian 10.2.1-6) COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_537c9' '-shared-libgcc' '-mtune=generic' '-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/10/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper -plugin-opt=-fresolution=/tmp/cc7Jnwcn.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_537c9 /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o -L/tmp/instance-18/output-1/host/lib -L/usr/lib/gcc/x86_64-linux-gnu/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. -rpath /tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_537c9' '-shared-libgcc' '-mtune=generic' '-march=x86-64' gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Parsed CXX implicit include dir info from above output: rv=done found start of include info found start of implicit include info add: [/usr/include/c++/10] add: [/usr/include/x86_64-linux-gnu/c++/10] add: [/usr/include/c++/10/backward] add: [/usr/lib/gcc/x86_64-linux-gnu/10/include] add: [/usr/local/include] add: [/usr/include/x86_64-linux-gnu] add: [/usr/include] end of search list found collapse include dir [/usr/include/c++/10] ==> [/usr/include/c++/10] collapse include dir [/usr/include/x86_64-linux-gnu/c++/10] ==> [/usr/include/x86_64-linux-gnu/c++/10] collapse include dir [/usr/include/c++/10/backward] ==> [/usr/include/c++/10/backward] collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/10/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/10/include] collapse include dir [/usr/local/include] ==> [/usr/local/include] collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] collapse include dir [/usr/include] ==> [/usr/include] implicit include dirs: [/usr/include/c++/10;/usr/include/x86_64-linux-gnu/c++/10;/usr/include/c++/10/backward;/usr/lib/gcc/x86_64-linux-gnu/10/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] Parsed CXX implicit link information from above output: link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] ignore line: [Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp] ignore line: [] ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_537c9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp'] ignore line: [gmake -f CMakeFiles/cmTC_537c9.dir/build.make CMakeFiles/cmTC_537c9.dir/build] ignore line: [gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp'] ignore line: [Building CXX object CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o] ignore line: [/usr/bin/g++ -O2 -v -o CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCXXCompilerABI.cpp] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/g++] ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa] ignore line: [OFFLOAD_TARGET_DEFAULT=1] ignore line: [Target: x86_64-linux-gnu] ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex] ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 10.2.1 20210110 (Debian 10.2.1-6) ] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/10/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -O2 -version -fasynchronous-unwind-tables -o /tmp/ccIvG5v5.s] ignore line: [GNU C++14 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu)] ignore line: [ compiled by GNU C version 10.2.1 20210110 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.0 isl version isl-0.23-GMP] ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/10"] ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/include-fixed"] ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include"] ignore line: [#include "..." search starts here:] ignore line: [#include <...> search starts here:] ignore line: [ /usr/include/c++/10] ignore line: [ /usr/include/x86_64-linux-gnu/c++/10] ignore line: [ /usr/include/c++/10/backward] ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/10/include] ignore line: [ /usr/local/include] ignore line: [ /usr/include/x86_64-linux-gnu] ignore line: [ /usr/include] ignore line: [End of search list.] ignore line: [GNU C++14 (Debian 10.2.1-6) version 10.2.1 20210110 (x86_64-linux-gnu)] ignore line: [ compiled by GNU C version 10.2.1 20210110 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.0 isl version isl-0.23-GMP] ignore line: [] ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] ignore line: [Compiler executable checksum: 048fcaee3460a99eb0d68522358720e1] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] ignore line: [ as -v --64 -o CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccIvG5v5.s] ignore line: [GNU assembler version 2.35.2 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.35.2] ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-v' '-o' 'CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] ignore line: [Linking CXX executable cmTC_537c9] ignore line: [/tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_537c9.dir/link.txt --verbose=1] ignore line: [/usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl -rpath /tmp/instance-18/output-1/host/lib -v CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_537c9 ] ignore line: [Using built-in specs.] ignore line: [COLLECT_GCC=/usr/bin/g++] ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper] ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa:hsa] ignore line: [OFFLOAD_TARGET_DEFAULT=1] ignore line: [Target: x86_64-linux-gnu] ignore line: [Configured with: ../src/configure -v --with-pkgversion='Debian 10.2.1-6' --with-bugurl=file:///usr/share/doc/gcc-10/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-10 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-10-Km9U7s/gcc-10-10.2.1/debian/tmp-gcn/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-mutex] ignore line: [Thread model: posix] ignore line: [Supported LTO compression algorithms: zlib zstd] ignore line: [gcc version 10.2.1 20210110 (Debian 10.2.1-6) ] ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/] ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/10/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/10/../../../:/lib/:/usr/lib/] ignore line: [COLLECT_GCC_OPTIONS='-O2' '-L/tmp/instance-18/output-1/host/lib' '-v' '-o' 'cmTC_537c9' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] link line: [ /usr/lib/gcc/x86_64-linux-gnu/10/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper -plugin-opt=-fresolution=/tmp/cc7Jnwcn.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_537c9 /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o -L/tmp/instance-18/output-1/host/lib -L/usr/lib/gcc/x86_64-linux-gnu/10 -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/10/../../.. -rpath /tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/collect2] ==> ignore arg [-plugin] ==> ignore arg [/usr/lib/gcc/x86_64-linux-gnu/10/liblto_plugin.so] ==> ignore arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/10/lto-wrapper] ==> ignore arg [-plugin-opt=-fresolution=/tmp/cc7Jnwcn.res] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [-plugin-opt=-pass-through=-lc] ==> ignore arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore arg [-plugin-opt=-pass-through=-lgcc] ==> ignore arg [--build-id] ==> ignore arg [--eh-frame-hdr] ==> ignore arg [-m] ==> ignore arg [elf_x86_64] ==> ignore arg [--hash-style=gnu] ==> ignore arg [--as-needed] ==> ignore arg [-dynamic-linker] ==> ignore arg [/lib64/ld-linux-x86-64.so.2] ==> ignore arg [-pie] ==> ignore arg [-o] ==> ignore arg [cmTC_537c9] ==> ignore arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o] arg [-L/tmp/instance-18/output-1/host/lib] ==> dir [/tmp/instance-18/output-1/host/lib] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] arg [-L/lib/../lib] ==> dir [/lib/../lib] arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] arg [-L/usr/lib/gcc/x86_64-linux-gnu/10/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../..] arg [-rpath] ==> ignore arg [/tmp/instance-18/output-1/host/lib] ==> ignore arg [CMakeFiles/cmTC_537c9.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore arg [-lstdc++] ==> lib [stdc++] arg [-lm] ==> lib [m] arg [-lgcc_s] ==> lib [gcc_s] arg [-lgcc] ==> lib [gcc] arg [-lc] ==> lib [c] arg [-lgcc_s] ==> lib [gcc_s] arg [-lgcc] ==> lib [gcc] arg [/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o] arg [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] collapse obj [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] collapse library dir [/tmp/instance-18/output-1/host/lib] ==> [/tmp/instance-18/output-1/host/lib] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10] ==> [/usr/lib/gcc/x86_64-linux-gnu/10] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../../../lib] ==> [/usr/lib] collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] collapse library dir [/lib/../lib] ==> [/lib] collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] collapse library dir [/usr/lib/../lib] ==> [/usr/lib] collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/10/../../..] ==> [/usr/lib] implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/10/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/10/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] implicit dirs: [/tmp/instance-18/output-1/host/lib;/usr/lib/gcc/x86_64-linux-gnu/10;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] implicit fwks: [] Determining if compiler supports C11 _Thread_local passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5d203/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5d203.dir/build.make CMakeFiles/cmTC_5d203.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5d203.dir/cm_c11_thread_local.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_5d203.dir/cm_c11_thread_local.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/Checks/cm_c11_thread_local.c Linking C executable cmTC_5d203 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5d203.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_5d203.dir/cm_c11_thread_local.c.o -o cmTC_5d203 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if compiler supports needed C++17 constructs passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6049b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6049b.dir/build.make CMakeFiles/cmTC_6049b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_6049b.dir/cm_cxx17_check.cpp.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_6049b.dir/cm_cxx17_check.cpp.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/Checks/cm_cxx17_check.cpp Linking CXX executable cmTC_6049b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6049b.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_6049b.dir/cm_cxx17_check.cpp.o -o cmTC_6049b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if compiler supports C++ make_unique passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d4c65/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d4c65.dir/build.make CMakeFiles/cmTC_d4c65.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_d4c65.dir/cm_cxx_make_unique.cxx.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_d4c65.dir/cm_cxx_make_unique.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/Checks/cm_cxx_make_unique.cxx Linking CXX executable cmTC_d4c65 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d4c65.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d4c65.dir/cm_cxx_make_unique.cxx.o -o cmTC_d4c65 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if compiler supports C++ filesystem passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_feb21/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_feb21.dir/build.make CMakeFiles/cmTC_feb21.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_feb21.dir/cm_cxx_filesystem.cxx.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_feb21.dir/cm_cxx_filesystem.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/Checks/cm_cxx_filesystem.cxx Linking CXX executable cmTC_feb21 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_feb21.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_feb21.dir/cm_cxx_filesystem.cxx.o -o cmTC_feb21 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the unsetenv exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_eb5e0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_eb5e0.dir/build.make CMakeFiles/cmTC_eb5e0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_eb5e0.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_eb5e0.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_eb5e0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_eb5e0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_eb5e0.dir/CheckSymbolExists.c.o -o cmTC_eb5e0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef unsetenv return ((int*)(&unsetenv))[argc]; #else (void)argc; return 0; #endif } Determining if the include file pthread.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_57768/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_57768.dir/build.make CMakeFiles/cmTC_57768.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_57768.dir/CheckIncludeFile.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_57768.dir/CheckIncludeFile.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c Linking C executable cmTC_57768 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_57768.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_57768.dir/CheckIncludeFile.c.o -o cmTC_57768 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function pthread_create exists in the pthread passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7b63c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7b63c.dir/build.make CMakeFiles/cmTC_7b63c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7b63c.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -DCHECK_FUNCTION_EXISTS=pthread_create -std=gnu11 -o CMakeFiles/cmTC_7b63c.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_7b63c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7b63c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -DCHECK_FUNCTION_EXISTS=pthread_create -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_7b63c.dir/CheckFunctionExists.c.o -o cmTC_7b63c -lpthread gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking whether wstring is available compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f628e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f628e.dir/build.make CMakeFiles/cmTC_f628e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_f628e.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_STL_HAS_WSTRING -O2 -std=gnu++17 -o CMakeFiles/cmTC_f628e.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_f628e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f628e.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_f628e.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_f628e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether C compiler has ptrdiff_t in stddef.h compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e4589/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e4589.dir/build.make CMakeFiles/cmTC_e4589.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e4589.dir/kwsysPlatformTestsC.c.o /usr/bin/gcc -DTEST_KWSYS_C_HAS_PTRDIFF_T -O2 -std=gnu11 -o CMakeFiles/cmTC_e4589.dir/kwsysPlatformTestsC.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsC.c Linking C executable cmTC_e4589 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e4589.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_e4589.dir/kwsysPlatformTestsC.c.o -o cmTC_e4589 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether C compiler has ssize_t in unistd.h compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_03449/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_03449.dir/build.make CMakeFiles/cmTC_03449.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_03449.dir/kwsysPlatformTestsC.c.o /usr/bin/gcc -DTEST_KWSYS_C_HAS_SSIZE_T -O2 -std=gnu11 -o CMakeFiles/cmTC_03449.dir/kwsysPlatformTestsC.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsC.c Linking C executable cmTC_03449 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_03449.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_03449.dir/kwsysPlatformTestsC.c.o -o cmTC_03449 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether C compiler has clock_gettime compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0b9f8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_0b9f8.dir/build.make CMakeFiles/cmTC_0b9f8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_0b9f8.dir/kwsysPlatformTestsC.c.o /usr/bin/gcc -DTEST_KWSYS_C_HAS_CLOCK_GETTIME_MONOTONIC -O2 -std=gnu11 -o CMakeFiles/cmTC_0b9f8.dir/kwsysPlatformTestsC.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsC.c Linking C executable cmTC_0b9f8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_0b9f8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_0b9f8.dir/kwsysPlatformTestsC.c.o -o cmTC_0b9f8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler has setenv compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ef4b8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ef4b8.dir/build.make CMakeFiles/cmTC_ef4b8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_ef4b8.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_SETENV -O2 -std=gnu++17 -o CMakeFiles/cmTC_ef4b8.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_ef4b8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ef4b8.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_ef4b8.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_ef4b8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler has unsetenv compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_80311/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_80311.dir/build.make CMakeFiles/cmTC_80311.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_80311.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_UNSETENV -O2 -std=gnu++17 -o CMakeFiles/cmTC_80311.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_80311 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_80311.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_80311.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_80311 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler has utimes compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6c6b0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6c6b0.dir/build.make CMakeFiles/cmTC_6c6b0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_6c6b0.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_UTIMES -O2 -std=gnu++17 -o CMakeFiles/cmTC_6c6b0.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_6c6b0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6c6b0.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_6c6b0.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_6c6b0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler has utimensat compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cae11/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cae11.dir/build.make CMakeFiles/cmTC_cae11.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_cae11.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_UTIMENSAT -O2 -std=gnu++17 -o CMakeFiles/cmTC_cae11.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_cae11 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cae11.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_cae11.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_cae11 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler struct stat has st_mtim member compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_341b6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_341b6.dir/build.make CMakeFiles/cmTC_341b6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_341b6.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_STAT_HAS_ST_MTIM -O2 -std=gnu++17 -o CMakeFiles/cmTC_341b6.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_341b6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_341b6.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_341b6.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_341b6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ifaddrs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0964e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_0964e.dir/build.make CMakeFiles/cmTC_0964e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_0964e.dir/KWSYS_SYS_HAS_IFADDRS_H.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_0964e.dir/KWSYS_SYS_HAS_IFADDRS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/KWSYS_SYS_HAS_IFADDRS_H.c Linking C executable cmTC_0964e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_0964e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_0964e.dir/KWSYS_SYS_HAS_IFADDRS_H.c.o -o cmTC_0964e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking whether CXX compiler has rlimit64 compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_bb14b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_bb14b.dir/build.make CMakeFiles/cmTC_bb14b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_bb14b.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_RLIMIT64 -O2 -std=gnu++17 -o CMakeFiles/cmTC_bb14b.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_bb14b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_bb14b.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_bb14b.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_bb14b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Determining if the include file execinfo.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_326df/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_326df.dir/build.make CMakeFiles/cmTC_326df.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_326df.dir/CheckIncludeFile.cxx.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_326df.dir/CheckIncludeFile.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx Linking CXX executable cmTC_326df /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_326df.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_326df.dir/CheckIncludeFile.cxx.o -o cmTC_326df gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking whether backtrace works with this C++ compiler compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6f47f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6f47f.dir/build.make CMakeFiles/cmTC_6f47f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_6f47f.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_BACKTRACE -O2 -std=gnu++17 -o CMakeFiles/cmTC_6f47f.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_6f47f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6f47f.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_6f47f.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_6f47f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Determining if the include file dlfcn.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7e8a9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7e8a9.dir/build.make CMakeFiles/cmTC_7e8a9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_7e8a9.dir/CheckIncludeFile.cxx.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_7e8a9.dir/CheckIncludeFile.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx Linking CXX executable cmTC_7e8a9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7e8a9.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_7e8a9.dir/CheckIncludeFile.cxx.o -o cmTC_7e8a9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking whether dladdr works with this C++ compiler compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5f35b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5f35b.dir/build.make CMakeFiles/cmTC_5f35b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_5f35b.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_DLADDR -O2 -std=gnu++17 -o CMakeFiles/cmTC_5f35b.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_5f35b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5f35b.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_5f35b.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_5f35b -ldl gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Determining if the include file cxxabi.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_24409/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_24409.dir/build.make CMakeFiles/cmTC_24409.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_24409.dir/CheckIncludeFile.cxx.o /usr/bin/g++ -O2 -std=gnu++17 -o CMakeFiles/cmTC_24409.dir/CheckIncludeFile.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx Linking CXX executable cmTC_24409 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_24409.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_24409.dir/CheckIncludeFile.cxx.o -o cmTC_24409 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking whether cxxabi works with this C++ compiler compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_37047/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_37047.dir/build.make CMakeFiles/cmTC_37047.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_37047.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_CXXABI -O2 -std=gnu++17 -o CMakeFiles/cmTC_37047.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_37047 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_37047.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_37047.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_37047 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether CXX compiler has getloadavg compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b2757/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b2757.dir/build.make CMakeFiles/cmTC_b2757.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_b2757.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_GETLOADAVG -O2 -std=gnu++17 -o CMakeFiles/cmTC_b2757.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_b2757 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b2757.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_b2757.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_b2757 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Checking whether is available compiled with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0fb1a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_0fb1a.dir/build.make CMakeFiles/cmTC_0fb1a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_0fb1a.dir/kwsysPlatformTestsCXX.cxx.o /usr/bin/g++ -DTEST_KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H -O2 -std=gnu++17 -o CMakeFiles/cmTC_0fb1a.dir/kwsysPlatformTestsCXX.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/kwsysPlatformTestsCXX.cxx Linking CXX executable cmTC_0fb1a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_0fb1a.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_0fb1a.dir/kwsysPlatformTestsCXX.cxx.o -o cmTC_0fb1a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/Source/kwsys/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_SOCKADDR_IN6_SIN6_ADDR succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_2d170/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_2d170.dir/build.make CMakeFiles/cmTC_2d170.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_2d170.dir/src.c.o /usr/bin/gcc -DHAVE_SOCKADDR_IN6_SIN6_ADDR -O2 -w -std=gnu11 -o CMakeFiles/cmTC_2d170.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_2d170 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_2d170.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_2d170.dir/src.c.o -o cmTC_2d170 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() { (void)sizeof(((struct sockaddr_in6 *)0)->sin6_addr); return 0; } Performing C SOURCE FILE Test HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_392aa/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_392aa.dir/build.make CMakeFiles/cmTC_392aa.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_392aa.dir/src.c.o /usr/bin/gcc -DHAVE_SOCKADDR_IN6_SIN6_SCOPE_ID -O2 -w -std=gnu11 -o CMakeFiles/cmTC_392aa.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_392aa /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_392aa.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_392aa.dir/src.c.o -o cmTC_392aa gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() { (void)sizeof(((struct sockaddr_in6 *)0)->sin6_scope_id); return 0; } Determining if the function gethostbyname exists in the c passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_81499/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_81499.dir/build.make CMakeFiles/cmTC_81499.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_81499.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=gethostbyname -std=gnu11 -o CMakeFiles/cmTC_81499.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_81499 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_81499.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=gethostbyname -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_81499.dir/CheckFunctionExists.c.o -o cmTC_81499 -lc gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function gethostname exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_60208/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_60208.dir/build.make CMakeFiles/cmTC_60208.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_60208.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=gethostname -std=gnu11 -o CMakeFiles/cmTC_60208.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_60208 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_60208.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=gethostname -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_60208.dir/CheckFunctionExists.c.o -o cmTC_60208 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c686b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c686b.dir/build.make CMakeFiles/cmTC_c686b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c686b.dir/HAVE_INTTYPES_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c686b.dir/HAVE_INTTYPES_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_INTTYPES_H.c Linking C executable cmTC_c686b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c686b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_c686b.dir/HAVE_INTTYPES_H.c.o -o cmTC_c686b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f7881/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f7881.dir/build.make CMakeFiles/cmTC_f7881.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f7881.dir/HAVE_SYS_IOCTL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_f7881.dir/HAVE_SYS_IOCTL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_IOCTL_H.c Linking C executable cmTC_f7881 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f7881.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_f7881.dir/HAVE_SYS_IOCTL_H.c.o -o cmTC_f7881 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ca50b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ca50b.dir/build.make CMakeFiles/cmTC_ca50b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ca50b.dir/HAVE_SYS_PARAM_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_ca50b.dir/HAVE_SYS_PARAM_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_PARAM_H.c Linking C executable cmTC_ca50b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ca50b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_ca50b.dir/HAVE_SYS_PARAM_H.c.o -o cmTC_ca50b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_572b8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_572b8.dir/build.make CMakeFiles/cmTC_572b8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_572b8.dir/HAVE_SYS_POLL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_572b8.dir/HAVE_SYS_POLL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_POLL_H.c Linking C executable cmTC_572b8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_572b8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_572b8.dir/HAVE_SYS_POLL_H.c.o -o cmTC_572b8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_78b60/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_78b60.dir/build.make CMakeFiles/cmTC_78b60.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_78b60.dir/HAVE_SYS_RESOURCE_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_78b60.dir/HAVE_SYS_RESOURCE_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_RESOURCE_H.c Linking C executable cmTC_78b60 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_78b60.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_78b60.dir/HAVE_SYS_RESOURCE_H.c.o -o cmTC_78b60 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_64b6c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_64b6c.dir/build.make CMakeFiles/cmTC_64b6c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_64b6c.dir/HAVE_SYS_SELECT_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_64b6c.dir/HAVE_SYS_SELECT_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_SELECT_H.c Linking C executable cmTC_64b6c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_64b6c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_64b6c.dir/HAVE_SYS_SELECT_H.c.o -o cmTC_64b6c gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c3d0f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c3d0f.dir/build.make CMakeFiles/cmTC_c3d0f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c3d0f.dir/HAVE_SYS_SOCKET_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c3d0f.dir/HAVE_SYS_SOCKET_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_SOCKET_H.c Linking C executable cmTC_c3d0f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c3d0f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_c3d0f.dir/HAVE_SYS_SOCKET_H.c.o -o cmTC_c3d0f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_2df84/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_2df84.dir/build.make CMakeFiles/cmTC_2df84.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_2df84.dir/HAVE_SYS_STAT_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_2df84.dir/HAVE_SYS_STAT_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_STAT_H.c Linking C executable cmTC_2df84 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_2df84.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_2df84.dir/HAVE_SYS_STAT_H.c.o -o cmTC_2df84 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d5b76/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d5b76.dir/build.make CMakeFiles/cmTC_d5b76.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d5b76.dir/HAVE_SYS_TIME_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d5b76.dir/HAVE_SYS_TIME_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_TIME_H.c Linking C executable cmTC_d5b76 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d5b76.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_d5b76.dir/HAVE_SYS_TIME_H.c.o -o cmTC_d5b76 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_47dad/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_47dad.dir/build.make CMakeFiles/cmTC_47dad.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_47dad.dir/HAVE_SYS_TYPES_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_47dad.dir/HAVE_SYS_TYPES_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_TYPES_H.c Linking C executable cmTC_47dad /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_47dad.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_47dad.dir/HAVE_SYS_TYPES_H.c.o -o cmTC_47dad gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5e325/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5e325.dir/build.make CMakeFiles/cmTC_5e325.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5e325.dir/HAVE_SYS_UIO_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5e325.dir/HAVE_SYS_UIO_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_UIO_H.c Linking C executable cmTC_5e325 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5e325.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_5e325.dir/HAVE_SYS_UIO_H.c.o -o cmTC_5e325 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_67cc9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_67cc9.dir/build.make CMakeFiles/cmTC_67cc9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_67cc9.dir/HAVE_SYS_UN_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_67cc9.dir/HAVE_SYS_UN_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_UN_H.c Linking C executable cmTC_67cc9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_67cc9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_67cc9.dir/HAVE_SYS_UN_H.c.o -o cmTC_67cc9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_08ae6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_08ae6.dir/build.make CMakeFiles/cmTC_08ae6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_08ae6.dir/HAVE_SYS_XATTR_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_08ae6.dir/HAVE_SYS_XATTR_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_XATTR_H.c Linking C executable cmTC_08ae6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_08ae6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_08ae6.dir/HAVE_SYS_XATTR_H.c.o -o cmTC_08ae6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1d338/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1d338.dir/build.make CMakeFiles/cmTC_1d338.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1d338.dir/HAVE_ALLOCA_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_1d338.dir/HAVE_ALLOCA_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_ALLOCA_H.c Linking C executable cmTC_1d338 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1d338.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_1d338.dir/HAVE_ALLOCA_H.c.o -o cmTC_1d338 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_553b5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_553b5.dir/build.make CMakeFiles/cmTC_553b5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_553b5.dir/HAVE_ARPA_INET_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_553b5.dir/HAVE_ARPA_INET_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_ARPA_INET_H.c Linking C executable cmTC_553b5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_553b5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_553b5.dir/HAVE_ARPA_INET_H.c.o -o cmTC_553b5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b82b9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b82b9.dir/build.make CMakeFiles/cmTC_b82b9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b82b9.dir/HAVE_ARPA_TFTP_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b82b9.dir/HAVE_ARPA_TFTP_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_ARPA_TFTP_H.c Linking C executable cmTC_b82b9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b82b9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_b82b9.dir/HAVE_ARPA_TFTP_H.c.o -o cmTC_b82b9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_df87c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_df87c.dir/build.make CMakeFiles/cmTC_df87c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_df87c.dir/HAVE_ERRNO_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_df87c.dir/HAVE_ERRNO_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_ERRNO_H.c Linking C executable cmTC_df87c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_df87c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_df87c.dir/HAVE_ERRNO_H.c.o -o cmTC_df87c gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_63ab5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_63ab5.dir/build.make CMakeFiles/cmTC_63ab5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_63ab5.dir/HAVE_FCNTL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_63ab5.dir/HAVE_FCNTL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_FCNTL_H.c Linking C executable cmTC_63ab5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_63ab5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_63ab5.dir/HAVE_FCNTL_H.c.o -o cmTC_63ab5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8313e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8313e.dir/build.make CMakeFiles/cmTC_8313e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8313e.dir/HAVE_IFADDRS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_8313e.dir/HAVE_IFADDRS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_IFADDRS_H.c Linking C executable cmTC_8313e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8313e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_8313e.dir/HAVE_IFADDRS_H.c.o -o cmTC_8313e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4fe3f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4fe3f.dir/build.make CMakeFiles/cmTC_4fe3f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4fe3f.dir/HAVE_LIBGEN_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_4fe3f.dir/HAVE_LIBGEN_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LIBGEN_H.c Linking C executable cmTC_4fe3f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4fe3f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_4fe3f.dir/HAVE_LIBGEN_H.c.o -o cmTC_4fe3f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d133f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d133f.dir/build.make CMakeFiles/cmTC_d133f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d133f.dir/HAVE_NET_IF_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d133f.dir/HAVE_NET_IF_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_NET_IF_H.c Linking C executable cmTC_d133f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d133f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_d133f.dir/HAVE_NET_IF_H.c.o -o cmTC_d133f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cccb9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cccb9.dir/build.make CMakeFiles/cmTC_cccb9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cccb9.dir/HAVE_NETDB_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_cccb9.dir/HAVE_NETDB_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_NETDB_H.c Linking C executable cmTC_cccb9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cccb9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_cccb9.dir/HAVE_NETDB_H.c.o -o cmTC_cccb9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_79357/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_79357.dir/build.make CMakeFiles/cmTC_79357.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_79357.dir/HAVE_NETINET_IN_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_79357.dir/HAVE_NETINET_IN_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_NETINET_IN_H.c Linking C executable cmTC_79357 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_79357.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_79357.dir/HAVE_NETINET_IN_H.c.o -o cmTC_79357 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_63720/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_63720.dir/build.make CMakeFiles/cmTC_63720.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_63720.dir/HAVE_NETINET_TCP_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_63720.dir/HAVE_NETINET_TCP_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_NETINET_TCP_H.c Linking C executable cmTC_63720 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_63720.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_63720.dir/HAVE_NETINET_TCP_H.c.o -o cmTC_63720 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the include file linux/tcp.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_48d2e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_48d2e.dir/build.make CMakeFiles/cmTC_48d2e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_48d2e.dir/CheckIncludeFile.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_48d2e.dir/CheckIncludeFile.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c Linking C executable cmTC_48d2e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_48d2e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_48d2e.dir/CheckIncludeFile.c.o -o cmTC_48d2e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_62240/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_62240.dir/build.make CMakeFiles/cmTC_62240.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_62240.dir/HAVE_POLL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_62240.dir/HAVE_POLL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_POLL_H.c Linking C executable cmTC_62240 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_62240.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_62240.dir/HAVE_POLL_H.c.o -o cmTC_62240 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e0985/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e0985.dir/build.make CMakeFiles/cmTC_e0985.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e0985.dir/HAVE_PWD_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_e0985.dir/HAVE_PWD_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_PWD_H.c Linking C executable cmTC_e0985 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e0985.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_e0985.dir/HAVE_PWD_H.c.o -o cmTC_e0985 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9a33b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9a33b.dir/build.make CMakeFiles/cmTC_9a33b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9a33b.dir/HAVE_SETJMP_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_9a33b.dir/HAVE_SETJMP_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SETJMP_H.c Linking C executable cmTC_9a33b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9a33b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_9a33b.dir/HAVE_SETJMP_H.c.o -o cmTC_9a33b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8ef77/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8ef77.dir/build.make CMakeFiles/cmTC_8ef77.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8ef77.dir/HAVE_SIGNAL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_8ef77.dir/HAVE_SIGNAL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SIGNAL_H.c Linking C executable cmTC_8ef77 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8ef77.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_8ef77.dir/HAVE_SIGNAL_H.c.o -o cmTC_8ef77 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c6cd1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c6cd1.dir/build.make CMakeFiles/cmTC_c6cd1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c6cd1.dir/HAVE_STDBOOL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c6cd1.dir/HAVE_STDBOOL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_STDBOOL_H.c Linking C executable cmTC_c6cd1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c6cd1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_c6cd1.dir/HAVE_STDBOOL_H.c.o -o cmTC_c6cd1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b2954/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b2954.dir/build.make CMakeFiles/cmTC_b2954.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b2954.dir/HAVE_STDINT_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b2954.dir/HAVE_STDINT_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_STDINT_H.c Linking C executable cmTC_b2954 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b2954.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_b2954.dir/HAVE_STDINT_H.c.o -o cmTC_b2954 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d78f4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d78f4.dir/build.make CMakeFiles/cmTC_d78f4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d78f4.dir/HAVE_STRINGS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d78f4.dir/HAVE_STRINGS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_STRINGS_H.c Linking C executable cmTC_d78f4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d78f4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_d78f4.dir/HAVE_STRINGS_H.c.o -o cmTC_d78f4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83ddf/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_83ddf.dir/build.make CMakeFiles/cmTC_83ddf.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_83ddf.dir/HAVE_TERMIO_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_83ddf.dir/HAVE_TERMIO_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_TERMIO_H.c Linking C executable cmTC_83ddf /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_83ddf.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_83ddf.dir/HAVE_TERMIO_H.c.o -o cmTC_83ddf gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_32b01/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_32b01.dir/build.make CMakeFiles/cmTC_32b01.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_32b01.dir/HAVE_TERMIOS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_32b01.dir/HAVE_TERMIOS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_TERMIOS_H.c Linking C executable cmTC_32b01 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_32b01.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_32b01.dir/HAVE_TERMIOS_H.c.o -o cmTC_32b01 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e5152/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e5152.dir/build.make CMakeFiles/cmTC_e5152.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e5152.dir/HAVE_TIME_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_e5152.dir/HAVE_TIME_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_TIME_H.c Linking C executable cmTC_e5152 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e5152.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_e5152.dir/HAVE_TIME_H.c.o -o cmTC_e5152 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_de3c8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_de3c8.dir/build.make CMakeFiles/cmTC_de3c8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_de3c8.dir/HAVE_UNISTD_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_de3c8.dir/HAVE_UNISTD_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_UNISTD_H.c Linking C executable cmTC_de3c8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_de3c8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_de3c8.dir/HAVE_UNISTD_H.c.o -o cmTC_de3c8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a811e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a811e.dir/build.make CMakeFiles/cmTC_a811e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a811e.dir/HAVE_UTIME_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_a811e.dir/HAVE_UTIME_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_UTIME_H.c Linking C executable cmTC_a811e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a811e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_a811e.dir/HAVE_UTIME_H.c.o -o cmTC_a811e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h;stddef.h;dlfcn.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_bd329/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_bd329.dir/build.make CMakeFiles/cmTC_bd329.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_bd329.dir/HAVE_DLFCN_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_bd329.dir/HAVE_DLFCN_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_DLFCN_H.c Linking C executable cmTC_bd329 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_bd329.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_bd329.dir/HAVE_DLFCN_H.c.o -o cmTC_bd329 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h;stddef.h;dlfcn.h;malloc.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_760cd/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_760cd.dir/build.make CMakeFiles/cmTC_760cd.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_760cd.dir/HAVE_MALLOC_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_760cd.dir/HAVE_MALLOC_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_MALLOC_H.c Linking C executable cmTC_760cd /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_760cd.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_760cd.dir/HAVE_MALLOC_H.c.o -o cmTC_760cd gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h;stddef.h;dlfcn.h;malloc.h;memory.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b389d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b389d.dir/build.make CMakeFiles/cmTC_b389d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b389d.dir/HAVE_MEMORY_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b389d.dir/HAVE_MEMORY_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_MEMORY_H.c Linking C executable cmTC_b389d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b389d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_b389d.dir/HAVE_MEMORY_H.c.o -o cmTC_b389d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h;stddef.h;dlfcn.h;malloc.h;memory.h;netinet/if_ether.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f510e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f510e.dir/build.make CMakeFiles/cmTC_f510e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f510e.dir/HAVE_NETINET_IF_ETHER_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_f510e.dir/HAVE_NETINET_IF_ETHER_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_NETINET_IF_ETHER_H.c Linking C executable cmTC_f510e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f510e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_f510e.dir/HAVE_NETINET_IF_ETHER_H.c.o -o cmTC_f510e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files stdio.h;inttypes.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/resource.h;sys/select.h;sys/socket.h;sys/stat.h;sys/time.h;sys/types.h;sys/uio.h;sys/un.h;sys/xattr.h;alloca.h;arpa/inet.h;arpa/tftp.h;assert.h;errno.h;fcntl.h;ifaddrs.h;libgen.h;locale.h;net/if.h;netdb.h;netinet/in.h;netinet/tcp.h;poll.h;pwd.h;setjmp.h;signal.h;stdbool.h;stdint.h;stdio.h;stdlib.h;string.h;strings.h;termio.h;termios.h;time.h;unistd.h;utime.h;stddef.h;dlfcn.h;malloc.h;memory.h;netinet/if_ether.h;stdint.h;sys/utsname.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ace28/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ace28.dir/build.make CMakeFiles/cmTC_ace28.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ace28.dir/HAVE_SYS_UTSNAME_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_ace28.dir/HAVE_SYS_UTSNAME_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_UTSNAME_H.c Linking C executable cmTC_ace28 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ace28.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_ace28.dir/HAVE_SYS_UTSNAME_H.c.o -o cmTC_ace28 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of size_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_adcdd/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_adcdd.dir/build.make CMakeFiles/cmTC_adcdd.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_adcdd.dir/SIZEOF_SIZE_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_adcdd.dir/SIZEOF_SIZE_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_SIZE_T.c Linking C executable cmTC_adcdd /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_adcdd.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_adcdd.dir/SIZEOF_SIZE_T.c.o -o cmTC_adcdd gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of ssize_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d2241/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d2241.dir/build.make CMakeFiles/cmTC_d2241.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d2241.dir/SIZEOF_SSIZE_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d2241.dir/SIZEOF_SSIZE_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_SSIZE_T.c Linking C executable cmTC_d2241 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d2241.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_d2241.dir/SIZEOF_SSIZE_T.c.o -o cmTC_d2241 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of time_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_98008/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_98008.dir/build.make CMakeFiles/cmTC_98008.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_98008.dir/SIZEOF_TIME_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_98008.dir/SIZEOF_TIME_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_TIME_T.c Linking C executable cmTC_98008 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_98008.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_98008.dir/SIZEOF_TIME_T.c.o -o cmTC_98008 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the basename exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7107d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7107d.dir/build.make CMakeFiles/cmTC_7107d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7107d.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7107d.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_7107d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7107d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_7107d.dir/CheckSymbolExists.c.o -o cmTC_7107d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef basename return ((int*)(&basename))[argc]; #else (void)argc; return 0; #endif } Determining if the socket exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_797f9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_797f9.dir/build.make CMakeFiles/cmTC_797f9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_797f9.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_797f9.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_797f9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_797f9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_797f9.dir/CheckSymbolExists.c.o -o cmTC_797f9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef socket return ((int*)(&socket))[argc]; #else (void)argc; return 0; #endif } Determining if the select exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_024b0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_024b0.dir/build.make CMakeFiles/cmTC_024b0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_024b0.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_024b0.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_024b0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_024b0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_024b0.dir/CheckSymbolExists.c.o -o cmTC_024b0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef select return ((int*)(&select))[argc]; #else (void)argc; return 0; #endif } Determining if the poll exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7ed0e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7ed0e.dir/build.make CMakeFiles/cmTC_7ed0e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7ed0e.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7ed0e.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_7ed0e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7ed0e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_7ed0e.dir/CheckSymbolExists.c.o -o cmTC_7ed0e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef poll return ((int*)(&poll))[argc]; #else (void)argc; return 0; #endif } Determining if the strstr exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ce442/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ce442.dir/build.make CMakeFiles/cmTC_ce442.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ce442.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_ce442.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_ce442 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ce442.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_ce442.dir/CheckSymbolExists.c.o -o cmTC_ce442 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef strstr return ((int*)(&strstr))[argc]; #else (void)argc; return 0; #endif } Determining if the strtok_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_08f18/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_08f18.dir/build.make CMakeFiles/cmTC_08f18.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_08f18.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_08f18.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_08f18 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_08f18.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_08f18.dir/CheckSymbolExists.c.o -o cmTC_08f18 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef strtok_r return ((int*)(&strtok_r))[argc]; #else (void)argc; return 0; #endif } Determining if the uname exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7919d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7919d.dir/build.make CMakeFiles/cmTC_7919d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7919d.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7919d.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_7919d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7919d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_7919d.dir/CheckSymbolExists.c.o -o cmTC_7919d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef uname return ((int*)(&uname))[argc]; #else (void)argc; return 0; #endif } Determining if the strcasecmp exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_df039/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_df039.dir/build.make CMakeFiles/cmTC_df039.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_df039.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_df039.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_df039 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_df039.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_df039.dir/CheckSymbolExists.c.o -o cmTC_df039 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef strcasecmp return ((int*)(&strcasecmp))[argc]; #else (void)argc; return 0; #endif } Determining if the alarm exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_89bd1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_89bd1.dir/build.make CMakeFiles/cmTC_89bd1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_89bd1.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_89bd1.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_89bd1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_89bd1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_89bd1.dir/CheckSymbolExists.c.o -o cmTC_89bd1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef alarm return ((int*)(&alarm))[argc]; #else (void)argc; return 0; #endif } Determining if the getppid exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c52a0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c52a0.dir/build.make CMakeFiles/cmTC_c52a0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c52a0.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c52a0.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_c52a0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c52a0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_c52a0.dir/CheckSymbolExists.c.o -o cmTC_c52a0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getppid return ((int*)(&getppid))[argc]; #else (void)argc; return 0; #endif } Determining if the utimes exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b10ae/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b10ae.dir/build.make CMakeFiles/cmTC_b10ae.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b10ae.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b10ae.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_b10ae /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b10ae.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_b10ae.dir/CheckSymbolExists.c.o -o cmTC_b10ae gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef utimes return ((int*)(&utimes))[argc]; #else (void)argc; return 0; #endif } Determining if the gettimeofday exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cfc9f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cfc9f.dir/build.make CMakeFiles/cmTC_cfc9f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cfc9f.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_cfc9f.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_cfc9f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cfc9f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_cfc9f.dir/CheckSymbolExists.c.o -o cmTC_cfc9f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef gettimeofday return ((int*)(&gettimeofday))[argc]; #else (void)argc; return 0; #endif } Determining if the inet_addr exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_96b5c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_96b5c.dir/build.make CMakeFiles/cmTC_96b5c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_96b5c.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_96b5c.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_96b5c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_96b5c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_96b5c.dir/CheckSymbolExists.c.o -o cmTC_96b5c gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef inet_addr return ((int*)(&inet_addr))[argc]; #else (void)argc; return 0; #endif } Determining if the sigsetjmp exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d52c8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d52c8.dir/build.make CMakeFiles/cmTC_d52c8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d52c8.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d52c8.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_d52c8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d52c8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d52c8.dir/CheckSymbolExists.c.o -o cmTC_d52c8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef sigsetjmp return ((int*)(&sigsetjmp))[argc]; #else (void)argc; return 0; #endif } Determining if the getpwuid exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4549e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4549e.dir/build.make CMakeFiles/cmTC_4549e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4549e.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_4549e.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_4549e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4549e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4549e.dir/CheckSymbolExists.c.o -o cmTC_4549e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getpwuid return ((int*)(&getpwuid))[argc]; #else (void)argc; return 0; #endif } Determining if the getpwuid_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c4b0f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c4b0f.dir/build.make CMakeFiles/cmTC_c4b0f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c4b0f.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c4b0f.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_c4b0f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c4b0f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_c4b0f.dir/CheckSymbolExists.c.o -o cmTC_c4b0f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getpwuid_r return ((int*)(&getpwuid_r))[argc]; #else (void)argc; return 0; #endif } Determining if the geteuid exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_04b8e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_04b8e.dir/build.make CMakeFiles/cmTC_04b8e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_04b8e.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_04b8e.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_04b8e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_04b8e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_04b8e.dir/CheckSymbolExists.c.o -o cmTC_04b8e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef geteuid return ((int*)(&geteuid))[argc]; #else (void)argc; return 0; #endif } Determining if the usleep exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_46ff8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_46ff8.dir/build.make CMakeFiles/cmTC_46ff8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_46ff8.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_46ff8.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_46ff8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_46ff8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_46ff8.dir/CheckSymbolExists.c.o -o cmTC_46ff8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef usleep return ((int*)(&usleep))[argc]; #else (void)argc; return 0; #endif } Determining if the utime exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6ad75/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6ad75.dir/build.make CMakeFiles/cmTC_6ad75.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_6ad75.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_6ad75.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_6ad75 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6ad75.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_6ad75.dir/CheckSymbolExists.c.o -o cmTC_6ad75 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef utime return ((int*)(&utime))[argc]; #else (void)argc; return 0; #endif } Determining if the gmtime_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_80090/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_80090.dir/build.make CMakeFiles/cmTC_80090.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_80090.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_80090.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_80090 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_80090.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_80090.dir/CheckSymbolExists.c.o -o cmTC_80090 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef gmtime_r return ((int*)(&gmtime_r))[argc]; #else (void)argc; return 0; #endif } Determining if the localtime_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5f333/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5f333.dir/build.make CMakeFiles/cmTC_5f333.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5f333.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5f333.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_5f333 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5f333.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_5f333.dir/CheckSymbolExists.c.o -o cmTC_5f333 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef localtime_r return ((int*)(&localtime_r))[argc]; #else (void)argc; return 0; #endif } Determining if the gethostbyname exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_66021/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_66021.dir/build.make CMakeFiles/cmTC_66021.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_66021.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_66021.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_66021 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_66021.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_66021.dir/CheckSymbolExists.c.o -o cmTC_66021 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef gethostbyname return ((int*)(&gethostbyname))[argc]; #else (void)argc; return 0; #endif } Determining if the gethostbyname_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_2112d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_2112d.dir/build.make CMakeFiles/cmTC_2112d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_2112d.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_2112d.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_2112d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_2112d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_2112d.dir/CheckSymbolExists.c.o -o cmTC_2112d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef gethostbyname_r return ((int*)(&gethostbyname_r))[argc]; #else (void)argc; return 0; #endif } Determining if the signal exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_db11e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_db11e.dir/build.make CMakeFiles/cmTC_db11e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_db11e.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_db11e.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_db11e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_db11e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_db11e.dir/CheckSymbolExists.c.o -o cmTC_db11e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef signal return ((int*)(&signal))[argc]; #else (void)argc; return 0; #endif } Determining if the SIGALRM exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_70abd/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_70abd.dir/build.make CMakeFiles/cmTC_70abd.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_70abd.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_70abd.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_70abd /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_70abd.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_70abd.dir/CheckSymbolExists.c.o -o cmTC_70abd gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef SIGALRM return ((int*)(&SIGALRM))[argc]; #else (void)argc; return 0; #endif } Determining if the strtoll exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4fa10/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4fa10.dir/build.make CMakeFiles/cmTC_4fa10.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4fa10.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_4fa10.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_4fa10 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4fa10.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4fa10.dir/CheckSymbolExists.c.o -o cmTC_4fa10 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef strtoll return ((int*)(&strtoll))[argc]; #else (void)argc; return 0; #endif } Determining if the strerror_r exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_dbc3c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_dbc3c.dir/build.make CMakeFiles/cmTC_dbc3c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_dbc3c.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_dbc3c.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_dbc3c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_dbc3c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_dbc3c.dir/CheckSymbolExists.c.o -o cmTC_dbc3c gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef strerror_r return ((int*)(&strerror_r))[argc]; #else (void)argc; return 0; #endif } Determining if the siginterrupt exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_94e76/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_94e76.dir/build.make CMakeFiles/cmTC_94e76.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_94e76.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_94e76.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_94e76 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_94e76.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_94e76.dir/CheckSymbolExists.c.o -o cmTC_94e76 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef siginterrupt return ((int*)(&siginterrupt))[argc]; #else (void)argc; return 0; #endif } Determining if the getaddrinfo exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_fc881/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_fc881.dir/build.make CMakeFiles/cmTC_fc881.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_fc881.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_fc881.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_fc881 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_fc881.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_fc881.dir/CheckSymbolExists.c.o -o cmTC_fc881 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getaddrinfo return ((int*)(&getaddrinfo))[argc]; #else (void)argc; return 0; #endif } Determining if the freeaddrinfo exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_23587/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_23587.dir/build.make CMakeFiles/cmTC_23587.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_23587.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_23587.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_23587 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_23587.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_23587.dir/CheckSymbolExists.c.o -o cmTC_23587 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef freeaddrinfo return ((int*)(&freeaddrinfo))[argc]; #else (void)argc; return 0; #endif } Determining if the pipe exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_617ff/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_617ff.dir/build.make CMakeFiles/cmTC_617ff.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_617ff.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_617ff.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_617ff /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_617ff.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_617ff.dir/CheckSymbolExists.c.o -o cmTC_617ff gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef pipe return ((int*)(&pipe))[argc]; #else (void)argc; return 0; #endif } Determining if the ftruncate exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_dffe5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_dffe5.dir/build.make CMakeFiles/cmTC_dffe5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_dffe5.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_dffe5.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_dffe5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_dffe5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_dffe5.dir/CheckSymbolExists.c.o -o cmTC_dffe5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef ftruncate return ((int*)(&ftruncate))[argc]; #else (void)argc; return 0; #endif } Determining if the getprotobyname exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_aecc8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_aecc8.dir/build.make CMakeFiles/cmTC_aecc8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_aecc8.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_aecc8.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_aecc8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_aecc8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_aecc8.dir/CheckSymbolExists.c.o -o cmTC_aecc8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getprotobyname return ((int*)(&getprotobyname))[argc]; #else (void)argc; return 0; #endif } Determining if the getpeername exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d29cb/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d29cb.dir/build.make CMakeFiles/cmTC_d29cb.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d29cb.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d29cb.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_d29cb /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d29cb.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d29cb.dir/CheckSymbolExists.c.o -o cmTC_d29cb gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getpeername return ((int*)(&getpeername))[argc]; #else (void)argc; return 0; #endif } Determining if the getsockname exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_bc7fa/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_bc7fa.dir/build.make CMakeFiles/cmTC_bc7fa.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_bc7fa.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_bc7fa.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_bc7fa /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_bc7fa.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_bc7fa.dir/CheckSymbolExists.c.o -o cmTC_bc7fa gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getsockname return ((int*)(&getsockname))[argc]; #else (void)argc; return 0; #endif } Determining if the if_nametoindex exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3764e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3764e.dir/build.make CMakeFiles/cmTC_3764e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3764e.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_3764e.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_3764e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3764e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3764e.dir/CheckSymbolExists.c.o -o cmTC_3764e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef if_nametoindex return ((int*)(&if_nametoindex))[argc]; #else (void)argc; return 0; #endif } Determining if the getrlimit exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_c9527/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_c9527.dir/build.make CMakeFiles/cmTC_c9527.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_c9527.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_c9527.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_c9527 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_c9527.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_c9527.dir/CheckSymbolExists.c.o -o cmTC_c9527 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef getrlimit return ((int*)(&getrlimit))[argc]; #else (void)argc; return 0; #endif } Determining if the setrlimit exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5e51a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5e51a.dir/build.make CMakeFiles/cmTC_5e51a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5e51a.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5e51a.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_5e51a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5e51a.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_5e51a.dir/CheckSymbolExists.c.o -o cmTC_5e51a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef setrlimit return ((int*)(&setrlimit))[argc]; #else (void)argc; return 0; #endif } Determining if the fcntl exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e68ec/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e68ec.dir/build.make CMakeFiles/cmTC_e68ec.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e68ec.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_e68ec.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_e68ec /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e68ec.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_e68ec.dir/CheckSymbolExists.c.o -o cmTC_e68ec gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef fcntl return ((int*)(&fcntl))[argc]; #else (void)argc; return 0; #endif } Determining if the ioctl exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a7b2b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a7b2b.dir/build.make CMakeFiles/cmTC_a7b2b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a7b2b.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_a7b2b.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_a7b2b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a7b2b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_a7b2b.dir/CheckSymbolExists.c.o -o cmTC_a7b2b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef ioctl return ((int*)(&ioctl))[argc]; #else (void)argc; return 0; #endif } Determining if the setsockopt exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_654f0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_654f0.dir/build.make CMakeFiles/cmTC_654f0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_654f0.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_654f0.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_654f0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_654f0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_654f0.dir/CheckSymbolExists.c.o -o cmTC_654f0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef setsockopt return ((int*)(&setsockopt))[argc]; #else (void)argc; return 0; #endif } Determining if the inet_pton exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_248c9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_248c9.dir/build.make CMakeFiles/cmTC_248c9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_248c9.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_248c9.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_248c9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_248c9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_248c9.dir/CheckSymbolExists.c.o -o cmTC_248c9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef inet_pton return ((int*)(&inet_pton))[argc]; #else (void)argc; return 0; #endif } Determining if the fsetxattr exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_50a19/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_50a19.dir/build.make CMakeFiles/cmTC_50a19.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_50a19.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_50a19.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_50a19 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_50a19.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_50a19.dir/CheckSymbolExists.c.o -o cmTC_50a19 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(int argc, char** argv) { (void)argv; #ifndef fsetxattr return ((int*)(&fsetxattr))[argc]; #else (void)argc; return 0; #endif } Performing Curl Test HAVE_FSETXATTR_5 passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_83af5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_83af5.dir/build.make CMakeFiles/cmTC_83af5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_83af5.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_FSETXATTR_5 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_83af5.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_83af5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_83af5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_FSETXATTR_5 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_83af5.dir/CurlTests.c.o -o cmTC_83af5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of sa_family_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9f8b6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9f8b6.dir/build.make CMakeFiles/cmTC_9f8b6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9f8b6.dir/SIZEOF_SA_FAMILY_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_9f8b6.dir/SIZEOF_SA_FAMILY_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_SA_FAMILY_T.c Linking C executable cmTC_9f8b6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9f8b6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_9f8b6.dir/SIZEOF_SA_FAMILY_T.c.o -o cmTC_9f8b6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the sigaction exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_628c1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_628c1.dir/build.make CMakeFiles/cmTC_628c1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_628c1.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_628c1.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_628c1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_628c1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_628c1.dir/CheckSymbolExists.c.o -o cmTC_628c1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef sigaction return ((int*)(&sigaction))[argc]; #else (void)argc; return 0; #endif } Performing Curl Test HAVE_FCNTL_O_NONBLOCK passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a91f0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a91f0.dir/build.make CMakeFiles/cmTC_a91f0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a91f0.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_FCNTL_O_NONBLOCK -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_a91f0.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_a91f0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a91f0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_FCNTL_O_NONBLOCK -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_a91f0.dir/CurlTests.c.o -o cmTC_a91f0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_IOCTL_FIONBIO passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1a9ac/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1a9ac.dir/build.make CMakeFiles/cmTC_1a9ac.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1a9ac.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_IOCTL_FIONBIO -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_1a9ac.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_1a9ac /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1a9ac.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_IOCTL_FIONBIO -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1a9ac.dir/CurlTests.c.o -o cmTC_1a9ac gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_IOCTL_SIOCGIFADDR passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d8642/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d8642.dir/build.make CMakeFiles/cmTC_d8642.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d8642.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_IOCTL_SIOCGIFADDR -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_d8642.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_d8642 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d8642.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_IOCTL_SIOCGIFADDR -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d8642.dir/CurlTests.c.o -o cmTC_d8642 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test TIME_WITH_SYS_TIME passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3ad34/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3ad34.dir/build.make CMakeFiles/cmTC_3ad34.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3ad34.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DTIME_WITH_SYS_TIME -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_3ad34.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_3ad34 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3ad34.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DTIME_WITH_SYS_TIME -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3ad34.dir/CurlTests.c.o -o cmTC_3ad34 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_GETHOSTBYNAME_R_6 passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4b4af/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4b4af.dir/build.make CMakeFiles/cmTC_4b4af.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4b4af.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_GETHOSTBYNAME_R_6 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_4b4af.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_4b4af /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4b4af.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_GETHOSTBYNAME_R_6 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4b4af.dir/CurlTests.c.o -o cmTC_4b4af gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_GETHOSTBYNAME_R_6_REENTRANT passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9bec2/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9bec2.dir/build.make CMakeFiles/cmTC_9bec2.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9bec2.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_GETHOSTBYNAME_R_6_REENTRANT -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_9bec2.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_9bec2 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9bec2.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_GETHOSTBYNAME_R_6_REENTRANT -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_9bec2.dir/CurlTests.c.o -o cmTC_9bec2 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_IN_ADDR_T passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d1fbb/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d1fbb.dir/build.make CMakeFiles/cmTC_d1fbb.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d1fbb.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_IN_ADDR_T -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_d1fbb.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_d1fbb /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d1fbb.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_IN_ADDR_T -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d1fbb.dir/CurlTests.c.o -o cmTC_d1fbb gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_BOOL_T passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d2f41/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d2f41.dir/build.make CMakeFiles/cmTC_d2f41.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d2f41.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_BOOL_T -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_d2f41.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_d2f41 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d2f41.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_BOOL_T -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d2f41.dir/CurlTests.c.o -o cmTC_d2f41 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test STDC_HEADERS passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_910b1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_910b1.dir/build.make CMakeFiles/cmTC_910b1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_910b1.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DSTDC_HEADERS -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_910b1.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_910b1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_910b1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DSTDC_HEADERS -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_910b1.dir/CurlTests.c.o -o cmTC_910b1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_FILE_OFFSET_BITS passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b54a8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b54a8.dir/build.make CMakeFiles/cmTC_b54a8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b54a8.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_FILE_OFFSET_BITS -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_b54a8.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_b54a8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b54a8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_FILE_OFFSET_BITS -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_b54a8.dir/CurlTests.c.o -o cmTC_b54a8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_VARIADIC_MACROS_C99 passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cc523/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cc523.dir/build.make CMakeFiles/cmTC_cc523.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cc523.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_VARIADIC_MACROS_C99 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_cc523.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_cc523 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cc523.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_VARIADIC_MACROS_C99 -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_cc523.dir/CurlTests.c.o -o cmTC_cc523 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_VARIADIC_MACROS_GCC passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e6ff3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e6ff3.dir/build.make CMakeFiles/cmTC_e6ff3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e6ff3.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_VARIADIC_MACROS_GCC -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_e6ff3.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_e6ff3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e6ff3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_VARIADIC_MACROS_GCC -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_e6ff3.dir/CurlTests.c.o -o cmTC_e6ff3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of off_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7a996/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7a996.dir/build.make CMakeFiles/cmTC_7a996.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7a996.dir/SIZEOF_OFF_T.c.o /usr/bin/gcc -O2 -w -D_FILE_OFFSET_BITS=64 -std=gnu11 -o CMakeFiles/cmTC_7a996.dir/SIZEOF_OFF_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_OFF_T.c Linking C executable cmTC_7a996 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7a996.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -D_FILE_OFFSET_BITS=64 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_7a996.dir/SIZEOF_OFF_T.c.o -o cmTC_7a996 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of curl_off_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_56862/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_56862.dir/build.make CMakeFiles/cmTC_56862.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_56862.dir/SIZEOF_CURL_OFF_T.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/include -O2 -w -D_FILE_OFFSET_BITS=64 -std=gnu11 -o CMakeFiles/cmTC_56862.dir/SIZEOF_CURL_OFF_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_CURL_OFF_T.c Linking C executable cmTC_56862 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_56862.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -D_FILE_OFFSET_BITS=64 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_56862.dir/SIZEOF_CURL_OFF_T.c.o -o cmTC_56862 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_POSIX_STRERROR_R passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_56854/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_56854.dir/build.make CMakeFiles/cmTC_56854.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_56854.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_POSIX_STRERROR_R -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_56854.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_56854 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_56854.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_POSIX_STRERROR_R -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_56854.dir/CurlTests.c.o -o cmTC_56854 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing Curl Test HAVE_CLOCK_GETTIME_MONOTONIC passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f0854/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f0854.dir/build.make CMakeFiles/cmTC_f0854.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f0854.dir/CurlTests.c.o /usr/bin/gcc -O2 -w -DHAVE_CLOCK_GETTIME_MONOTONIC -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -std=gnu11 -o CMakeFiles/cmTC_f0854.dir/CurlTests.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/CMake/CurlTests.c Linking C executable cmTC_f0854 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f0854.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_CLOCK_GETTIME_MONOTONIC -DHAVE_STDIO_H -DHAVE_INTTYPES_H -DHAVE_SYS_IOCTL_H -DHAVE_SYS_PARAM_H -DHAVE_SYS_POLL_H -DHAVE_SYS_RESOURCE_H -DHAVE_SYS_SELECT_H -DHAVE_SYS_SOCKET_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_UIO_H -DHAVE_SYS_UN_H -DHAVE_SYS_XATTR_H -DHAVE_ALLOCA_H -DHAVE_ARPA_INET_H -DHAVE_ARPA_TFTP_H -DHAVE_ASSERT_H -DHAVE_ERRNO_H -DHAVE_FCNTL_H -DHAVE_IFADDRS_H -DHAVE_LIBGEN_H -DHAVE_LOCALE_H -DHAVE_NET_IF_H -DHAVE_NETDB_H -DHAVE_NETINET_IN_H -DHAVE_NETINET_TCP_H -DHAVE_POLL_H -DHAVE_PWD_H -DHAVE_SETJMP_H -DHAVE_SIGNAL_H -DHAVE_STDBOOL_H -DHAVE_STDINT_H -DHAVE_STDIO_H -DHAVE_STDLIB_H -DHAVE_STRING_H -DHAVE_STRINGS_H -DHAVE_TERMIO_H -DHAVE_TERMIOS_H -DHAVE_TIME_H -DHAVE_UNISTD_H -DHAVE_UTIME_H -DHAVE_STDDEF_H -DHAVE_DLFCN_H -DHAVE_MALLOC_H -DHAVE_MEMORY_H -DHAVE_NETINET_IF_ETHER_H -DHAVE_STDINT_H -DHAVE_SYS_UTSNAME_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_f0854.dir/CurlTests.c.o -o cmTC_f0854 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_MSG_NOSIGNAL succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a2b1a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a2b1a.dir/build.make CMakeFiles/cmTC_a2b1a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a2b1a.dir/src.c.o /usr/bin/gcc -DHAVE_MSG_NOSIGNAL -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/include -O2 -w -std=gnu11 -o CMakeFiles/cmTC_a2b1a.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C static library libcmTC_a2b1a.a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -P CMakeFiles/cmTC_a2b1a.dir/cmake_clean_target.cmake /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a2b1a.dir/link.txt --verbose=1 /usr/bin/ar qc libcmTC_a2b1a.a CMakeFiles/cmTC_a2b1a.dir/src.c.o /usr/bin/ranlib libcmTC_a2b1a.a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #undef inline #include #include int main(void) { int flag = MSG_NOSIGNAL; (void)flag; return 0; } Performing C SOURCE FILE Test HAVE_STRUCT_TIMEVAL succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_91236/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_91236.dir/build.make CMakeFiles/cmTC_91236.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_91236.dir/src.c.o /usr/bin/gcc -DHAVE_STRUCT_TIMEVAL -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/include -O2 -w -std=gnu11 -o CMakeFiles/cmTC_91236.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C static library libcmTC_91236.a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -P CMakeFiles/cmTC_91236.dir/cmake_clean_target.cmake /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_91236.dir/link.txt --verbose=1 /usr/bin/ar qc libcmTC_91236.a CMakeFiles/cmTC_91236.dir/src.c.o /usr/bin/ranlib libcmTC_91236.a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #undef inline #include #include #include #include #include int main(void) { struct timeval ts; ts.tv_sec = 0; ts.tv_usec = 0; (void)ts; return 0; } Determining size of struct sockaddr_storage passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_348eb/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_348eb.dir/build.make CMakeFiles/cmTC_348eb.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_348eb.dir/SIZEOF_STRUCT_SOCKADDR_STORAGE.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/include -O2 -w -std=gnu11 -o CMakeFiles/cmTC_348eb.dir/SIZEOF_STRUCT_SOCKADDR_STORAGE.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_STRUCT_SOCKADDR_STORAGE.c Linking C static library libcmTC_348eb.a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -P CMakeFiles/cmTC_348eb.dir/cmake_clean_target.cmake /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_348eb.dir/link.txt --verbose=1 /usr/bin/ar qc libcmTC_348eb.a CMakeFiles/cmTC_348eb.dir/SIZEOF_STRUCT_SOCKADDR_STORAGE.c.o /usr/bin/ranlib libcmTC_348eb.a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_POLL_FINE succeeded with the following compile output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3fc84/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3fc84.dir/build.make CMakeFiles/cmTC_3fc84.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3fc84.dir/src.c.o /usr/bin/gcc -DHAVE_POLL_FINE -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmcurl/include -O2 -w -DHAVE_SYS_POLL_H -std=gnu11 -o CMakeFiles/cmTC_3fc84.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_3fc84 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3fc84.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DHAVE_SYS_POLL_H -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3fc84.dir/src.c.o -o cmTC_3fc84 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' ...and run output: Return value: 1 Source file was: #include #include #ifdef HAVE_SYS_POLL_H # include #elif HAVE_POLL_H # include #endif int main(void) { if(0 != poll(0, 0, 10)) { return 1; /* fail */ } else { /* detect the 10.12 poll() breakage */ struct timeval before, after; int rc; size_t us; gettimeofday(&before, NULL); rc = poll(NULL, 0, 500); gettimeofday(&after, NULL); us = (after.tv_sec - before.tv_sec) * 1000000 + (after.tv_usec - before.tv_usec); if(us < 400000) { return 1; } } return 0; } Determining if the getpagesize exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5bf56/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5bf56.dir/build.make CMakeFiles/cmTC_5bf56.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5bf56.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5bf56.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_5bf56 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5bf56.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_5bf56.dir/CheckSymbolExists.c.o -o cmTC_5bf56 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef getpagesize return ((int*)(&getpagesize))[argc]; #else (void)argc; return 0; #endif } Determining if the mmap exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_13ed6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_13ed6.dir/build.make CMakeFiles/cmTC_13ed6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_13ed6.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_13ed6.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_13ed6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_13ed6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_13ed6.dir/CheckSymbolExists.c.o -o cmTC_13ed6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef mmap return ((int*)(&mmap))[argc]; #else (void)argc; return 0; #endif } Determining if the getrandom exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_319aa/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_319aa.dir/build.make CMakeFiles/cmTC_319aa.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_319aa.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_319aa.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_319aa /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_319aa.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_319aa.dir/CheckSymbolExists.c.o -o cmTC_319aa gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef getrandom return ((int*)(&getrandom))[argc]; #else (void)argc; return 0; #endif } Performing C SOURCE FILE Test HAVE_SYSCALL_GETRANDOM succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7518f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7518f.dir/build.make CMakeFiles/cmTC_7518f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7518f.dir/src.c.o /usr/bin/gcc -DHAVE_SYSCALL_GETRANDOM -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7518f.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_7518f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7518f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_7518f.dir/src.c.o -o cmTC_7518f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include /* for NULL */ #include /* for syscall */ #include /* for SYS_getrandom */ int main() { syscall(SYS_getrandom, NULL, 0, 0); return 0; } Determining if the include file byteswap.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4238f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4238f.dir/build.make CMakeFiles/cmTC_4238f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4238f.dir/CheckIncludeFile.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_4238f.dir/CheckIncludeFile.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c Linking C executable cmTC_4238f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4238f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4238f.dir/CheckIncludeFile.c.o -o cmTC_4238f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the include file limits.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ff314/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ff314.dir/build.make CMakeFiles/cmTC_ff314.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ff314.dir/CheckIncludeFile.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_ff314.dir/CheckIncludeFile.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c Linking C executable cmTC_ff314 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ff314.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_ff314.dir/CheckIncludeFile.c.o -o cmTC_ff314 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the include file sys/sysctl.h exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_888b6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_888b6.dir/build.make CMakeFiles/cmTC_888b6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_888b6.dir/CheckIncludeFile.c.o /usr/bin/gcc -O2 -std=gnu11 -o CMakeFiles/cmTC_888b6.dir/CheckIncludeFile.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c In file included from /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckIncludeFile.c:1: /usr/include/x86_64-linux-gnu/sys/sysctl.h:21:2: warning: #warning "The header is deprecated and will be removed." [-Wcpp] 21 | #warning "The header is deprecated and will be removed." | ^~~~~~~ Linking C executable cmTC_888b6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_888b6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_888b6.dir/CheckIncludeFile.c.o -o cmTC_888b6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_BSWAP_16 succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9a65e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9a65e.dir/build.make CMakeFiles/cmTC_9a65e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9a65e.dir/src.c.o /usr/bin/gcc -DHAVE_BSWAP_16 -O2 -std=gnu11 -o CMakeFiles/cmTC_9a65e.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_9a65e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9a65e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_9a65e.dir/src.c.o -o cmTC_9a65e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main(void){bswap_16(0);return 0;} Performing C SOURCE FILE Test HAVE_BSWAP_32 succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ab46b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ab46b.dir/build.make CMakeFiles/cmTC_ab46b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ab46b.dir/src.c.o /usr/bin/gcc -DHAVE_BSWAP_32 -O2 -std=gnu11 -o CMakeFiles/cmTC_ab46b.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_ab46b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ab46b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_ab46b.dir/src.c.o -o cmTC_ab46b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main(void){bswap_32(0);return 0;} Performing C SOURCE FILE Test HAVE_BSWAP_64 succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f2175/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f2175.dir/build.make CMakeFiles/cmTC_f2175.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f2175.dir/src.c.o /usr/bin/gcc -DHAVE_BSWAP_64 -O2 -std=gnu11 -o CMakeFiles/cmTC_f2175.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_f2175 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f2175.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_f2175.dir/src.c.o -o cmTC_f2175 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main(void){bswap_64(0);return 0;} Performing C SOURCE FILE Test HAVE_DIRENT_H succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_de229/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_de229.dir/build.make CMakeFiles/cmTC_de229.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_de229.dir/src.c.o /usr/bin/gcc -DHAVE_DIRENT_H -O2 -w -std=gnu11 -o CMakeFiles/cmTC_de229.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_de229 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_de229.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_de229.dir/src.c.o -o cmTC_de229 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() { static DIR * tmp; if (sizeof(tmp)) return 0; return 0; } Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_bb15e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_bb15e.dir/build.make CMakeFiles/cmTC_bb15e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_bb15e.dir/HAVE_GRP_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_bb15e.dir/HAVE_GRP_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_GRP_H.c Linking C executable cmTC_bb15e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_bb15e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_bb15e.dir/HAVE_GRP_H.c.o -o cmTC_bb15e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_679a8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_679a8.dir/build.make CMakeFiles/cmTC_679a8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_679a8.dir/HAVE_LANGINFO_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_679a8.dir/HAVE_LANGINFO_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LANGINFO_H.c Linking C executable cmTC_679a8 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_679a8.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_679a8.dir/HAVE_LANGINFO_H.c.o -o cmTC_679a8 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_057d5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_057d5.dir/build.make CMakeFiles/cmTC_057d5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_057d5.dir/HAVE_LINUX_TYPES_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_057d5.dir/HAVE_LINUX_TYPES_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LINUX_TYPES_H.c Linking C executable cmTC_057d5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_057d5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_057d5.dir/HAVE_LINUX_TYPES_H.c.o -o cmTC_057d5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3a623/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3a623.dir/build.make CMakeFiles/cmTC_3a623.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3a623.dir/HAVE_LINUX_FIEMAP_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_3a623.dir/HAVE_LINUX_FIEMAP_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LINUX_FIEMAP_H.c Linking C executable cmTC_3a623 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3a623.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_3a623.dir/HAVE_LINUX_FIEMAP_H.c.o -o cmTC_3a623 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_eba08/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_eba08.dir/build.make CMakeFiles/cmTC_eba08.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_eba08.dir/HAVE_LINUX_FS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_eba08.dir/HAVE_LINUX_FS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LINUX_FS_H.c Linking C executable cmTC_eba08 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_eba08.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_eba08.dir/HAVE_LINUX_FS_H.c.o -o cmTC_eba08 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_WORKING_FS_IOC_GETFLAGS succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_de651/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_de651.dir/build.make CMakeFiles/cmTC_de651.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_de651.dir/src.c.o /usr/bin/gcc -DHAVE_WORKING_FS_IOC_GETFLAGS -O2 -w -std=gnu11 -o CMakeFiles/cmTC_de651.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_de651 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_de651.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_de651.dir/src.c.o -o cmTC_de651 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include #include int main(void) { return FS_IOC_GETFLAGS; } Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_665e5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_665e5.dir/build.make CMakeFiles/cmTC_665e5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_665e5.dir/HAVE_LINUX_MAGIC_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_665e5.dir/HAVE_LINUX_MAGIC_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_LINUX_MAGIC_H.c Linking C executable cmTC_665e5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_665e5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_665e5.dir/HAVE_LINUX_MAGIC_H.c.o -o cmTC_665e5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_70f97/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_70f97.dir/build.make CMakeFiles/cmTC_70f97.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_70f97.dir/HAVE_PATHS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_70f97.dir/HAVE_PATHS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_PATHS_H.c Linking C executable cmTC_70f97 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_70f97.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_70f97.dir/HAVE_PATHS_H.c.o -o cmTC_70f97 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8e78b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8e78b.dir/build.make CMakeFiles/cmTC_8e78b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8e78b.dir/HAVE_PTHREAD_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_8e78b.dir/HAVE_PTHREAD_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_PTHREAD_H.c Linking C executable cmTC_8e78b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8e78b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_8e78b.dir/HAVE_PTHREAD_H.c.o -o cmTC_8e78b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7e1ff/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7e1ff.dir/build.make CMakeFiles/cmTC_7e1ff.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7e1ff.dir/HAVE_REGEX_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7e1ff.dir/HAVE_REGEX_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_REGEX_H.c Linking C executable cmTC_7e1ff /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_7e1ff.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_7e1ff.dir/HAVE_REGEX_H.c.o -o cmTC_7e1ff gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9f58a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9f58a.dir/build.make CMakeFiles/cmTC_9f58a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9f58a.dir/HAVE_SPAWN_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_9f58a.dir/HAVE_SPAWN_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SPAWN_H.c Linking C executable cmTC_9f58a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9f58a.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_9f58a.dir/HAVE_SPAWN_H.c.o -o cmTC_9f58a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5ca3a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5ca3a.dir/build.make CMakeFiles/cmTC_5ca3a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5ca3a.dir/HAVE_STDARG_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5ca3a.dir/HAVE_STDARG_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_STDARG_H.c Linking C executable cmTC_5ca3a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5ca3a.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_5ca3a.dir/HAVE_STDARG_H.c.o -o cmTC_5ca3a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_46c7b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_46c7b.dir/build.make CMakeFiles/cmTC_46c7b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_46c7b.dir/HAVE_SYS_ACL_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_46c7b.dir/HAVE_SYS_ACL_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_ACL_H.c Linking C executable cmTC_46c7b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_46c7b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_46c7b.dir/HAVE_SYS_ACL_H.c.o -o cmTC_46c7b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ef1b4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ef1b4.dir/build.make CMakeFiles/cmTC_ef1b4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ef1b4.dir/HAVE_SYS_CDEFS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_ef1b4.dir/HAVE_SYS_CDEFS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_CDEFS_H.c Linking C executable cmTC_ef1b4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ef1b4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_ef1b4.dir/HAVE_SYS_CDEFS_H.c.o -o cmTC_ef1b4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_987c3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_987c3.dir/build.make CMakeFiles/cmTC_987c3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_987c3.dir/HAVE_SYS_STATFS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_987c3.dir/HAVE_SYS_STATFS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_STATFS_H.c Linking C executable cmTC_987c3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_987c3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_987c3.dir/HAVE_SYS_STATFS_H.c.o -o cmTC_987c3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h;sys/statvfs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8b9c4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8b9c4.dir/build.make CMakeFiles/cmTC_8b9c4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8b9c4.dir/HAVE_SYS_STATVFS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_8b9c4.dir/HAVE_SYS_STATVFS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_STATVFS_H.c Linking C executable cmTC_8b9c4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8b9c4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_8b9c4.dir/HAVE_SYS_STATVFS_H.c.o -o cmTC_8b9c4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h;sys/statvfs.h;sys/sysmacros.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_67225/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_67225.dir/build.make CMakeFiles/cmTC_67225.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_67225.dir/HAVE_SYS_SYSMACROS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_67225.dir/HAVE_SYS_SYSMACROS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_SYSMACROS_H.c Linking C executable cmTC_67225 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_67225.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_67225.dir/HAVE_SYS_SYSMACROS_H.c.o -o cmTC_67225 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h;sys/statvfs.h;sys/sysmacros.h;sys/time.h;sys/utsname.h;sys/vfs.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_efa19/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_efa19.dir/build.make CMakeFiles/cmTC_efa19.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_efa19.dir/HAVE_SYS_VFS_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_efa19.dir/HAVE_SYS_VFS_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_VFS_H.c Linking C executable cmTC_efa19 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_efa19.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_efa19.dir/HAVE_SYS_VFS_H.c.o -o cmTC_efa19 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h;sys/statvfs.h;sys/sysmacros.h;sys/time.h;sys/utsname.h;sys/vfs.h;sys/wait.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_fbeee/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_fbeee.dir/build.make CMakeFiles/cmTC_fbeee.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_fbeee.dir/HAVE_SYS_WAIT_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_fbeee.dir/HAVE_SYS_WAIT_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_SYS_WAIT_H.c Linking C executable cmTC_fbeee /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_fbeee.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_fbeee.dir/HAVE_SYS_WAIT_H.c.o -o cmTC_fbeee gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if files sys/types.h;ctype.h;dlfcn.h;errno.h;fcntl.h;grp.h;langinfo.h;limits.h;linux/types.h;linux/fiemap.h;linux/fs.h;linux/magic.h;locale.h;memory.h;paths.h;poll.h;pthread.h;pwd.h;regex.h;signal.h;spawn.h;stdarg.h;stdlib.h;string.h;strings.h;sys/acl.h;sys/cdefs.h;sys/ioctl.h;sys/param.h;sys/poll.h;sys/select.h;sys/stat.h;sys/statfs.h;sys/statvfs.h;sys/sysmacros.h;sys/time.h;sys/utsname.h;sys/vfs.h;sys/wait.h;sys/xattr.h;time.h;unistd.h;utime.h;wchar.h;wctype.h exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_093eb/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_093eb.dir/build.make CMakeFiles/cmTC_093eb.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_093eb.dir/HAVE_WCTYPE_H.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_093eb.dir/HAVE_WCTYPE_H.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckIncludeFiles/HAVE_WCTYPE_H.c Linking C executable cmTC_093eb /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_093eb.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_093eb.dir/HAVE_WCTYPE_H.c.o -o cmTC_093eb gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test SAFE_TO_DEFINE_EXTENSIONS succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4759b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4759b.dir/build.make CMakeFiles/cmTC_4759b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4759b.dir/src.c.o /usr/bin/gcc -DSAFE_TO_DEFINE_EXTENSIONS -O2 -w -std=gnu11 -o CMakeFiles/cmTC_4759b.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_4759b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4759b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4759b.dir/src.c.o -o cmTC_4759b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #define __EXTENSIONS__ 1 int main() { return 0;} Determining if the function chown exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1339e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1339e.dir/build.make CMakeFiles/cmTC_1339e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1339e.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=chown -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1339e.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1339e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1339e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=chown -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1339e.dir/CheckFunctionExists.c.o -o cmTC_1339e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function chroot exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_be9da/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_be9da.dir/build.make CMakeFiles/cmTC_be9da.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_be9da.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=chroot -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_be9da.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_be9da /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_be9da.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=chroot -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_be9da.dir/CheckFunctionExists.c.o -o cmTC_be9da gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function ctime_r exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d8bec/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d8bec.dir/build.make CMakeFiles/cmTC_d8bec.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d8bec.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=ctime_r -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_d8bec.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_d8bec /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d8bec.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=ctime_r -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d8bec.dir/CheckFunctionExists.c.o -o cmTC_d8bec gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fchdir exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_212f4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_212f4.dir/build.make CMakeFiles/cmTC_212f4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_212f4.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchdir -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_212f4.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_212f4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_212f4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchdir -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_212f4.dir/CheckFunctionExists.c.o -o cmTC_212f4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fchmod exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8bd63/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8bd63.dir/build.make CMakeFiles/cmTC_8bd63.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8bd63.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchmod -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_8bd63.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_8bd63 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8bd63.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchmod -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_8bd63.dir/CheckFunctionExists.c.o -o cmTC_8bd63 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fchown exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_564f6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_564f6.dir/build.make CMakeFiles/cmTC_564f6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_564f6.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchown -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_564f6.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_564f6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_564f6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fchown -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_564f6.dir/CheckFunctionExists.c.o -o cmTC_564f6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fdopendir exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_edd97/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_edd97.dir/build.make CMakeFiles/cmTC_edd97.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_edd97.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fdopendir -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_edd97.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_edd97 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_edd97.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fdopendir -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_edd97.dir/CheckFunctionExists.c.o -o cmTC_edd97 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fork exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e1768/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e1768.dir/build.make CMakeFiles/cmTC_e1768.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e1768.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fork -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_e1768.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_e1768 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e1768.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fork -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_e1768.dir/CheckFunctionExists.c.o -o cmTC_e1768 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fstat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3235d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3235d.dir/build.make CMakeFiles/cmTC_3235d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3235d.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_3235d.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_3235d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3235d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3235d.dir/CheckFunctionExists.c.o -o cmTC_3235d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fstatat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8c800/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8c800.dir/build.make CMakeFiles/cmTC_8c800.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8c800.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_8c800.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_8c800 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8c800.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_8c800.dir/CheckFunctionExists.c.o -o cmTC_8c800 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fstatfs exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_329fc/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_329fc.dir/build.make CMakeFiles/cmTC_329fc.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_329fc.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatfs -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_329fc.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_329fc /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_329fc.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatfs -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_329fc.dir/CheckFunctionExists.c.o -o cmTC_329fc gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fstatvfs exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_81ce6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_81ce6.dir/build.make CMakeFiles/cmTC_81ce6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_81ce6.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatvfs -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_81ce6.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_81ce6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_81ce6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fstatvfs -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_81ce6.dir/CheckFunctionExists.c.o -o cmTC_81ce6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function futimens exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_306b3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_306b3.dir/build.make CMakeFiles/cmTC_306b3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_306b3.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimens -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_306b3.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_306b3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_306b3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimens -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_306b3.dir/CheckFunctionExists.c.o -o cmTC_306b3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function futimes exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f7ae3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f7ae3.dir/build.make CMakeFiles/cmTC_f7ae3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f7ae3.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimes -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_f7ae3.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_f7ae3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f7ae3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimes -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_f7ae3.dir/CheckFunctionExists.c.o -o cmTC_f7ae3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function futimesat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b1df6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b1df6.dir/build.make CMakeFiles/cmTC_b1df6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b1df6.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimesat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_b1df6.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_b1df6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b1df6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=futimesat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_b1df6.dir/CheckFunctionExists.c.o -o cmTC_b1df6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function getgrgid_r exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_eff0d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_eff0d.dir/build.make CMakeFiles/cmTC_eff0d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_eff0d.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getgrgid_r -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_eff0d.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_eff0d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_eff0d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getgrgid_r -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_eff0d.dir/CheckFunctionExists.c.o -o cmTC_eff0d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function getgrnam_r exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ce231/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ce231.dir/build.make CMakeFiles/cmTC_ce231.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ce231.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getgrnam_r -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_ce231.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_ce231 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ce231.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getgrnam_r -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_ce231.dir/CheckFunctionExists.c.o -o cmTC_ce231 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function getpwnam_r exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1537f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1537f.dir/build.make CMakeFiles/cmTC_1537f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1537f.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getpwnam_r -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1537f.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1537f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1537f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getpwnam_r -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1537f.dir/CheckFunctionExists.c.o -o cmTC_1537f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function getpid exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d92b1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d92b1.dir/build.make CMakeFiles/cmTC_d92b1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d92b1.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getpid -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_d92b1.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_d92b1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d92b1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=getpid -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d92b1.dir/CheckFunctionExists.c.o -o cmTC_d92b1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function lchown exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8d9e5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8d9e5.dir/build.make CMakeFiles/cmTC_8d9e5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8d9e5.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lchown -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_8d9e5.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_8d9e5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8d9e5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lchown -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_8d9e5.dir/CheckFunctionExists.c.o -o cmTC_8d9e5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function link exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_02579/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_02579.dir/build.make CMakeFiles/cmTC_02579.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_02579.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=link -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_02579.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_02579 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_02579.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=link -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_02579.dir/CheckFunctionExists.c.o -o cmTC_02579 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function lstat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b4bf0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b4bf0.dir/build.make CMakeFiles/cmTC_b4bf0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b4bf0.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lstat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_b4bf0.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_b4bf0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b4bf0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lstat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_b4bf0.dir/CheckFunctionExists.c.o -o cmTC_b4bf0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function lutimes exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_41b6d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_41b6d.dir/build.make CMakeFiles/cmTC_41b6d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_41b6d.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lutimes -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_41b6d.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_41b6d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_41b6d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=lutimes -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_41b6d.dir/CheckFunctionExists.c.o -o cmTC_41b6d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function mbrtowc exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3b674/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3b674.dir/build.make CMakeFiles/cmTC_3b674.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3b674.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mbrtowc -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_3b674.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_3b674 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3b674.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mbrtowc -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3b674.dir/CheckFunctionExists.c.o -o cmTC_3b674 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function mkdir exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_da9db/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_da9db.dir/build.make CMakeFiles/cmTC_da9db.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_da9db.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkdir -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_da9db.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_da9db /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_da9db.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkdir -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_da9db.dir/CheckFunctionExists.c.o -o cmTC_da9db gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function mkfifo exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1f4e1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1f4e1.dir/build.make CMakeFiles/cmTC_1f4e1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1f4e1.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkfifo -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1f4e1.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1f4e1 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1f4e1.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkfifo -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1f4e1.dir/CheckFunctionExists.c.o -o cmTC_1f4e1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function mknod exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0dfb0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_0dfb0.dir/build.make CMakeFiles/cmTC_0dfb0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_0dfb0.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mknod -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_0dfb0.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_0dfb0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_0dfb0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mknod -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_0dfb0.dir/CheckFunctionExists.c.o -o cmTC_0dfb0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function mkstemp exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a0fac/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a0fac.dir/build.make CMakeFiles/cmTC_a0fac.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a0fac.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkstemp -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_a0fac.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_a0fac /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a0fac.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=mkstemp -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_a0fac.dir/CheckFunctionExists.c.o -o cmTC_a0fac gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function nl_langinfo exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6ea20/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6ea20.dir/build.make CMakeFiles/cmTC_6ea20.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_6ea20.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=nl_langinfo -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_6ea20.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_6ea20 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6ea20.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=nl_langinfo -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_6ea20.dir/CheckFunctionExists.c.o -o cmTC_6ea20 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function openat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3d853/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3d853.dir/build.make CMakeFiles/cmTC_3d853.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3d853.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=openat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_3d853.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_3d853 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3d853.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=openat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3d853.dir/CheckFunctionExists.c.o -o cmTC_3d853 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function posix_spawnp exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8588f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_8588f.dir/build.make CMakeFiles/cmTC_8588f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_8588f.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=posix_spawnp -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_8588f.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_8588f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_8588f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=posix_spawnp -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_8588f.dir/CheckFunctionExists.c.o -o cmTC_8588f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function readlink exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_63a22/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_63a22.dir/build.make CMakeFiles/cmTC_63a22.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_63a22.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=readlink -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_63a22.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_63a22 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_63a22.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=readlink -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_63a22.dir/CheckFunctionExists.c.o -o cmTC_63a22 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function setenv exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cb5ab/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cb5ab.dir/build.make CMakeFiles/cmTC_cb5ab.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cb5ab.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=setenv -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_cb5ab.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_cb5ab /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cb5ab.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=setenv -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_cb5ab.dir/CheckFunctionExists.c.o -o cmTC_cb5ab gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function statfs exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_13ed3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_13ed3.dir/build.make CMakeFiles/cmTC_13ed3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_13ed3.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=statfs -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_13ed3.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_13ed3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_13ed3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=statfs -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_13ed3.dir/CheckFunctionExists.c.o -o cmTC_13ed3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function statvfs exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_26a00/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_26a00.dir/build.make CMakeFiles/cmTC_26a00.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_26a00.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=statvfs -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_26a00.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_26a00 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_26a00.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=statvfs -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_26a00.dir/CheckFunctionExists.c.o -o cmTC_26a00 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function strerror exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_54fc5/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_54fc5.dir/build.make CMakeFiles/cmTC_54fc5.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_54fc5.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=strerror -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_54fc5.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_54fc5 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_54fc5.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=strerror -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_54fc5.dir/CheckFunctionExists.c.o -o cmTC_54fc5 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function strnlen exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_638a4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_638a4.dir/build.make CMakeFiles/cmTC_638a4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_638a4.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=strnlen -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_638a4.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_638a4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_638a4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=strnlen -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_638a4.dir/CheckFunctionExists.c.o -o cmTC_638a4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function symlink exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ba825/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_ba825.dir/build.make CMakeFiles/cmTC_ba825.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ba825.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=symlink -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_ba825.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_ba825 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_ba825.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=symlink -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_ba825.dir/CheckFunctionExists.c.o -o cmTC_ba825 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function timegm exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1104b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1104b.dir/build.make CMakeFiles/cmTC_1104b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1104b.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=timegm -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1104b.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1104b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1104b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=timegm -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1104b.dir/CheckFunctionExists.c.o -o cmTC_1104b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function tzset exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_96a96/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_96a96.dir/build.make CMakeFiles/cmTC_96a96.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_96a96.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=tzset -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_96a96.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_96a96 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_96a96.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=tzset -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_96a96.dir/CheckFunctionExists.c.o -o cmTC_96a96 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function unlinkat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_babf7/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_babf7.dir/build.make CMakeFiles/cmTC_babf7.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_babf7.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=unlinkat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_babf7.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_babf7 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_babf7.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=unlinkat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_babf7.dir/CheckFunctionExists.c.o -o cmTC_babf7 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function utimensat exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6d225/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6d225.dir/build.make CMakeFiles/cmTC_6d225.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_6d225.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=utimensat -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_6d225.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_6d225 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6d225.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=utimensat -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_6d225.dir/CheckFunctionExists.c.o -o cmTC_6d225 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function vfork exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a05d4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_a05d4.dir/build.make CMakeFiles/cmTC_a05d4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_a05d4.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=vfork -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_a05d4.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_a05d4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_a05d4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=vfork -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_a05d4.dir/CheckFunctionExists.c.o -o cmTC_a05d4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wcrtomb exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cfe1f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cfe1f.dir/build.make CMakeFiles/cmTC_cfe1f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cfe1f.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcrtomb -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_cfe1f.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_cfe1f /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_cfe1f.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcrtomb -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_cfe1f.dir/CheckFunctionExists.c.o -o cmTC_cfe1f gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wcscmp exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1c096/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1c096.dir/build.make CMakeFiles/cmTC_1c096.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1c096.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcscmp -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1c096.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1c096 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1c096.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcscmp -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1c096.dir/CheckFunctionExists.c.o -o cmTC_1c096 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wcscpy exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_fe958/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_fe958.dir/build.make CMakeFiles/cmTC_fe958.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_fe958.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcscpy -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_fe958.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_fe958 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_fe958.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcscpy -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_fe958.dir/CheckFunctionExists.c.o -o cmTC_fe958 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wcslen exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3840a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3840a.dir/build.make CMakeFiles/cmTC_3840a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3840a.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcslen -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_3840a.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_3840a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_3840a.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wcslen -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_3840a.dir/CheckFunctionExists.c.o -o cmTC_3840a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wctomb exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_82a94/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_82a94.dir/build.make CMakeFiles/cmTC_82a94.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_82a94.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wctomb -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_82a94.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_82a94 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_82a94.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wctomb -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_82a94.dir/CheckFunctionExists.c.o -o cmTC_82a94 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function fseeko exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_55a1e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_55a1e.dir/build.make CMakeFiles/cmTC_55a1e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_55a1e.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fseeko -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_55a1e.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_55a1e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_55a1e.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=fseeko -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_55a1e.dir/CheckFunctionExists.c.o -o cmTC_55a1e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function vprintf exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_62d5d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_62d5d.dir/build.make CMakeFiles/cmTC_62d5d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_62d5d.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=vprintf -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_62d5d.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_62d5d /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_62d5d.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=vprintf -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_62d5d.dir/CheckFunctionExists.c.o -o cmTC_62d5d gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wmemcmp exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1bac9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1bac9.dir/build.make CMakeFiles/cmTC_1bac9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1bac9.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemcmp -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_1bac9.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_1bac9 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1bac9.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemcmp -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1bac9.dir/CheckFunctionExists.c.o -o cmTC_1bac9 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wmemcpy exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_05c2c/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_05c2c.dir/build.make CMakeFiles/cmTC_05c2c.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_05c2c.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemcpy -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_05c2c.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_05c2c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_05c2c.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemcpy -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_05c2c.dir/CheckFunctionExists.c.o -o cmTC_05c2c gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining if the function wmemmove exists passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d2dc0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d2dc0.dir/build.make CMakeFiles/cmTC_d2dc0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d2dc0.dir/CheckFunctionExists.c.o /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemmove -fno-builtin -std=gnu11 -o CMakeFiles/cmTC_d2dc0.dir/CheckFunctionExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/Modules/CheckFunctionExists.c Linking C executable cmTC_d2dc0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d2dc0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -DCHECK_FUNCTION_EXISTS=wmemmove -fno-builtin -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_d2dc0.dir/CheckFunctionExists.c.o -o cmTC_d2dc0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Performing C SOURCE FILE Test HAVE_READDIR_R succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_128b0/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_128b0.dir/build.make CMakeFiles/cmTC_128b0.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_128b0.dir/src.c.o /usr/bin/gcc -DHAVE_READDIR_R -O2 -w -std=gnu11 -o CMakeFiles/cmTC_128b0.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_128b0 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_128b0.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_128b0.dir/src.c.o -o cmTC_128b0 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() {DIR *d = opendir("."); struct dirent e,*r; return readdir_r(d,&e,&r);} Performing C SOURCE FILE Test HAVE_DIRFD succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b80cc/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b80cc.dir/build.make CMakeFiles/cmTC_b80cc.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b80cc.dir/src.c.o /usr/bin/gcc -DHAVE_DIRFD -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b80cc.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_b80cc /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_b80cc.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_b80cc.dir/src.c.o -o cmTC_b80cc gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() {DIR *d = opendir("."); return dirfd(d);} Performing C SOURCE FILE Test HAVE_READLINKAT succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_4c87b/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_4c87b.dir/build.make CMakeFiles/cmTC_4c87b.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_4c87b.dir/src.c.o /usr/bin/gcc -DHAVE_READLINKAT -O2 -w -std=gnu11 -o CMakeFiles/cmTC_4c87b.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_4c87b /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_4c87b.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_4c87b.dir/src.c.o -o cmTC_4c87b gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include #include int main() {char buf[10]; return readlinkat(AT_FDCWD, "", buf, 0);} Performing C SOURCE FILE Test MAJOR_IN_SYSMACROS succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0c479/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_0c479.dir/build.make CMakeFiles/cmTC_0c479.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_0c479.dir/src.c.o /usr/bin/gcc -DMAJOR_IN_SYSMACROS -O2 -w -std=gnu11 -o CMakeFiles/cmTC_0c479.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_0c479 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_0c479.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_0c479.dir/src.c.o -o cmTC_0c479 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() { return major(256); } Determining if the EILSEQ exist passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_194fd/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_194fd.dir/build.make CMakeFiles/cmTC_194fd.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_194fd.dir/CheckSymbolExists.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_194fd.dir/CheckSymbolExists.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_194fd /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_194fd.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_194fd.dir/CheckSymbolExists.c.o -o cmTC_194fd gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' File /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef EILSEQ return ((int*)(&EILSEQ))[argc]; #else (void)argc; return 0; #endif } Performing C SOURCE FILE Test HAVE_STRUCT_TM_TM_GMTOFF succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_577d4/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_577d4.dir/build.make CMakeFiles/cmTC_577d4.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_577d4.dir/src.c.o /usr/bin/gcc -DHAVE_STRUCT_TM_TM_GMTOFF -O2 -w -std=gnu11 -o CMakeFiles/cmTC_577d4.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_577d4 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_577d4.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_577d4.dir/src.c.o -o cmTC_577d4 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include int main() { (void)sizeof(((struct tm *)0)->tm_gmtoff); return 0; } Performing C SOURCE FILE Test HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_825e6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_825e6.dir/build.make CMakeFiles/cmTC_825e6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_825e6.dir/src.c.o /usr/bin/gcc -DHAVE_STRUCT_STAT_ST_MTIM_TV_NSEC -O2 -w -std=gnu11 -o CMakeFiles/cmTC_825e6.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_825e6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_825e6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_825e6.dir/src.c.o -o cmTC_825e6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include #include int main() { (void)sizeof(((struct stat *)0)->st_mtim.tv_nsec); return 0; } Performing C SOURCE FILE Test HAVE_STRUCT_STAT_ST_BLKSIZE succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5c671/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5c671.dir/build.make CMakeFiles/cmTC_5c671.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5c671.dir/src.c.o /usr/bin/gcc -DHAVE_STRUCT_STAT_ST_BLKSIZE -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5c671.dir/src.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_5c671 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5c671.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_5c671.dir/src.c.o -o cmTC_5c671 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: #include #include int main() { (void)sizeof(((struct stat *)0)->st_blksize); return 0; } Determining size of dev_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_fe959/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_fe959.dir/build.make CMakeFiles/cmTC_fe959.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_fe959.dir/DEV_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_fe959.dir/DEV_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/DEV_T.c Linking C executable cmTC_fe959 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_fe959.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_fe959.dir/DEV_T.c.o -o cmTC_fe959 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of gid_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_6c42a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_6c42a.dir/build.make CMakeFiles/cmTC_6c42a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_6c42a.dir/GID_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_6c42a.dir/GID_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/GID_T.c Linking C executable cmTC_6c42a /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_6c42a.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_6c42a.dir/GID_T.c.o -o cmTC_6c42a gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of id_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_abef3/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_abef3.dir/build.make CMakeFiles/cmTC_abef3.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_abef3.dir/ID_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_abef3.dir/ID_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/ID_T.c Linking C executable cmTC_abef3 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_abef3.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_abef3.dir/ID_T.c.o -o cmTC_abef3 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of mode_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5d908/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_5d908.dir/build.make CMakeFiles/cmTC_5d908.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_5d908.dir/MODE_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_5d908.dir/MODE_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/MODE_T.c Linking C executable cmTC_5d908 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_5d908.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_5d908.dir/MODE_T.c.o -o cmTC_5d908 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of off_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9b233/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_9b233.dir/build.make CMakeFiles/cmTC_9b233.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_9b233.dir/OFF_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_9b233.dir/OFF_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/OFF_T.c Linking C executable cmTC_9b233 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_9b233.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_9b233.dir/OFF_T.c.o -o cmTC_9b233 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of size_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e93de/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e93de.dir/build.make CMakeFiles/cmTC_e93de.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e93de.dir/SIZE_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_e93de.dir/SIZE_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZE_T.c Linking C executable cmTC_e93de /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_e93de.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_e93de.dir/SIZE_T.c.o -o cmTC_e93de gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of ssize_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_d79f7/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_d79f7.dir/build.make CMakeFiles/cmTC_d79f7.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_d79f7.dir/SSIZE_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_d79f7.dir/SSIZE_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SSIZE_T.c Linking C executable cmTC_d79f7 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_d79f7.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_d79f7.dir/SSIZE_T.c.o -o cmTC_d79f7 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of uid_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_48008/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_48008.dir/build.make CMakeFiles/cmTC_48008.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_48008.dir/UID_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_48008.dir/UID_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/UID_T.c Linking C executable cmTC_48008 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_48008.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_48008.dir/UID_T.c.o -o cmTC_48008 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of pid_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_86af6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_86af6.dir/build.make CMakeFiles/cmTC_86af6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_86af6.dir/PID_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_86af6.dir/PID_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/PID_T.c Linking C executable cmTC_86af6 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_86af6.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_86af6.dir/PID_T.c.o -o cmTC_86af6 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Determining size of wchar_t passed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_11889/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_11889.dir/build.make CMakeFiles/cmTC_11889.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_11889.dir/SIZEOF_WCHAR_T.c.o /usr/bin/gcc -O2 -w -std=gnu11 -o CMakeFiles/cmTC_11889.dir/SIZEOF_WCHAR_T.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CheckTypeSize/SIZEOF_WCHAR_T.c Linking C executable cmTC_11889 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_11889.dir/link.txt --verbose=1 /usr/bin/gcc -O2 -w -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib -rdynamic CMakeFiles/cmTC_11889.dir/SIZEOF_WCHAR_T.c.o -o cmTC_11889 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Checking support for ARCHIVE_CRYPTO_MD5_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_bbe83/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_bbe83.dir/build.make CMakeFiles/cmTC_bbe83.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_bbe83.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_bbe83.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_bbe83.dir/build.make:78: CMakeFiles/cmTC_bbe83.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_bbe83/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_MD5_COMPILE_TEST #define ARCHIVE_CRYPTO_MD5_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_md5_ctx ctx; archive_md5_init(&ctx); archive_md5_update(&ctx, *argv, argc); archive_md5_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_RMD160_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_84d91/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_84d91.dir/build.make CMakeFiles/cmTC_84d91.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_84d91.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_84d91.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_84d91.dir/build.make:78: CMakeFiles/cmTC_84d91.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_84d91/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_RMD160_COMPILE_TEST #define ARCHIVE_CRYPTO_RMD160_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_rmd160_ctx ctx; archive_rmd160_init(&ctx); archive_rmd160_update(&ctx, *argv, argc); archive_rmd160_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA1_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e84e6/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_e84e6.dir/build.make CMakeFiles/cmTC_e84e6.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e84e6.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_e84e6.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_e84e6.dir/build.make:78: CMakeFiles/cmTC_e84e6.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_e84e6/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA1_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA1_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha1_ctx ctx; archive_sha1_init(&ctx); archive_sha1_update(&ctx, *argv, argc); archive_sha1_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA256_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_2ad08/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_2ad08.dir/build.make CMakeFiles/cmTC_2ad08.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_2ad08.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_2ad08.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_2ad08.dir/build.make:78: CMakeFiles/cmTC_2ad08.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_2ad08/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA256_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA256_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha256_ctx ctx; archive_sha256_init(&ctx); archive_sha256_update(&ctx, *argv, argc); archive_sha256_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA384_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_35e89/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_35e89.dir/build.make CMakeFiles/cmTC_35e89.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_35e89.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_35e89.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_35e89.dir/build.make:78: CMakeFiles/cmTC_35e89.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_35e89/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA384_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA384_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha384_ctx ctx; archive_sha384_init(&ctx); archive_sha384_update(&ctx, *argv, argc); archive_sha384_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA512_LIBC failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1f607/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1f607.dir/build.make CMakeFiles/cmTC_1f607.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_1f607.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_1f607.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_1f607.dir/build.make:78: CMakeFiles/cmTC_1f607.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_1f607/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA512_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA512_LIBC #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha512_ctx ctx; archive_sha512_init(&ctx); archive_sha512_update(&ctx, *argv, argc); archive_sha512_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA256_LIBC2 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7d006/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7d006.dir/build.make CMakeFiles/cmTC_7d006.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7d006.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7d006.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_7d006.dir/build.make:78: CMakeFiles/cmTC_7d006.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_7d006/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA256_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA256_LIBC2 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha256_ctx ctx; archive_sha256_init(&ctx); archive_sha256_update(&ctx, *argv, argc); archive_sha256_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA384_LIBC2 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_3d3ad/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_3d3ad.dir/build.make CMakeFiles/cmTC_3d3ad.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_3d3ad.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_3d3ad.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_3d3ad.dir/build.make:78: CMakeFiles/cmTC_3d3ad.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_3d3ad/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA384_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA384_LIBC2 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha384_ctx ctx; archive_sha384_init(&ctx); archive_sha384_update(&ctx, *argv, argc); archive_sha384_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA512_LIBC2 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_59493/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_59493.dir/build.make CMakeFiles/cmTC_59493.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_59493.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_59493.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_59493.dir/build.make:78: CMakeFiles/cmTC_59493.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_59493/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA512_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA512_LIBC2 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha512_ctx ctx; archive_sha512_init(&ctx); archive_sha512_update(&ctx, *argv, argc); archive_sha512_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA256_LIBC3 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cc947/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_cc947.dir/build.make CMakeFiles/cmTC_cc947.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_cc947.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_cc947.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_cc947.dir/build.make:78: CMakeFiles/cmTC_cc947.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_cc947/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA256_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA256_LIBC3 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha256_ctx ctx; archive_sha256_init(&ctx); archive_sha256_update(&ctx, *argv, argc); archive_sha256_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA384_LIBC3 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_7095a/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_7095a.dir/build.make CMakeFiles/cmTC_7095a.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_7095a.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_7095a.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_7095a.dir/build.make:78: CMakeFiles/cmTC_7095a.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_7095a/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA384_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA384_LIBC3 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha384_ctx ctx; archive_sha384_init(&ctx); archive_sha384_update(&ctx, *argv, argc); archive_sha384_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA512_LIBC3 failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_839a9/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_839a9.dir/build.make CMakeFiles/cmTC_839a9.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_839a9.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_839a9.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_839a9.dir/build.make:78: CMakeFiles/cmTC_839a9.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_839a9/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA512_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA512_LIBC3 #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha512_ctx ctx; archive_sha512_init(&ctx); archive_sha512_update(&ctx, *argv, argc); archive_sha512_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_MD5_LIBSYSTEM failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_22ed1/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_22ed1.dir/build.make CMakeFiles/cmTC_22ed1.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_22ed1.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_22ed1.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_22ed1.dir/build.make:78: CMakeFiles/cmTC_22ed1.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_22ed1/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_MD5_COMPILE_TEST #define ARCHIVE_CRYPTO_MD5_LIBSYSTEM #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_md5_ctx ctx; archive_md5_init(&ctx); archive_md5_update(&ctx, *argv, argc); archive_md5_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA1_LIBSYSTEM failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_b81d7/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_b81d7.dir/build.make CMakeFiles/cmTC_b81d7.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b81d7.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_b81d7.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_b81d7.dir/build.make:78: CMakeFiles/cmTC_b81d7.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_b81d7/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA1_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA1_LIBSYSTEM #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha1_ctx ctx; archive_sha1_init(&ctx); archive_sha1_update(&ctx, *argv, argc); archive_sha1_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA256_LIBSYSTEM failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_98675/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_98675.dir/build.make CMakeFiles/cmTC_98675.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_98675.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_98675.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_98675.dir/build.make:78: CMakeFiles/cmTC_98675.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_98675/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA256_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA256_LIBSYSTEM #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha256_ctx ctx; archive_sha256_init(&ctx); archive_sha256_update(&ctx, *argv, argc); archive_sha256_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA384_LIBSYSTEM failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_989f8/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_989f8.dir/build.make CMakeFiles/cmTC_989f8.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_989f8.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_989f8.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_989f8.dir/build.make:78: CMakeFiles/cmTC_989f8.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_989f8/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA384_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA384_LIBSYSTEM #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha384_ctx ctx; archive_sha384_init(&ctx); archive_sha384_update(&ctx, *argv, argc); archive_sha384_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA512_LIBSYSTEM failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_601d2/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_601d2.dir/build.make CMakeFiles/cmTC_601d2.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_601d2.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_601d2.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_601d2.dir/build.make:78: CMakeFiles/cmTC_601d2.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_601d2/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA512_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA512_LIBSYSTEM #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha512_ctx ctx; archive_sha512_init(&ctx); archive_sha512_update(&ctx, *argv, argc); archive_sha512_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_MD5_LIBMD failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f4568/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f4568.dir/build.make CMakeFiles/cmTC_f4568.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_f4568.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_f4568.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_f4568.dir/build.make:78: CMakeFiles/cmTC_f4568.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_f4568/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_MD5_COMPILE_TEST #define ARCHIVE_CRYPTO_MD5_LIBMD #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_md5_ctx ctx; archive_md5_init(&ctx); archive_md5_update(&ctx, *argv, argc); archive_md5_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_RMD160_LIBMD failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_dfc83/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_dfc83.dir/build.make CMakeFiles/cmTC_dfc83.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_dfc83.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_dfc83.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_dfc83.dir/build.make:78: CMakeFiles/cmTC_dfc83.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_dfc83/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_RMD160_COMPILE_TEST #define ARCHIVE_CRYPTO_RMD160_LIBMD #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_rmd160_ctx ctx; archive_rmd160_init(&ctx); archive_rmd160_update(&ctx, *argv, argc); archive_rmd160_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA1_LIBMD failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_09d3f/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_09d3f.dir/build.make CMakeFiles/cmTC_09d3f.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_09d3f.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_09d3f.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_09d3f.dir/build.make:78: CMakeFiles/cmTC_09d3f.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_09d3f/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA1_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA1_LIBMD #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha1_ctx ctx; archive_sha1_init(&ctx); archive_sha1_update(&ctx, *argv, argc); archive_sha1_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA256_LIBMD failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_438fb/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_438fb.dir/build.make CMakeFiles/cmTC_438fb.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_438fb.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_438fb.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_438fb.dir/build.make:78: CMakeFiles/cmTC_438fb.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_438fb/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA256_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA256_LIBMD #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha256_ctx ctx; archive_sha256_init(&ctx); archive_sha256_update(&ctx, *argv, argc); archive_sha256_final(&ctx, NULL); return 0; } Checking support for ARCHIVE_CRYPTO_SHA512_LIBMD failed with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_af50d/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_af50d.dir/build.make CMakeFiles/cmTC_af50d.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_af50d.dir/check_crypto_md.c.o /usr/bin/gcc -I/tmp/instance-18/output-1/build/host-cmake-3.22.3 -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/Utilities/cmlibarchive/libarchive -I/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp -O2 -w -std=gnu11 -o CMakeFiles/cmTC_af50d.dir/check_crypto_md.c.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/check_crypto_md.c:1122:10: fatal error: cm3p/kwiml/int.h: No such file or directory 1122 | #include | ^~~~~~~~~~~~~~~~~~ compilation terminated. gmake[2]: *** [CMakeFiles/cmTC_af50d.dir/build.make:78: CMakeFiles/cmTC_af50d.dir/check_crypto_md.c.o] Error 1 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: *** [Makefile:127: cmTC_af50d/fast] Error 2 gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: /* config.h. Generated from build/cmake/config.h.in by cmake configure */ #define __LIBARCHIVE_CONFIG_H_INCLUDED 1 #if defined(__osf__) # define _OSF_SOURCE #endif /* * Ensure we have C99-style int64_t, etc, all defined. */ /* Define ZLIB_WINAPI if zlib was built on Visual Studio. */ /* #undef ZLIB_WINAPI */ /* Darwin ACL support */ /* #undef ARCHIVE_ACL_DARWIN */ /* FreeBSD ACL support */ /* #undef ARCHIVE_ACL_FREEBSD */ /* FreeBSD NFSv4 ACL support */ /* #undef ARCHIVE_ACL_FREEBSD_NFS4 */ /* Linux POSIX.1e ACL support via libacl */ /* #undef ARCHIVE_ACL_LIBACL */ /* Linux NFSv4 ACL support via librichacl */ /* #undef ARCHIVE_ACL_LIBRICHACL */ /* Solaris ACL support */ /* #undef ARCHIVE_ACL_SUNOS */ /* Solaris NFSv4 ACL support */ /* #undef ARCHIVE_ACL_SUNOS_NFS4 */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBC */ /* MD5 via ARCHIVE_CRYPTO_MD5_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_MD5_LIBSYSTEM */ /* MD5 via ARCHIVE_CRYPTO_MD5_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_MD5_NETTLE */ /* MD5 via ARCHIVE_CRYPTO_MD5_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_MD5_OPENSSL */ /* MD5 via ARCHIVE_CRYPTO_MD5_WIN supported. */ /* #undef ARCHIVE_CRYPTO_MD5_WIN */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_LIBC */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_NETTLE */ /* RMD160 via ARCHIVE_CRYPTO_RMD160_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_RMD160_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBC */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_LIBSYSTEM */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_NETTLE */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_OPENSSL */ /* SHA1 via ARCHIVE_CRYPTO_SHA1_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA1_WIN */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC2 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBC3 */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_LIBSYSTEM */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_NETTLE */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_OPENSSL */ /* SHA256 via ARCHIVE_CRYPTO_SHA256_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA256_WIN */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC2 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBC3 */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_LIBSYSTEM */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_NETTLE */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_OPENSSL */ /* SHA384 via ARCHIVE_CRYPTO_SHA384_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA384_WIN */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC2 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC2 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBC3 supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBC3 */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_LIBSYSTEM supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_LIBSYSTEM */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_NETTLE supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_NETTLE */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_OPENSSL supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_OPENSSL */ /* SHA512 via ARCHIVE_CRYPTO_SHA512_WIN supported. */ /* #undef ARCHIVE_CRYPTO_SHA512_WIN */ /* AIX xattr support */ /* #undef ARCHIVE_XATTR_AIX */ /* Darwin xattr support */ /* #undef ARCHIVE_XATTR_DARWIN */ /* FreeBSD xattr support */ /* #undef ARCHIVE_XATTR_FREEBSD */ /* Linux xattr support */ /* #undef ARCHIVE_XATTR_LINUX */ /* Version number of bsdcpio */ #define BSDCPIO_VERSION_STRING "3.5.1" /* Version number of bsdtar */ #define BSDTAR_VERSION_STRING "3.5.1" /* Version number of bsdcat */ #define BSDCAT_VERSION_STRING "3.5.1" /* Define to 1 if you have the `acl_create_entry' function. */ /* #undef HAVE_ACL_CREATE_ENTRY */ /* Define to 1 if you have the `acl_get_fd_np' function. */ /* #undef HAVE_ACL_GET_FD_NP */ /* Define to 1 if you have the `acl_get_link' function. */ /* #undef HAVE_ACL_GET_LINK */ /* Define to 1 if you have the `acl_get_link_np' function. */ /* #undef HAVE_ACL_GET_LINK_NP */ /* Define to 1 if you have the `acl_get_perm' function. */ /* #undef HAVE_ACL_GET_PERM */ /* Define to 1 if you have the `acl_get_perm_np' function. */ /* #undef HAVE_ACL_GET_PERM_NP */ /* Define to 1 if you have the `acl_init' function. */ /* #undef HAVE_ACL_INIT */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ACL_LIBACL_H */ /* Define to 1 if the system has the type `acl_permset_t'. */ /* #undef HAVE_ACL_PERMSET_T */ /* Define to 1 if you have the `acl_set_fd' function. */ /* #undef HAVE_ACL_SET_FD */ /* Define to 1 if you have the `acl_set_fd_np' function. */ /* #undef HAVE_ACL_SET_FD_NP */ /* Define to 1 if you have the `acl_set_file' function. */ /* #undef HAVE_ACL_SET_FILE */ /* Define to 1 if you have the `arc4random_buf' function. */ /* #undef HAVE_ARC4RANDOM_BUF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ATTR_XATTR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BSDXML_H */ /* Define to 1 if you have the header file. */ #define HAVE_BZLIB_H 1 /* Define to 1 if you have the `chflags' function. */ /* #undef HAVE_CHFLAGS */ /* Define to 1 if you have the `chown' function. */ #define HAVE_CHOWN 1 /* Define to 1 if you have the `chroot' function. */ #define HAVE_CHROOT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_COPYFILE_H */ /* Define to 1 if you have the `ctime_r' function. */ #define HAVE_CTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_CTYPE_H 1 /* Define to 1 if you have the `cygwin_conv_path' function. */ /* #undef HAVE_CYGWIN_CONV_PATH */ /* Define to 1 if you have the declaration of `ACE_GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACL */ /* Define to 1 if you have the declaration of `ACE_GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_GETACLCNT */ /* Define to 1 if you have the declaration of `ACE_SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_ACE_SETACL */ /* Define to 1 if you have the declaration of `ACL_SYNCHRONIZE', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_SYNCHRONIZE */ /* Define to 1 if you have the declaration of `ACL_TYPE_EXTENDED', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_EXTENDED */ /* Define to 1 if you have the declaration of `ACL_TYPE_NFS4', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_TYPE_NFS4 */ /* Define to 1 if you have the declaration of `ACL_USER', and to 0 if you don't. */ /* #undef HAVE_DECL_ACL_USER */ /* Define to 1 if you have the declaration of `SETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_SETACL */ /* Define to 1 if you have the declaration of `strerror_r', and to 0 if you don't. */ #define HAVE_DECL_STRERROR_R 1 /* Define to 1 if you have the declaration of `XATTR_NOFOLLOW', and to 0 if you don't. */ /* #undef HAVE_DECL_XATTR_NOFOLLOW */ /* Define to 1 if you have the header file. */ /* #undef HAVE_DIRECT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you have the `dirfd' function. */ #define HAVE_DIRFD 1 /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Define to 1 if nl_langinfo supports D_MD_ORDER */ /* #undef HAVE_D_MD_ORDER */ /* A possible errno value for invalid file format errors */ /* #undef HAVE_EFTYPE */ /* A possible errno value for invalid file format errors */ #define HAVE_EILSEQ 1 /* Define to 1 if you have the header file. */ #define HAVE_ERRNO_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_EXPAT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EXT2FS_EXT2_FS_H */ /* Define to 1 if you have the `extattr_get_file' function. */ /* #undef HAVE_EXTATTR_GET_FILE */ /* Define to 1 if you have the `extattr_list_file' function. */ /* #undef HAVE_EXTATTR_LIST_FILE */ /* Define to 1 if you have the `extattr_set_fd' function. */ /* #undef HAVE_EXTATTR_SET_FD */ /* Define to 1 if you have the `extattr_set_file' function. */ /* #undef HAVE_EXTATTR_SET_FILE */ /* Define to 1 if EXTATTR_NAMESPACE_USER is defined in sys/extattr.h. */ /* #undef HAVE_DECL_EXTATTR_NAMESPACE_USER */ /* Define to 1 if you have the declaration of `GETACL', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACL */ /* Define to 1 if you have the declaration of `GETACLCNT', and to 0 if you don't. */ /* #undef HAVE_DECL_GETACLCNT */ /* Define to 1 if you have the `fchdir' function. */ #define HAVE_FCHDIR 1 /* Define to 1 if you have the `fchflags' function. */ /* #undef HAVE_FCHFLAGS */ /* Define to 1 if you have the `fchmod' function. */ #define HAVE_FCHMOD 1 /* Define to 1 if you have the `fchown' function. */ #define HAVE_FCHOWN 1 /* Define to 1 if you have the `fcntl' function. */ #define HAVE_FCNTL 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopendir' function. */ #define HAVE_FDOPENDIR 1 /* Define to 1 if you have the `fgetea' function. */ /* #undef HAVE_FGETEA */ /* Define to 1 if you have the `fgetxattr' function. */ /* #undef HAVE_FGETXATTR */ /* Define to 1 if you have the `flistea' function. */ /* #undef HAVE_FLISTEA */ /* Define to 1 if you have the `flistxattr' function. */ /* #undef HAVE_FLISTXATTR */ /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ #define HAVE_FSEEKO 1 /* Define to 1 if you have the `fsetea' function. */ /* #undef HAVE_FSETEA */ /* Define to 1 if you have the `fsetxattr' function. */ #define HAVE_FSETXATTR 1 /* Define to 1 if you have the `fstat' function. */ #define HAVE_FSTAT 1 /* Define to 1 if you have the `fstatat' function. */ #define HAVE_FSTATAT 1 /* Define to 1 if you have the `fstatfs' function. */ #define HAVE_FSTATFS 1 /* Define to 1 if you have the `fstatvfs' function. */ #define HAVE_FSTATVFS 1 /* Define to 1 if you have the `ftruncate' function. */ #define HAVE_FTRUNCATE 1 /* Define to 1 if you have the `futimens' function. */ #define HAVE_FUTIMENS 1 /* Define to 1 if you have the `futimes' function. */ #define HAVE_FUTIMES 1 /* Define to 1 if you have the `futimesat' function. */ #define HAVE_FUTIMESAT 1 /* Define to 1 if you have the `getea' function. */ /* #undef HAVE_GETEA */ /* Define to 1 if you have the `geteuid' function. */ #define HAVE_GETEUID 1 /* Define to 1 if you have the `getgrgid_r' function. */ #define HAVE_GETGRGID_R 1 /* Define to 1 if you have the `getgrnam_r' function. */ #define HAVE_GETGRNAM_R 1 /* Define to 1 if you have the `getpid' function. */ #define HAVE_GETPID 1 /* Define to 1 if you have the `getpwnam_r' function. */ #define HAVE_GETPWNAM_R 1 /* Define to 1 if you have the `getpwuid_r' function. */ #define HAVE_GETPWUID_R 1 /* Define to 1 if you have the `getvfsbyname' function. */ /* #undef HAVE_GETVFSBYNAME */ /* Define to 1 if you have the `getxattr' function. */ /* #undef HAVE_GETXATTR */ /* Define to 1 if you have the `gmtime_r' function. */ #define HAVE_GMTIME_R 1 /* Define to 1 if you have the header file. */ #define HAVE_GRP_H 1 /* Define to 1 if you have the `iconv' function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /* #undef HAVE_ICONV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_IO_H */ /* Define to 1 if you have the header file. */ #define HAVE_LANGINFO_H 1 /* Define to 1 if you have the `lchflags' function. */ /* #undef HAVE_LCHFLAGS */ /* Define to 1 if you have the `lchmod' function. */ /* #undef HAVE_LCHMOD */ /* Define to 1 if you have the `lchown' function. */ #define HAVE_LCHOWN 1 /* Define to 1 if you have the `lgetea' function. */ /* #undef HAVE_LGETEA */ /* Define to 1 if you have the `lgetxattr' function. */ /* #undef HAVE_LGETXATTR */ /* Define to 1 if you have the `acl' library (-lacl). */ /* #undef HAVE_LIBACL */ /* Define to 1 if you have the `attr' library (-lattr). */ /* #undef HAVE_LIBATTR */ /* Define to 1 if you have the `bsdxml' library (-lbsdxml). */ /* #undef HAVE_LIBBSDXML */ /* Define to 1 if you have the `bz2' library (-lbz2). */ #define HAVE_LIBBZ2 1 /* Define to 1 if you have the `b2' library (-lb2). */ /* #undef HAVE_LIBB2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_BLAKE2_H */ /* Define to 1 if you have the `charset' library (-lcharset). */ /* #undef HAVE_LIBCHARSET */ /* Define to 1 if you have the `crypto' library (-lcrypto). */ /* #undef HAVE_LIBCRYPTO */ /* Define to 1 if you have the `expat' library (-lexpat). */ /* #undef HAVE_LIBEXPAT */ /* Define to 1 if you have the `gcc' library (-lgcc). */ /* #undef HAVE_LIBGCC */ /* Define to 1 if you have the `lz4' library (-llz4). */ /* #undef HAVE_LIBLZ4 */ /* Define to 1 if you have the `lzma' library (-llzma). */ #define HAVE_LIBLZMA 1 /* Define to 1 if you have the `lzmadec' library (-llzmadec). */ /* #undef HAVE_LIBLZMADEC */ /* Define to 1 if you have the `lzo2' library (-llzo2). */ /* #undef HAVE_LIBLZO2 */ /* Define to 1 if you have the `mbedcrypto' library (-lmbedcrypto). */ /* #undef HAVE_LIBMBEDCRYPTO */ /* Define to 1 if you have the `nettle' library (-lnettle). */ /* #undef HAVE_LIBNETTLE */ /* Define to 1 if you have the `pcre' library (-lpcre). */ /* #undef HAVE_LIBPCRE */ /* Define to 1 if you have the `pcreposix' library (-lpcreposix). */ /* #undef HAVE_LIBPCREPOSIX */ /* Define to 1 if you have the `xml2' library (-lxml2). */ /* #undef HAVE_LIBXML2 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLREADER_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LIBXML_XMLWRITER_H */ /* Define to 1 if you have the `z' library (-lz). */ #define HAVE_LIBZ 1 /* Define to 1 if you have the `zstd' library (-lzstd). */ #define HAVE_LIBZSTD 1 /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the `link' function. */ #define HAVE_LINK 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FIEMAP_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_FS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_MAGIC_H 1 /* Define to 1 if you have the header file. */ #define HAVE_LINUX_TYPES_H 1 /* Define to 1 if you have the `listea' function. */ /* #undef HAVE_LISTEA */ /* Define to 1 if you have the `listxattr' function. */ /* #undef HAVE_LISTXATTR */ /* Define to 1 if you have the `llistea' function. */ /* #undef HAVE_LLISTEA */ /* Define to 1 if you have the `llistxattr' function. */ /* #undef HAVE_LLISTXATTR */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LOCALCHARSET_H */ /* Define to 1 if you have the `locale_charset' function. */ /* #undef HAVE_LOCALE_CHARSET */ /* Define to 1 if you have the header file. */ #define HAVE_LOCALE_H 1 /* Define to 1 if you have the `localtime_r' function. */ #define HAVE_LOCALTIME_R 1 /* Define to 1 if the system has the type `long long int'. */ /* #undef HAVE_LONG_LONG_INT */ /* Define to 1 if you have the `lsetea' function. */ /* #undef HAVE_LSETEA */ /* Define to 1 if you have the `lsetxattr' function. */ /* #undef HAVE_LSETXATTR */ /* Define to 1 if you have the `lstat' function. */ #define HAVE_LSTAT 1 /* Define to 1 if `lstat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_LSTAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the `lutimes' function. */ #define HAVE_LUTIMES 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4HC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZ4_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZMADEC_H */ /* Define to 1 if you have the header file. */ #define HAVE_LZMA_H 1 /* Define to 1 if you have a working `lzma_stream_encoder_mt' function. */ #define HAVE_LZMA_STREAM_ENCODER_MT 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZO1X_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_LZO_LZOCONF_H */ /* Define to 1 if you have the `mbrtowc' function. */ #define HAVE_MBRTOWC 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_MEMBERSHIP_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkdir' function. */ #define HAVE_MKDIR 1 /* Define to 1 if you have the `mkfifo' function. */ #define HAVE_MKFIFO 1 /* Define to 1 if you have the `mknod' function. */ #define HAVE_MKNOD 1 /* Define to 1 if you have the `mkstemp' function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_AES_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_HMAC_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_MD5_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_PBKDF2_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_RIPEMD160_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NETTLE_SHA_H */ /* Define to 1 if you have the `nl_langinfo' function. */ #define HAVE_NL_LANGINFO 1 /* Define to 1 if you have the `openat' function. */ #define HAVE_OPENAT 1 /* Define to 1 if you have the header file. */ #define HAVE_PATHS_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PCREPOSIX_H */ /* Define to 1 if you have the `pipe' function. */ #define HAVE_PIPE 1 /* Define to 1 if you have the `PKCS5_PBKDF2_HMAC_SHA1' function. */ /* #undef HAVE_PKCS5_PBKDF2_HMAC_SHA1 */ /* Define to 1 if you have the `poll' function. */ #define HAVE_POLL 1 /* Define to 1 if you have the header file. */ #define HAVE_POLL_H 1 /* Define to 1 if you have the `posix_spawnp' function. */ #define HAVE_POSIX_SPAWNP 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_PROCESS_H */ /* Define to 1 if you have the header file. */ #define HAVE_PTHREAD_H 1 /* Define to 1 if you have the header file. */ #define HAVE_PWD_H 1 /* Define to 1 if you have the `readdir_r' function. */ #define HAVE_READDIR_R 1 /* Define to 1 if you have the `readlink' function. */ #define HAVE_READLINK 1 /* Define to 1 if you have the `readlinkat' function. */ #define HAVE_READLINKAT 1 /* Define to 1 if you have the `readpassphrase' function. */ /* #undef HAVE_READPASSPHRASE */ /* Define to 1 if you have the header file. */ /* #undef HAVE_READPASSPHRASE_H */ /* Define to 1 if you have the header file. */ #define HAVE_REGEX_H 1 /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 /* Define to 1 if you have the `setenv' function. */ #define HAVE_SETENV 1 /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if you have the `sigaction' function. */ #define HAVE_SIGACTION 1 /* Define to 1 if you have the header file. */ #define HAVE_SIGNAL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SPAWN_H 1 /* Define to 1 if you have the `statfs' function. */ #define HAVE_STATFS 1 /* Define to 1 if you have the `statvfs' function. */ #define HAVE_STATVFS 1 /* Define to 1 if `stat' has the bug that it succeeds when given the zero-length file name argument. */ /* #undef HAVE_STAT_EMPTY_STRING_BUG */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strnlen' function. */ #define HAVE_STRNLEN 1 /* Define to 1 if you have the `strdup' function. */ #define HAVE_STRDUP 1 /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the `strerror_r' function. */ #define HAVE_STRERROR_R 1 /* Define to 1 if you have the `strftime' function. */ #define HAVE_STRFTIME 1 /* Define to 1 if you have the header file. */ #define HAVE_STRINGS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strrchr' function. */ #define HAVE_STRRCHR 1 /* Define to 1 if `f_namemax' is a member of `struct statfs'. */ /* #undef HAVE_STRUCT_STATFS_F_NAMEMAX */ /* Define to 1 if `f_iosize' is a member of `struct statvfs'. */ /* #undef HAVE_STRUCT_STATVFS_F_IOSIZE */ /* Define to 1 if `st_birthtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ /* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC */ /* Define to 1 if `st_blksize' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_BLKSIZE 1 /* Define to 1 if `st_flags' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_FLAGS */ /* Define to 1 if `st_mtimespec.tv_nsec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC */ /* Define to 1 if `st_mtime_n' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_N */ /* Define to 1 if `st_mtime_usec' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_MTIME_USEC */ /* Define to 1 if `st_mtim.tv_nsec' is a member of `struct stat'. */ #define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1 /* Define to 1 if `st_umtime' is a member of `struct stat'. */ /* #undef HAVE_STRUCT_STAT_ST_UMTIME */ /* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ #define HAVE_STRUCT_TM_TM_GMTOFF 1 /* Define to 1 if `__tm_gmtoff' is a member of `struct tm'. */ /* #undef HAVE_STRUCT_TM___TM_GMTOFF */ /* Define to 1 if you have `struct vfsconf'. */ /* #undef HAVE_STRUCT_VFSCONF */ /* Define to 1 if you have `struct xvfsconf'. */ /* #undef HAVE_STRUCT_XVFSCONF */ /* Define to 1 if you have the `symlink' function. */ #define HAVE_SYMLINK 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_ACL_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EA_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_EXTATTR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_IOCTL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MKDEV_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_MOUNT_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_PARAM_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_POLL_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RICHACL_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STATVFS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_SYSMACROS_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TIME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_UTIME_H */ /* Define to 1 if you have the header file. */ #define HAVE_SYS_UTSNAME_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_VFS_H 1 /* Define to 1 if you have that is POSIX.1 compatible. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the header file. */ #define HAVE_SYS_XATTR_H 1 /* Define to 1 if you have the `timegm' function. */ #define HAVE_TIMEGM 1 /* Define to 1 if you have the header file. */ #define HAVE_TIME_H 1 /* Define to 1 if you have the `tzset' function. */ #define HAVE_TZSET 1 /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define to 1 if you have the `unlinkat' function. */ #define HAVE_UNLINKAT 1 /* Define to 1 if you have the `unsetenv' function. */ #define HAVE_UNSETENV 1 /* Define to 1 if the system has the type `unsigned long long'. */ /* #undef HAVE_UNSIGNED_LONG_LONG */ /* Define to 1 if the system has the type `unsigned long long int'. */ /* #undef HAVE_UNSIGNED_LONG_LONG_INT */ /* Define to 1 if you have the `utime' function. */ #define HAVE_UTIME 1 /* Define to 1 if you have the `utimensat' function. */ #define HAVE_UTIMENSAT 1 /* Define to 1 if you have the `utimes' function. */ #define HAVE_UTIMES 1 /* Define to 1 if you have the header file. */ #define HAVE_UTIME_H 1 /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the header file. */ #define HAVE_WCHAR_H 1 /* Define to 1 if the system has the type `wchar_t'. */ #define HAVE_WCHAR_T 1 /* Define to 1 if you have the `wcrtomb' function. */ #define HAVE_WCRTOMB 1 /* Define to 1 if you have the `wcscmp' function. */ #define HAVE_WCSCMP 1 /* Define to 1 if you have the `wcscpy' function. */ #define HAVE_WCSCPY 1 /* Define to 1 if you have the `wcslen' function. */ #define HAVE_WCSLEN 1 /* Define to 1 if you have the `wctomb' function. */ #define HAVE_WCTOMB 1 /* Define to 1 if you have the header file. */ #define HAVE_WCTYPE_H 1 /* Define to 1 if you have the header file. */ /* #undef HAVE_WINCRYPT_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINDOWS_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_WINIOCTL_H */ /* Define to 1 if you have _CrtSetReportMode in */ /* #undef HAVE__CrtSetReportMode */ /* Define to 1 if you have the `wmemcmp' function. */ #define HAVE_WMEMCMP 1 /* Define to 1 if you have the `wmemcpy' function. */ #define HAVE_WMEMCPY 1 /* Define to 1 if you have the `wmemmove' function. */ #define HAVE_WMEMMOVE 1 /* Define to 1 if you have a working EXT2_IOC_GETFLAGS */ /* #undef HAVE_WORKING_EXT2_IOC_GETFLAGS */ /* Define to 1 if you have a working FS_IOC_GETFLAGS */ #define HAVE_WORKING_FS_IOC_GETFLAGS 1 /* Define to 1 if you have the header file. */ #define HAVE_ZLIB_H 1 /* Define to 1 if you have the header file. */ #define HAVE_ZSTD_H 1 /* Define to 1 if you have the `_ctime64_s' function. */ /* #undef HAVE__CTIME64_S */ /* Define to 1 if you have the `_fseeki64' function. */ /* #undef HAVE__FSEEKI64 */ /* Define to 1 if you have the `_get_timezone' function. */ /* #undef HAVE__GET_TIMEZONE */ /* Define to 1 if you have the `_gmtime64_s' function. */ /* #undef HAVE__GMTIME64_S */ /* Define to 1 if you have the `_localtime64_s' function. */ /* #undef HAVE__LOCALTIME64_S */ /* Define to 1 if you have the `_mkgmtime64' function. */ /* #undef HAVE__MKGMTIME64 */ /* Define as const if the declaration of iconv() needs const. */ #define ICONV_CONST /* Version number of libarchive as a single integer */ #define LIBARCHIVE_VERSION_NUMBER "3005001" /* Version number of libarchive */ #define LIBARCHIVE_VERSION_STRING "3.5.1" /* Define to 1 if `lstat' dereferences a symlink specified with a trailing slash. */ /* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ /* #undef MAJOR_IN_MKDEV */ /* Define to 1 if `major', `minor', and `makedev' are declared in . */ #define MAJOR_IN_SYSMACROS 1 /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* The size of `wchar_t', as computed by sizeof. */ #define SIZEOF_WCHAR_T 4 /* Define to 1 if strerror_r returns char *. */ /* #undef STRERROR_R_CHAR_P */ /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 /* * Some platform requires a macro to use extension functions. */ #define SAFE_TO_DEFINE_EXTENSIONS 1 #ifdef SAFE_TO_DEFINE_EXTENSIONS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # define _ALL_SOURCE 1 #endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif /* Enable threading extensions on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # define _POSIX_PTHREAD_SEMANTICS 1 #endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # define _TANDEM_SOURCE 1 #endif /* Enable general extensions on Solaris. */ #ifndef __EXTENSIONS__ # define __EXTENSIONS__ 1 #endif #endif /* SAFE_TO_DEFINE_EXTENSIONS */ /* Version number of package */ #define VERSION "3.5.1" /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ /* #undef _LARGEFILE_SOURCE */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to control Windows SDK version */ #ifndef NTDDI_VERSION /* #undef NTDDI_VERSION */ #endif // NTDDI_VERSION #ifndef _WIN32_WINNT /* #undef _WIN32_WINNT */ #endif // _WIN32_WINNT #ifndef WINVER /* #undef WINVER */ #endif // WINVER /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define to `unsigned long' if does not define. */ /* #undef id_t */ /* Define to `int' if does not define. */ /* #undef mode_t */ /* Define to `long long' if does not define. */ /* #undef off_t */ /* Define to `int' if doesn't define. */ /* #undef pid_t */ /* Define to `unsigned int' if does not define. */ /* #undef size_t */ /* Define to `int' if does not define. */ /* #undef ssize_t */ /* Define to `int' if doesn't define. */ /* #undef uid_t */ #include #ifndef KWIML_INT_HAVE_INT64_T typedef KWIML_INT_int64_t int64_t; #endif #ifndef KWIML_INT_HAVE_INT32_T typedef KWIML_INT_int32_t int32_t; #endif #ifndef KWIML_INT_HAVE_INT16_T typedef KWIML_INT_int16_t int16_t; #endif #ifndef KWIML_INT_HAVE_INT8_T typedef KWIML_INT_int8_t int8_t; #endif #ifndef KWIML_INT_HAVE_INTPTR_T typedef KWIML_INT_intptr_t intptr_t; #endif #ifndef KWIML_INT_HAVE_UINT64_T typedef KWIML_INT_uint64_t uint64_t; #endif #ifndef KWIML_INT_HAVE_UINT32_T typedef KWIML_INT_uint32_t uint32_t; #endif #ifndef KWIML_INT_HAVE_UINT16_T typedef KWIML_INT_uint16_t uint16_t; #endif #ifndef KWIML_INT_HAVE_UINT8_T typedef KWIML_INT_uint8_t uint8_t; #endif #ifndef KWIML_INT_HAVE_UINTPTR_T typedef KWIML_INT_uintptr_t uintptr_t; #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_STDINT_H # define HAVE_STDINT_H 1 #endif /* Define to 1 if you have the header file. */ #ifdef KWIML_INT_HAVE_INTTYPES_H # define HAVE_INTTYPES_H 1 #endif #define ARCHIVE_SHA512_COMPILE_TEST #define ARCHIVE_CRYPTO_SHA512_LIBMD #define PLATFORM_CONFIG_H "check_crypto_md.h" /*- * Copyright (c) 2003-2007 Tim Kientzle * Copyright (c) 2011 Andres Mejia * Copyright (c) 2011 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "archive_platform.h" #include "archive.h" #include "archive_digest_private.h" /* In particular, force the configure probe to break if it tries * to test a combination of OpenSSL and libmd. */ #if defined(ARCHIVE_CRYPTO_OPENSSL) && defined(ARCHIVE_CRYPTO_LIBMD) #error Cannot use both OpenSSL and libmd. #endif /* * Message digest functions for Windows platform. */ #if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ defined(ARCHIVE_CRYPTO_SHA512_WIN) /* * Initialize a Message digest. */ static int win_crypto_init(Digest_CTX *ctx, ALG_ID algId) { ctx->valid = 0; if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) { if (GetLastError() != (DWORD)NTE_BAD_KEYSET) return (ARCHIVE_FAILED); if (!CryptAcquireContext(&ctx->cryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_NEWKEYSET)) return (ARCHIVE_FAILED); } if (!CryptCreateHash(ctx->cryptProv, algId, 0, 0, &ctx->hash)) { CryptReleaseContext(ctx->cryptProv, 0); return (ARCHIVE_FAILED); } ctx->valid = 1; return (ARCHIVE_OK); } /* * Update a Message digest. */ static int win_crypto_Update(Digest_CTX *ctx, const unsigned char *buf, size_t len) { if (!ctx->valid) return (ARCHIVE_FAILED); CryptHashData(ctx->hash, (unsigned char *)(uintptr_t)buf, (DWORD)len, 0); return (ARCHIVE_OK); } static int win_crypto_Final(unsigned char *buf, size_t bufsize, Digest_CTX *ctx) { DWORD siglen = (DWORD)bufsize; if (!ctx->valid) return (ARCHIVE_FAILED); CryptGetHashParam(ctx->hash, HP_HASHVAL, buf, &siglen, 0); CryptDestroyHash(ctx->hash); CryptReleaseContext(ctx->cryptProv, 0); ctx->valid = 0; return (ARCHIVE_OK); } #endif /* defined(ARCHIVE_CRYPTO_*_WIN) */ /* MD5 implementations */ #if defined(ARCHIVE_CRYPTO_MD5_LIBC) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBMD) static int __archive_md5init(archive_md5_ctx *ctx) { MD5Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { MD5Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { MD5Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_LIBSYSTEM) static int __archive_md5init(archive_md5_ctx *ctx) { CC_MD5_Init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { CC_MD5_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { CC_MD5_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_MBEDTLS) static int __archive_md5init(archive_md5_ctx *ctx) { mbedtls_md5_init(ctx); if (mbedtls_md5_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_md5_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { if (mbedtls_md5_finish_ret(ctx, md) == 0) { mbedtls_md5_free(ctx); return (ARCHIVE_OK); } else { mbedtls_md5_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_MD5_NETTLE) static int __archive_md5init(archive_md5_ctx *ctx) { md5_init(ctx); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { md5_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { md5_digest(ctx, MD5_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_OPENSSL) static int __archive_md5init(archive_md5_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_md5()); return (ARCHIVE_OK); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_MD5_WIN) static int __archive_md5init(archive_md5_ctx *ctx) { return (win_crypto_init(ctx, CALG_MD5)); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { return (win_crypto_Final(md, 16, ctx)); } #else static int __archive_md5init(archive_md5_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5update(archive_md5_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_md5final(archive_md5_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* RIPEMD160 implementations */ #if defined(ARCHIVE_CRYPTO_RMD160_LIBC) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RMD160Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RMD160Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RMD160Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_LIBMD) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { RIPEMD160_Init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { RIPEMD160_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { RIPEMD160_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_MBEDTLS) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { mbedtls_ripemd160_init(ctx); if (mbedtls_ripemd160_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_ripemd160_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (mbedtls_ripemd160_finish_ret(ctx, md) == 0) { mbedtls_ripemd160_free(ctx); return (ARCHIVE_OK); } else { mbedtls_ripemd160_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_RMD160_NETTLE) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { ripemd160_init(ctx); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { ripemd160_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { ripemd160_digest(ctx, RIPEMD160_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_RMD160_OPENSSL) static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_ripemd160()); return (ARCHIVE_OK); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #else static int __archive_ripemd160init(archive_rmd160_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160update(archive_rmd160_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_ripemd160final(archive_rmd160_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA1 implementations */ #if defined(ARCHIVE_CRYPTO_SHA1_LIBC) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBMD) static int __archive_sha1init(archive_sha1_ctx *ctx) { SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM) static int __archive_sha1init(archive_sha1_ctx *ctx) { CC_SHA1_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { CC_SHA1_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { CC_SHA1_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_MBEDTLS) static int __archive_sha1init(archive_sha1_ctx *ctx) { mbedtls_sha1_init(ctx); if (mbedtls_sha1_starts_ret(ctx) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha1_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { if (mbedtls_sha1_finish_ret(ctx, md) == 0) { mbedtls_sha1_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha1_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA1_NETTLE) static int __archive_sha1init(archive_sha1_ctx *ctx) { sha1_init(ctx); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { sha1_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { sha1_digest(ctx, SHA1_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_OPENSSL) static int __archive_sha1init(archive_sha1_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha1()); return (ARCHIVE_OK); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { /* HACK: archive_write_set_format_xar.c is finalizing empty contexts, so * this is meant to cope with that. Real fix is probably to fix * archive_write_set_format_xar.c */ if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA1_WIN) static int __archive_sha1init(archive_sha1_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA1)); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { return (win_crypto_Final(md, 20, ctx)); } #else static int __archive_sha1init(archive_sha1_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1update(archive_sha1_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha1final(archive_sha1_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA256 implementations */ #if defined(ARCHIVE_CRYPTO_SHA256_LIBC) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC2) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBC3) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBMD) static int __archive_sha256init(archive_sha256_ctx *ctx) { SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM) static int __archive_sha256init(archive_sha256_ctx *ctx) { CC_SHA256_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { CC_SHA256_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { CC_SHA256_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_MBEDTLS) static int __archive_sha256init(archive_sha256_ctx *ctx) { mbedtls_sha256_init(ctx); if (mbedtls_sha256_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha256_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (mbedtls_sha256_finish_ret(ctx, md) == 0) { mbedtls_sha256_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha256_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA256_NETTLE) static int __archive_sha256init(archive_sha256_ctx *ctx) { sha256_init(ctx); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { sha256_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { sha256_digest(ctx, SHA256_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_OPENSSL) static int __archive_sha256init(archive_sha256_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha256()); return (ARCHIVE_OK); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA256_WIN) static int __archive_sha256init(archive_sha256_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_256)); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { return (win_crypto_Final(md, 32, ctx)); } #else static int __archive_sha256init(archive_sha256_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256update(archive_sha256_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha256final(archive_sha256_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA384 implementations */ #if defined(ARCHIVE_CRYPTO_SHA384_LIBC) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC2) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBC3) static int __archive_sha384init(archive_sha384_ctx *ctx) { SHA384Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { SHA384Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { SHA384Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM) static int __archive_sha384init(archive_sha384_ctx *ctx) { CC_SHA384_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { CC_SHA384_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { CC_SHA384_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_MBEDTLS) static int __archive_sha384init(archive_sha384_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 1) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA384_NETTLE) static int __archive_sha384init(archive_sha384_ctx *ctx) { sha384_init(ctx); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { sha384_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { sha384_digest(ctx, SHA384_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_OPENSSL) static int __archive_sha384init(archive_sha384_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha384()); return (ARCHIVE_OK); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA384_WIN) static int __archive_sha384init(archive_sha384_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_384)); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { return (win_crypto_Final(md, 48, ctx)); } #else static int __archive_sha384init(archive_sha384_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384update(archive_sha384_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha384final(archive_sha384_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* SHA512 implementations */ #if defined(ARCHIVE_CRYPTO_SHA512_LIBC) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC2) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBC3) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBMD) static int __archive_sha512init(archive_sha512_ctx *ctx) { SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM) static int __archive_sha512init(archive_sha512_ctx *ctx) { CC_SHA512_Init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { CC_SHA512_Update(ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { CC_SHA512_Final(md, ctx); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_MBEDTLS) static int __archive_sha512init(archive_sha512_ctx *ctx) { mbedtls_sha512_init(ctx); if (mbedtls_sha512_starts_ret(ctx, 0) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { if (mbedtls_sha512_update_ret(ctx, indata, insize) == 0) return (ARCHIVE_OK); else return (ARCHIVE_FATAL); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (mbedtls_sha512_finish_ret(ctx, md) == 0) { mbedtls_sha512_free(ctx); return (ARCHIVE_OK); } else { mbedtls_sha512_free(ctx); return (ARCHIVE_FATAL); } } #elif defined(ARCHIVE_CRYPTO_SHA512_NETTLE) static int __archive_sha512init(archive_sha512_ctx *ctx) { sha512_init(ctx); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { sha512_update(ctx, insize, indata); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { sha512_digest(ctx, SHA512_DIGEST_SIZE, md); return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_OPENSSL) static int __archive_sha512init(archive_sha512_ctx *ctx) { if ((*ctx = EVP_MD_CTX_new()) == NULL) return (ARCHIVE_FAILED); EVP_DigestInit(*ctx, EVP_sha512()); return (ARCHIVE_OK); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { EVP_DigestUpdate(*ctx, indata, insize); return (ARCHIVE_OK); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { if (*ctx) { EVP_DigestFinal(*ctx, md, NULL); EVP_MD_CTX_free(*ctx); *ctx = NULL; } return (ARCHIVE_OK); } #elif defined(ARCHIVE_CRYPTO_SHA512_WIN) static int __archive_sha512init(archive_sha512_ctx *ctx) { return (win_crypto_init(ctx, CALG_SHA_512)); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { return (win_crypto_Update(ctx, indata, insize)); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { return (win_crypto_Final(md, 64, ctx)); } #else static int __archive_sha512init(archive_sha512_ctx *ctx) { (void)ctx; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512update(archive_sha512_ctx *ctx, const void *indata, size_t insize) { (void)ctx; /* UNUSED */ (void)indata; /* UNUSED */ (void)insize; /* UNUSED */ return (ARCHIVE_FAILED); } static int __archive_sha512final(archive_sha512_ctx *ctx, void *md) { (void)ctx; /* UNUSED */ (void)md; /* UNUSED */ return (ARCHIVE_FAILED); } #endif /* NOTE: Message Digest functions are set based on availability and by the * following order of preference. * 1. libc * 2. libc2 * 3. libc3 * 4. libSystem * 5. Nettle * 6. OpenSSL * 7. libmd * 8. Windows API */ const struct archive_digest __archive_digest = { /* MD5 */ &__archive_md5init, &__archive_md5update, &__archive_md5final, /* RIPEMD160 */ &__archive_ripemd160init, &__archive_ripemd160update, &__archive_ripemd160final, /* SHA1 */ &__archive_sha1init, &__archive_sha1update, &__archive_sha1final, /* SHA256 */ &__archive_sha256init, &__archive_sha256update, &__archive_sha256final, /* SHA384 */ &__archive_sha384init, &__archive_sha384update, &__archive_sha384final, /* SHA512 */ &__archive_sha512init, &__archive_sha512update, &__archive_sha512final }; int main(int argc, char **argv) { archive_sha512_ctx ctx; archive_sha512_init(&ctx); archive_sha512_update(&ctx, *argv, argc); archive_sha512_final(&ctx, NULL); return 0; } Performing C++ SOURCE FILE Test run_pic_test succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f677e/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_f677e.dir/build.make CMakeFiles/cmTC_f677e.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_f677e.dir/src.cxx.o /usr/bin/g++ -Drun_pic_test -O2 -fPIE -std=gnu++17 -o CMakeFiles/cmTC_f677e.dir/src.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.cxx Linking CXX executable cmTC_f677e /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_f677e.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_f677e.dir/src.cxx.o -o cmTC_f677e gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: int main() { return 0; } Performing C++ SOURCE FILE Test run_inlines_hidden_test succeeded with the following output: Change Dir: /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_1e352/fast && gmake[1]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake -f CMakeFiles/cmTC_1e352.dir/build.make CMakeFiles/cmTC_1e352.dir/build gmake[2]: Entering directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Building CXX object CMakeFiles/cmTC_1e352.dir/src.cxx.o /usr/bin/g++ -Drun_inlines_hidden_test -O2 -fvisibility-inlines-hidden -std=gnu++17 -o CMakeFiles/cmTC_1e352.dir/src.cxx.o -c /tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp/src.cxx Linking CXX executable cmTC_1e352 /tmp/instance-18/output-1/build/host-cmake-3.22.3/Bootstrap.cmk/cmake -E cmake_link_script CMakeFiles/cmTC_1e352.dir/link.txt --verbose=1 /usr/bin/g++ -O2 -L/tmp/instance-18/output-1/host/lib -Wl,-rpath,/tmp/instance-18/output-1/host/lib CMakeFiles/cmTC_1e352.dir/src.cxx.o -o cmTC_1e352 gmake[2]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' gmake[1]: Leaving directory '/tmp/instance-18/output-1/build/host-cmake-3.22.3/CMakeFiles/CMakeTmp' Source file was: int main() { return 0; }