From: Paul Spooren Date: Tue, 4 Jan 2022 12:38:57 +0000 (+0000) Subject: pkg_check: remove X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=439413a3de6f1dbac9eaf6088c87ab88c4814a25;p=openwrt%2Fstaging%2Faparcar.git pkg_check: remove This feature replaced by apk's own `audit` feature. --- diff --git a/config/Config-build.in b/config/Config-build.in index ef1a10c28d..7c808bcbdb 100644 --- a/config/Config-build.in +++ b/config/Config-build.in @@ -101,14 +101,6 @@ menu "Global build settings" This removes all ipkg/opkg status data files from the target directory before building the root filesystem. - config IPK_FILES_CHECKSUMS - bool - prompt "Record files checksums in package metadata" - default n - help - This makes file checksums part of package metadata. It increases size - but provides you with pkg_check command to check for flash corruptions. - config INCLUDE_CONFIG bool "Include build configuration in firmware" if DEVEL default n diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index ec4d42608c..322e7836f4 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -217,15 +217,6 @@ $(_endef) $(RSTRIP) $$(IDIR_$(1)) - ifneq ($$(CONFIG_IPK_FILES_CHECKSUMS),) - (cd $$(IDIR_$(1)); \ - ( \ - find . -type f \! -path ./CONTROL/\* -exec $(MKHASH) sha256 -n \{\} \; 2> /dev/null | \ - sed 's|\([[:blank:]]\)\./| \1/|' > $$(IDIR_$(1))/CONTROL/files-sha256sum \ - ) || true \ - ) - endif - ifneq ($$(KEEP_$(1)),) @( \ keepfiles=""; \ diff --git a/package/base-files/files/sbin/pkg_check b/package/base-files/files/sbin/pkg_check deleted file mode 100755 index 28e87925ae..0000000000 --- a/package/base-files/files/sbin/pkg_check +++ /dev/null @@ -1,130 +0,0 @@ -#!/bin/sh -# -# Package checksums checking script -# (C) 2018 CZ.NIC, z.s.p.o. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - - -ERRFATAL="no" -QUIET="yes" -MISSING="" -SUMMARY="" -NL=" -" - -# Arguments parsing -while expr "x$1" : "x-" > /dev/null; do - if [ "x$1" = "x-s" ]; then - ERRFATAL="yes" - shift - elif [ "x$1" = "x-v" ]; then - QUIET=" no" - shift - else - echo "Usage: $(basename $0) [-s] [-v] [pkg1 pkg2 ...]" - echo - echo " -s Stop on first change" - echo " -v Verbose" - if [ "x$1" = "x-h" ]; then - exit 0 - else - echo - echo "ERROR: Unknown option '$1'" - exit 1 - fi - fi -done - -# Check all packages by default -if [ -z "$1" ]; then - set $(cd /usr/lib/opkg/info/; for i in *.files-sha256sum; do basename $i .files-sha256sum; done) -fi - -# Iterate over packages -while [ "$1" ]; do - if [ \! -f "/usr/lib/opkg/info/$1.files-sha256sum" ]; then - if [ "$ERRFATAL" = no ]; then - echo " * No checksums for $1 - skipping" - echo - else - echo " * No checksums for $1 - exiting" - exit 1 - fi - if [ -z "$MISSING" ]; then - MISSING="$1" - else - MISSING="$MISSING, $1" - fi - shift - continue - fi - [ $QUIET = yes ] || echo " * Checking package $1:" - ERR="" - CHECK="$(sha256sum -c /usr/lib/opkg/info/$1.files-sha256sum 2> /dev/null)" - - # Are the changed files config files? - if [ $? -ne 0 ] && [ "$(cat "/usr/lib/opkg/info/$1.files-sha256sum")" ]; then - NEWCHECK="$(echo "$CHECK" | grep '^.*: OK$')" - for i in $(echo "$CHECK" | sed -n 's|^\(.*\): FAILED$|\1|p'); do - if [ "$(grep "^$i\$" "/usr/lib/opkg/info/$1.conffiles" 2> /dev/null)" ] || \ - [ "$(echo "$i" | grep "^/etc/uci-defaults/")" ]; then - NEWCHECK="${NEWCHECK}${NL}${i}: CONFIGURED" - else - NEWCHECK="${NEWCHECK}${NL}${i}: FAILED" - ERR="y" - fi - done - CHECK="$NEWCHECK" - fi - - # Do we have changed files or not? - if [ -z "$ERR" ]; then - [ $QUIET = yes ] || [ ! -s "/usr/lib/opkg/info/$1.files-sha256sum" ] || echo "$CHECK" | sed 's|^| - |' - [ $QUIET = yes ] || echo " * Package $1 is ok" - [ $QUIET = yes ] || echo - else - if [ $QUIET = yes ]; then - echo " * Changes found in package $1:" - echo "$CHECK" | sed -n 's|^\(.*:[[:blank:]]*FAILED\)$| - \1|p' - else - echo "$CHECK" | sed 's|^| - |' - echo " * Changes found in package $1!" - fi - if [ "$ERRFATAL" = yes ]; then - echo - echo "Exiting on first change found!" - exit 1 - fi - for i in $(echo "$CHECK" | sed -n 's|^\(.*\): FAILED$|\1|p'); do - SUMMARY="${SUMMARY}${NL} - $1: $i" - done - echo - fi - shift -done - -# If there are changed files, report them -if [ "$SUMMARY" ]; then - echo "Some packages contain changed files!" - echo "Maybe something worth looking into?" - echo "Here is the list of packages and changed files:" - echo "$SUMMARY" -fi -if [ "$MISSING" ]; then - echo "Following packages are missing checksums: $MISSING" -fi -if [ "$MISSING" ] || [ "$SUMMARY" ]; then - exit 1 -fi