summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2012-10-03 14:50:03 +0200
committerPierre Schmitz <pierre@archlinux.de>2012-10-03 14:50:03 +0200
commita539598c640caa92e2b1967949836d73c5264036 (patch)
treee7c36b47b12e45c6589f89e617989e05126106d5
parentb0047186ad33c5ef8bb6560dd9ba4d8a724dabce (diff)
Use pacman-key to check signatures as it now uses a correct exit value
-rw-r--r--db-functions13
-rwxr-xr-xdb-update2
2 files changed, 1 insertions, 14 deletions
diff --git a/db-functions b/db-functions
index e0d693b..e3485d3 100644
--- a/db-functions
+++ b/db-functions
@@ -455,19 +455,6 @@ check_repo_permission() {
return 0
}
-check_pkgsig() {
- local signature=$1
- local ret=1
- local fd="$(mktemp --tmpdir="${WORKDIR}")"
-
- gpg --homedir /etc/pacman.d/gnupg/ --status-file "${fd}" --verify "${signature}" >/dev/null 2>&1
- if grep -q TRUST_FULLY "${fd}"; then
- ret=0
- fi
-
- return $ret
-}
-
set_repo_permission() {
local repo=$1
local arch=$2
diff --git a/db-update b/db-update
index 8be0d54..caddbe6 100755
--- a/db-update
+++ b/db-update
@@ -35,7 +35,7 @@ for repo in ${repos[@]}; do
if ! check_pkgfile "${pkg}"; then
die "Package ${repo}/${pkg##*/} is not consistent with its meta data"
fi
- if ${REQUIRE_SIGNATURE} && ! check_pkgsig "${pkg}.sig"; then
+ if ${REQUIRE_SIGNATURE} && ! pacman-key -v "${pkg}.sig" >/dev/null 2>&1; then
die "Package ${repo}/${pkg##*/} does not have a valid signature"
fi
if ! check_pkgsvn "${pkg}" "${repo}"; then