Skip to content
This repository has been archived by the owner on May 31, 2018. It is now read-only.

Pacaur reads input improperly when a database signature is corrupted #731

Closed
ItachiSan opened this issue Jul 21, 2017 · 2 comments
Closed

Comments

@ItachiSan
Copy link
Contributor

Version

pacaur -v

pacaur 4.7.10
Description

Whenever a database signature is corrupted or missing, pacaur does not parse the input properly and instead picks up invalid and signature)) as chosen packages.

The pacman.conf entry is the following one:

[quarry]
Server = http://pkgbuild.com/~anatolik/quarry/$arch

Database signature checking is on.
Notice: it is not pacaur that corrupts the DB signature.
You can reproduce by teeing some junk in /var/lib/pacman/sync/quarry.db.sig.

Output
$ LANG=C pacaur -Su
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
:: Starting AUR upgrade...
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
 there is nothing to do


$ LANG=C pacaur -S telegram-desktop-bin
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
:: Packages invalid signature)) not found in repositories, trying AUR...
:: resolving dependencies...
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
:: no results found for invalid
:: no results found for signature))
Debug output
$ LANG=C bash -x `which pacaur` -Su &> pacaur.log ; cat pacaur.log 
+ version=4.7.10
+ unset aur cleancache devel edit info installpkg foreign needed noconfirm nodeps noedit
+ unset operation pac pacQ pacS quiet rebuild refresh repo search selective upgrade
+ LC_COLLATE=C
+ TEXTDOMAIN=pacaur
+ TEXTDOMAINDIR=/usr/share/locale
+ [[ -n '' ]]
+ configdir=/etc/xdg/pacaur
+ userconfigdir=/home/itachisan/.config/pacaur
+ userpacmandir=/home/itachisan/.config/pacman
+ usercachedir=/home/itachisan/.cache/pacaur
+ tmpdir=/run/user/1000
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -r '' ]]
+ source /etc/makepkg.conf
++ DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 'rsync::/usr/bin/rsync --no-motd -z %u %o' 'scp::/usr/bin/scp -C %u %o')
++ VCSCLIENTS=('bzr::bzr' 'git::git' 'hg::mercurial' 'svn::subversion')
++ CARCH=x86_64
++ CHOST=x86_64-pc-linux-gnu
++ CPPFLAGS=-D_FORTIFY_SOURCE=2
++ CFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong'
++ CXXFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong'
++ LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro
++ MAKEFLAGS=-j2
++ DEBUG_CFLAGS='-g -fvar-tracking-assignments'
++ DEBUG_CXXFLAGS='-g -fvar-tracking-assignments'
++ BUILDENV=(!distcc color !ccache check !sign)
++ OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !optipng !upx !debug)
++ INTEGRITY_CHECK=(md5)
++ STRIP_BINARIES=--strip-all
++ STRIP_SHARED=--strip-unneeded
++ STRIP_STATIC=--strip-debug
++ MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
++ DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
++ PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
++ PACKAGER='Giovanni '\''ItachiSan'\'' Santini <[email protected]>'
++ GPGKEY=18959EA6A8B63782562D1BF64DB470962FADEBF5
++ COMPRESSGZ=(gzip -c -f -n)
++ COMPRESSBZ2=(bzip2 -c -f)
++ COMPRESSXZ=(xz -c -z -)
++ COMPRESSLRZ=(lrzip -q)
++ COMPRESSLZO=(lzop -q)
++ COMPRESSZ=(compress -c -f)
++ PKGEXT=.pkg.tar.xz
++ SRCEXT=.src.tar.gz
+ [[ -r /home/itachisan/.config/pacman/makepkg.conf ]]
+ [[ -r /home/itachisan/.makepkg.conf ]]
+ PACMAN=
+ PKGDEST=
+ SRCDEST=
+ SRCPKGDEST=
+ LOGDEST=
+ BUILDDIR=
+ PKGEXT=.pkg.tar.xz
+ SRCEXT=.src.tar.gz
+ GPGKEY=18959EA6A8B63782562D1BF64DB470962FADEBF5
+ PACKAGER='Giovanni '\''ItachiSan'\'' Santini <[email protected]>'
+ CARCH=x86_64
+ editor=vim
+ displaybuildfiles=diff
+ fallback=true
+ silent=false
+ sortby=popularity
+ sortorder=descending
+ sudoloop=true
+ pacmanbin=pacman
+ clonedir=/mnt/build/archlinux/chroots/pacaur
+ aururl=aur.archlinux.org
+ aurrpc='/rpc/?type=info&v=5'
+ source /etc/xdg/pacaur/config
+ [[ -r /home/itachisan/.config/pacaur/config ]]
+ [[ ! -d /mnt/build/archlinux/chroots/pacaur ]]
+ declare -A jsoncache
+ trap Cancel INT
+ args=($@)
+ for i in "${args[@]}"
+ [[ -Su =~ ^-[a-zA-Z0-9] ]]
+ opts+=($i)
+ count=0
+ [[ -n -Su ]]
+ getopts sidmykufecqrahvxVDFQRSTUbglnoptw-: OPT
+ pacmanarg+=("-$OPT")
+ case "$OPT" in
+ pacS=1
+ operation=sync
+ [[ -Su =~ w ]]
+ installpkg=true
+ [[ -Su =~ g ]]
+ [[ -Su =~ l ]]
+ [[ -Su =~ p ]]
+ getopts sidmykufecqrahvxVDFQRSTUbglnoptw-: OPT
+ pacmanarg+=("-$OPT")
+ case "$OPT" in
+ [[ -n '' ]]
+ [[ -n 1 ]]
+ operation=sync
+ upgrade=true
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n 1 ]]
+ continue
+ getopts sidmykufecqrahvxVDFQRSTUbglnoptw-: OPT
+ [[ -z '' ]]
+ break
++ grep '^Color' /etc/pacman.conf
+ [[ -n Color ]]
+ [[ '' != \n\e\v\e\r ]]
+ [[ '' = \a\l\w\a\y\s ]]
+ coweropts+=("--color=auto")
+ reset='\e[0m'
+ colorR='\e[1;31m'
+ colorG='\e[1;32m'
+ colorY='\e[1;33m'
+ colorB='\e[1;34m'
+ colorM='\e[1;35m'
+ colorC='\e[1;36m'
+ colorW='\e[1;39m'
+ pacmanarg=(${pacmanarg[@]/--/})
+ pacmanarg=(${pacmanarg[@]/-r/})
+ pacmanarg=(${pacmanarg[@]/-a/})
+ [[ sync = sync ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ [[ 1000 -eq 0 ]]
+ [[ -n 1 ]]
+ pacmanarg=(${pacmanarg[@]/-e/})
+ [[ -n 1 ]]
+ [[ -n '' ]]
+ [[ -n 1 ]]
+ [[ -n '' ]]
++ command -v vim
+ [[ ! -n /usr/bin/vim ]]
++ basename /usr/bin/pacaur
+ [[ '' = pacaur ]]
+ [[ ! -w /mnt/build/archlinux/chroots/pacaur ]]
+ [[ -z '' ]]
+ [[ sync = download ]]
+ [[ sync = sync ]]
+ [[ ! -n '' ]]
+ [[ ! -n true ]]
+ [[ -z '' ]]
++ grep -e '-[RU]'
+ [[ -n '' ]]
+ [[ -n '' ]]
+ case $operation in
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n true ]]
+ [[ -n '' ]]
+ [[ ! -n '' ]]
+ sudo pacman -S -u
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
+ (( 1 > 0 ))
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ ! -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ ! -n '' ]]
+ [[ true = true ]]
+ Core
+ GetIgnoredPkgs
+ ignoredpkgs+=($(grep '^IgnorePkg' '/etc/pacman.conf' | awk -F '=' '{print $NF}' | tr -d "'\""))
++ grep '^IgnorePkg' /etc/pacman.conf
++ awk -F = '{print $NF}'
++ tr -d ''\''"'
+ [[ -e /home/itachisan/.config/cower/config ]]
+ ignoredpkgs=(${ignoredpkgs[@]//,/ })
+ GetIgnoredGrps
+ ignoredgrps+=($(grep '^IgnoreGroup' '/etc/pacman.conf' | awk -F '=' '{print $NF}' | tr -d "'\""))
++ grep '^IgnoreGroup' /etc/pacman.conf
++ awk -F = '{print $NF}'
++ tr -d ''\''"'
+ ignoredgrps=(${ignoredgrps[@]//,/ })
+ [[ -n true ]]
+ UpgradeAur
+ local foreignpkgs allaurpkgs allaurpkgsAver allaurpkgsQver aurforeignpkgs i json
+ Note i '\e[1;39mStarting AUR upgrade...\e[0m'
+ case "$1" in
+ echo -e '\e[1;34m::\e[0m \e[1;39mStarting AUR upgrade...\e[0m'
:: Starting AUR upgrade...
+ [[ -n '' ]]
+ foreignpkgs=($($pacmanbin -Qmq))
++ pacman -Qmq
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
+ SetJson
+ [[ 0 -eq 0 ]]
+ json='{}'
+ allaurpkgs=($(GetJson "var" "$json" "Name"))
++ GetJson var '{}' Name
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ grep -Po 'Name:.*'
++ awk -F '#' '{print $2}'
++ sed -r s/Name:/Name#/g
+ allaurpkgsAver=($(GetJson "var" "$json" "Version"))
++ GetJson var '{}' Version
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ grep -Po 'Version:.*'
++ sed -r s/Version:/Version#/g
++ awk -F '#' '{print $2}'
+ allaurpkgsQver=($(expac -Q '%v' ${allaurpkgs[@]}))
++ expac -Q %v
+ aurforeignpkgs=($(grep -xvf <(printf '%s\n' "${allaurpkgs[@]}") <(printf '%s\n' "${foreignpkgs[@]}")))
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n'
+++ printf '%s\n'
+ [[ -n '' ]]
+ aurpkgs=($(tr ' ' '\n' <<< ${aurpkgs[@]} | sort -u))
++ tr ' ' '\n'
++ sort -u
+ NothingToDo
+ [[ -z '' ]]
+ printf '%s\n' ' there is nothing to do'
 there is nothing to do
+ exit

$ LANG=C bash -x `which pacaur` -S telegram-desktop-bin &> pacaur.log ; cat pacaur.log
+ version=4.7.10
+ unset aur cleancache devel edit info installpkg foreign needed noconfirm nodeps noedit
+ unset operation pac pacQ pacS quiet rebuild refresh repo search selective upgrade
+ LC_COLLATE=C
+ TEXTDOMAIN=pacaur
+ TEXTDOMAINDIR=/usr/share/locale
+ [[ -n '' ]]
+ configdir=/etc/xdg/pacaur
+ userconfigdir=/home/itachisan/.config/pacaur
+ userpacmandir=/home/itachisan/.config/pacman
+ usercachedir=/home/itachisan/.cache/pacaur
+ tmpdir=/run/user/1000
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -r '' ]]
+ source /etc/makepkg.conf
++ DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 'rsync::/usr/bin/rsync --no-motd -z %u %o' 'scp::/usr/bin/scp -C %u %o')
++ VCSCLIENTS=('bzr::bzr' 'git::git' 'hg::mercurial' 'svn::subversion')
++ CARCH=x86_64
++ CHOST=x86_64-pc-linux-gnu
++ CPPFLAGS=-D_FORTIFY_SOURCE=2
++ CFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong'
++ CXXFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong'
++ LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro
++ MAKEFLAGS=-j2
++ DEBUG_CFLAGS='-g -fvar-tracking-assignments'
++ DEBUG_CXXFLAGS='-g -fvar-tracking-assignments'
++ BUILDENV=(!distcc color !ccache check !sign)
++ OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !optipng !upx !debug)
++ INTEGRITY_CHECK=(md5)
++ STRIP_BINARIES=--strip-all
++ STRIP_SHARED=--strip-unneeded
++ STRIP_STATIC=--strip-debug
++ MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
++ DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
++ PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
++ PACKAGER='Giovanni '\''ItachiSan'\'' Santini <[email protected]>'
++ GPGKEY=18959EA6A8B63782562D1BF64DB470962FADEBF5
++ COMPRESSGZ=(gzip -c -f -n)
++ COMPRESSBZ2=(bzip2 -c -f)
++ COMPRESSXZ=(xz -c -z -)
++ COMPRESSLRZ=(lrzip -q)
++ COMPRESSLZO=(lzop -q)
++ COMPRESSZ=(compress -c -f)
++ PKGEXT=.pkg.tar.xz
++ SRCEXT=.src.tar.gz
+ [[ -r /home/itachisan/.config/pacman/makepkg.conf ]]
+ [[ -r /home/itachisan/.makepkg.conf ]]
+ PACMAN=
+ PKGDEST=
+ SRCDEST=
+ SRCPKGDEST=
+ LOGDEST=
+ BUILDDIR=
+ PKGEXT=.pkg.tar.xz
+ SRCEXT=.src.tar.gz
+ GPGKEY=18959EA6A8B63782562D1BF64DB470962FADEBF5
+ PACKAGER='Giovanni '\''ItachiSan'\'' Santini <[email protected]>'
+ CARCH=x86_64
+ editor=vim
+ displaybuildfiles=diff
+ fallback=true
+ silent=false
+ sortby=popularity
+ sortorder=descending
+ sudoloop=true
+ pacmanbin=pacman
+ clonedir=/mnt/build/archlinux/chroots/pacaur
+ aururl=aur.archlinux.org
+ aurrpc='/rpc/?type=info&v=5'
+ source /etc/xdg/pacaur/config
+ [[ -r /home/itachisan/.config/pacaur/config ]]
+ [[ ! -d /mnt/build/archlinux/chroots/pacaur ]]
+ declare -A jsoncache
+ trap Cancel INT
+ args=($@)
+ for i in "${args[@]}"
+ [[ -S =~ ^-[a-zA-Z0-9] ]]
+ opts+=($i)
+ for i in "${args[@]}"
+ [[ telegram-desktop-bin =~ ^-[a-zA-Z0-9] ]]
+ count=0
+ [[ -n -S ]]
+ getopts sidmykufecqrahvxVDFQRSTUbglnoptw-: OPT
+ pacmanarg+=("-$OPT")
+ case "$OPT" in
+ pacS=1
+ operation=sync
+ [[ -S =~ w ]]
+ installpkg=true
+ [[ -S =~ g ]]
+ [[ -S =~ l ]]
+ [[ -S =~ p ]]
+ getopts sidmykufecqrahvxVDFQRSTUbglnoptw-: OPT
+ [[ -z telegram-desktop-bin ]]
+ pkgs+=("${!OPTIND}")
+ shift 2
+ OPTIND=1
+ [[ -n '' ]]
++ grep '^Color' /etc/pacman.conf
+ [[ -n Color ]]
+ [[ '' != \n\e\v\e\r ]]
+ [[ '' = \a\l\w\a\y\s ]]
+ coweropts+=("--color=auto")
+ reset='\e[0m'
+ colorR='\e[1;31m'
+ colorG='\e[1;32m'
+ colorY='\e[1;33m'
+ colorB='\e[1;34m'
+ colorM='\e[1;35m'
+ colorC='\e[1;36m'
+ colorW='\e[1;39m'
+ pacmanarg=(${pacmanarg[@]/--/})
+ pacmanarg=(${pacmanarg[@]/-r/})
+ pacmanarg=(${pacmanarg[@]/-a/})
+ [[ sync = sync ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ [[ 1000 -eq 0 ]]
+ [[ -n 1 ]]
+ pacmanarg=(${pacmanarg[@]/-e/})
+ [[ -n 1 ]]
+ [[ -n '' ]]
+ [[ -n 1 ]]
+ [[ -n '' ]]
++ command -v vim
+ [[ ! -n /usr/bin/vim ]]
++ basename /usr/bin/pacaur
+ [[ '' = pacaur ]]
+ [[ ! -w /mnt/build/archlinux/chroots/pacaur ]]
+ [[ -z telegram-desktop-bin ]]
+ [[ -z telegram-desktop-bin ]]
+ [[ -n '' ]]
+ case $operation in
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -z telegram-desktop-bin ]]
+ ClassifyPkgs telegram-desktop-bin
+ local noaurpkgs norepopkgs
+ [[ true = true ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ unset noaurpkgs
+ for i in "${pkgs[@]}"
+ [[ telegram-desktop-bin == aur/* ]]
+ noaurpkgs+=($i)
+ [[ -n telegram-desktop-bin ]]
+ norepopkgs=($(LANG=C $pacmanbin -Sp ${noaurpkgs[@]} 2>&1 >/dev/null | awk '{print $NF}'))
++ LANG=C
++ pacman -Sp telegram-desktop-bin
++ awk '{print $NF}'
+ for i in "${norepopkgs[@]}"
+ [[ !  telegram-desktop-bin  =~ [a-zA-Z0-9.+-]+/invalid[^a-zA-Z0-9.+-] ]]
+ aurpkgs+=($i)
+ for i in "${norepopkgs[@]}"
+ [[ !  telegram-desktop-bin  =~ [a-zA-Z0-9.+-]+/signature))[^a-zA-Z0-9.+-] ]]
+ aurpkgs+=($i)
+ repopkgs=($(grep -xvf <(printf '%s\n' "${aurpkgs[@]}") <(printf '%s\n' "${noaurpkgs[@]}")))
+++ printf '%s\n' invalid 'signature))'
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n' telegram-desktop-bin
+ [[ -n telegram-desktop-bin ]]
+ sudo pacman -S telegram-desktop-bin
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
+ [[ -n invalid signature)) ]]
+ [[ -n '' ]]
+ [[ true = true ]]
+ [[ ! -n '' ]]
+ [[ 2 -gt 1 ]]
+ Note w 'Packages \e[1;39minvalid signature))\e[0m not found in repositories, trying \e[1;35mAUR\e[0m...'
+ case "$1" in
+ echo -e '\e[1;33m::\e[0m Packages \e[1;39minvalid signature))\e[0m not found in repositories, trying \e[1;35mAUR\e[0m...'
:: Packages invalid signature)) not found in repositories, trying AUR...
+ Core
+ GetIgnoredPkgs
+ ignoredpkgs+=($(grep '^IgnorePkg' '/etc/pacman.conf' | awk -F '=' '{print $NF}' | tr -d "'\""))
++ grep '^IgnorePkg' /etc/pacman.conf
++ awk -F = '{print $NF}'
++ tr -d ''\''"'
+ [[ -e /home/itachisan/.config/cower/config ]]
+ ignoredpkgs=(${ignoredpkgs[@]//,/ })
+ GetIgnoredGrps
+ ignoredgrps+=($(grep '^IgnoreGroup' '/etc/pacman.conf' | awk -F '=' '{print $NF}' | tr -d "'\""))
++ grep '^IgnoreGroup' /etc/pacman.conf
++ awk -F = '{print $NF}'
++ tr -d ''\''"'
+ ignoredgrps=(${ignoredgrps[@]//,/ })
+ [[ -n '' ]]
+ IgnoreChecks
+ local checkaurpkgs checkaurpkgsAver checkaurpkgsAgrp checkaurpkgsQver checkaurpkgsQgrp i json
+ [[ -z '' ]]
+ [[ -z '' ]]
+ return
+ DepsSolver
+ local i aurpkgsname aurpkgsver aurpkgsaurver aurpkgsconflicts
+ Note i 'resolving dependencies...'
+ case "$1" in
+ echo -e '\e[1;34m::\e[0m resolving dependencies...'
:: resolving dependencies...
+ for i in "${!aurpkgs[@]}"
++ awk -F '>|<|=' '{print $1}'
+ aurpkgsnover[$i]=invalid
+ for i in "${!aurpkgs[@]}"
++ awk -F '>|<|=' '{print $1}'
+ aurpkgsnover[$i]='signature))'
+ SetJson invalid 'signature))'
+ [[ 2 -eq 0 ]]
+ [[ -z '' ]]
++ DownloadJson invalid 'signature))'
++ local urlencodedpkgs urlargs urlcurl urlarg urlmax j
++ urlencodedpkgs=($(sed 's/+/%2b/g;s/@/%40/g' <<< $@))
+++ sed 's/+/%2b/g;s/@/%40/g'
++ urlarg='&arg[]='
+++ printf '&arg[]=%s' invalid 'signature))'
++ urlargs='&arg[]=invalid&arg[]=signature))'
++ urlmax=4400
++ [[ 32 -lt 4400 ]]
++ curl -sfg --compressed -C 0 'https://aur.archlinux.org/rpc/?type=info&v=5&arg[]=invalid&arg[]=signature))'
+ jsoncache[$@]='{"version":5,"type":"multiinfo","resultcount":0,"results":[]}'
+ json='{"version":5,"type":"multiinfo","resultcount":0,"results":[]}'
+ aurpkgsproviders=(${aurpkgsnover[@]})
+ aurpkgsproviders+=($(GetJson "array" "$json" "Provides"))
++ GetJson array '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Provides
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ tr -d '\"'
++ tr '\n' ' '
++ cut '-d ' -f 2-
++ sed -e '/^"Provides"/,/]/!d'
++ sed 's/] /]\n/g'
++ tr -d '\n'
++ tr -d '[]"'
+ for i in "${!aurpkgsproviders[@]}"
++ awk -F '>|<|=' '{print $1}'
+ aurpkgsproviders[$i]=invalid
+ for i in "${!aurpkgsproviders[@]}"
++ awk -F '>|<|=' '{print $1}'
+ aurpkgsproviders[$i]='signature))'
+ aurpkgsconflicts=($(GetJson "array" "$json" "Conflicts"))
++ GetJson array '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Conflicts
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/^"Conflicts"/,/]/!d'
++ tr -d '[]"'
++ cut '-d ' -f 2-
++ tr -d '\n'
++ tr '\n' ' '
++ tr -d '\"'
++ sed 's/] /]\n/g'
+ [[ -n '' ]]
+ deps=(${aurpkgsnover[@]})
+ [[ -z '' ]]
+ foreignpkgs=($($pacmanbin -Qmq))
++ pacman -Qmq
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
error: database 'quarry' is not valid (invalid or corrupted database (PGP signature))
+ FindDepsAur invalid 'signature))'
+ local depspkgs depspkgstmp depspkgsaurtmp repodepstmp builtpkg vcsdepspkgs assumedepspkgs
+ local aurversionpkgs aurversionpkgsname aurversionpkgsver aurversionpkgsaurver i j json
+ [[ -n '' ]]
+ unset aurversionpkgs
+ [[ -z '' ]]
+ SetJson invalid 'signature))'
+ [[ 2 -eq 0 ]]
+ [[ -z {"version":5,"type":"multiinfo","resultcount":0,"results":[]} ]]
+ json='{"version":5,"type":"multiinfo","resultcount":0,"results":[]}'
+ aurversionpkgs=(${aurpkgs[@]})
+ [[ -n invalid signature)) ]]
+ for i in "${!aurversionpkgs[@]}"
+ unset aurversionpkgsname aurversionpkgsver aurversionpkgsaurver
+ aurversionpkgsname=invalid
+ aurversionpkgsname=invalid
+ aurversionpkgsname=invalid
+ aurversionpkgsver=invalid
+ aurversionpkgsver=invalid
+ aurversionpkgsver=invalid
++ GetJson varvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Version invalid
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"invalid"/,/}/!d'
++ tr -d '"'
++ awk -F '#' '{print $2}'
++ grep -Po 'Version:.*'
++ sed -r s/Version:/Version#/g
+ aurversionpkgsaurver=
+ [[ ! -n '' ]]
+ [[ !    =~  invalid  ]]
+ errdeps+=(${aurversionpkgs[$i]})
+ continue
+ for i in "${!aurversionpkgs[@]}"
+ unset aurversionpkgsname aurversionpkgsver aurversionpkgsaurver
+ aurversionpkgsname='signature))'
+ aurversionpkgsname='signature))'
+ aurversionpkgsname='signature))'
+ aurversionpkgsver='signature))'
+ aurversionpkgsver='signature))'
+ aurversionpkgsver='signature))'
++ GetJson varvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Version 'signature))'
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"signature))"/,/}/!d'
++ tr -d '"'
++ awk -F '#' '{print $2}'
++ grep -Po 'Version:.*'
++ sed -r s/Version:/Version#/g
+ aurversionpkgsaurver=
+ [[ ! -n '' ]]
+ [[ !  invalid  =~  signature\)\)  ]]
+ errdeps+=(${aurversionpkgs[$i]})
+ continue
+ depspkgs=($(GetJson "array" "$json" "Depends"))
++ GetJson array '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Depends
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ tr -d '\"'
++ sed -e '/^"Depends"/,/]/!d'
++ cut '-d ' -f 2-
++ sed 's/] /]\n/g'
++ tr -d '[]"'
++ tr '\n' ' '
++ tr -d '\n'
+ [[ ! -n '' ]]
+ depspkgs+=($(GetJson "array" "$json" "MakeDepends"))
++ GetJson array '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' MakeDepends
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/^"MakeDepends"/,/]/!d'
++ cut '-d ' -f 2-
++ tr -d '\"'
++ sed 's/] /]\n/g'
++ tr -d '[]"'
++ tr '\n' ' '
++ tr -d '\n'
+ depspkgs+=($(GetJson "array" "$json" "CheckDepends"))
++ GetJson array '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' CheckDepends
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/^"CheckDepends"/,/]/!d'
++ cut '-d ' -f 2-
++ sed 's/] /]\n/g'
++ tr -d '\n'
++ tr '\n' ' '
++ tr -d '\"'
++ tr -d '[]"'
+ [[ -n invalid signature)) ]]
+ depspkgs=($(grep -xvf <(printf '%s\n' "${aurpkgsproviders[@]}") <(printf '%s\n' "${depspkgs[@]}")))
+++ printf '%s\n' invalid 'signature))'
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n'
+ [[ x86_64 == \i\6\8\6 ]]
+ [[ ! -n '' ]]
+ [[ ! -n '' ]]
+ depspkgs=($($pacmanbin -T ${depspkgs[@]} | sort -u))
++ pacman -T
++ sort -u
error: quarry: signature from "Anatol Pomozov <[email protected]>" is invalid
+ unset depspkgsaur
+ [[ -n '' ]]
+ unset depspkgs
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ [[ -n '' ]]
+ deps=($(grep -xvf <(printf '%s\n' "${aurdepspkgs[@]}") <(printf '%s\n' "${deps[@]}")))
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n'
+++ printf '%s\n' invalid 'signature))'
+ deps+=(${aurdepspkgs[@]})
+ SetJson invalid 'signature))'
+ [[ 2 -eq 0 ]]
+ [[ -z {"version":5,"type":"multiinfo","resultcount":0,"results":[]} ]]
+ json='{"version":5,"type":"multiinfo","resultcount":0,"results":[]}'
+ SortDepsAur invalid 'signature))'
+ local i j sortaurpkgs sortdepspkgs sortdepspkgsaur
+ [[ -z '' ]]
+ sortaurpkgs=(${aurpkgs[@]})
+ unset checkedsortdepspkgsaur
+ for i in "${!sortaurpkgs[@]}"
+ unset sortdepspkgs sortdepspkgsaur
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "Depends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Depends invalid
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"invalid"/,/}/!d'
++ cut '-d ' -f 2-
++ tr -d '[]'
++ sed -e '/^"Depends"/,/]/!d'
++ tr '\n' ' '
++ tr -d '\"'
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "MakeDepends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' MakeDepends invalid
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"invalid"/,/}/!d'
++ tr -d '\"'
++ tr '\n' ' '
++ cut '-d ' -f 2-
++ tr -d '[]'
++ sed -e '/^"MakeDepends"/,/]/!d'
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "CheckDepends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' CheckDepends invalid
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"invalid"/,/}/!d'
++ sed -e '/^"CheckDepends"/,/]/!d'
++ tr '\n' ' '
++ tr -d '\"'
++ tr -d '[]'
++ cut '-d ' -f 2-
+ for j in "${!errdeps[@]}"
++ awk -F '>|<|=' '{print $1}'
+ errdepsnover[$j]=invalid
+ for j in "${!errdeps[@]}"
++ awk -F '>|<|=' '{print $1}'
+ errdepsnover[$j]='signature))'
+ [[ -z '' ]]
+ tsortdeps+=("${sortaurpkgs[$i]} ${sortaurpkgs[$i]}")
+ sortdepspkgsaur=($(grep -xvf <(printf '%s\n' "${allcheckedsortdepspkgsaur[@]}") <(printf '%s\n' "${sortdepspkgsaur[@]}")))
+++ printf '%s\n'
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n'
+ [[ -n '' ]]
+ for i in "${!sortaurpkgs[@]}"
+ unset sortdepspkgs sortdepspkgsaur
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "Depends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Depends 'signature))'
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"signature))"/,/}/!d'
++ tr '\n' ' '
++ sed -e '/^"Depends"/,/]/!d'
++ tr -d '\"'
++ cut '-d ' -f 2-
++ tr -d '[]'
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "MakeDepends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' MakeDepends 'signature))'
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"signature))"/,/}/!d'
++ sed -e '/^"MakeDepends"/,/]/!d'
++ tr '\n' ' '
++ tr -d '\"'
++ cut '-d ' -f 2-
++ tr -d '[]'
+ sortdepspkgs+=($(GetJson "arrayvar" "$json" "CheckDepends" "${sortaurpkgs[$i]}"))
++ GetJson arrayvar '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' CheckDepends 'signature))'
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d ', '
++ sed -e '/"Name":"signature))"/,/}/!d'
++ tr -d '\"'
++ cut '-d ' -f 2-
++ sed -e '/^"CheckDepends"/,/]/!d'
++ tr '\n' ' '
++ tr -d '[]'
+ for j in "${!errdeps[@]}"
++ awk -F '>|<|=' '{print $1}'
+ errdepsnover[$j]=invalid
+ for j in "${!errdeps[@]}"
++ awk -F '>|<|=' '{print $1}'
+ errdepsnover[$j]='signature))'
+ [[ -z '' ]]
+ tsortdeps+=("${sortaurpkgs[$i]} ${sortaurpkgs[$i]}")
+ sortdepspkgsaur=($(grep -xvf <(printf '%s\n' "${allcheckedsortdepspkgsaur[@]}") <(printf '%s\n' "${sortdepspkgsaur[@]}")))
+++ printf '%s\n'
++ grep -xvf /dev/fd/63 /dev/fd/62
+++ printf '%s\n'
+ [[ -n '' ]]
+ [[ -n '' ]]
+ deps=($(tsort <<< ${tsortdeps[@]}))
++ tsort
+ (( 0 > 0 ))
+ depsAname=($(GetJson "var" "$json" "Name"))
++ GetJson var '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Name
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ sed -r s/Name:/Name#/g
++ awk -F '#' '{print $2}'
++ grep -Po 'Name:.*'
+ depsAver=($(GetJson "var" "$json" "Version"))
++ GetJson var '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Version
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ grep -Po 'Version:.*'
++ sed -r s/Version:/Version#/g
++ awk -F '#' '{print $2}'
+ depsAood=($(GetJson "var" "$json" "OutOfDate"))
++ GetJson var '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' OutOfDate
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ grep -Po 'OutOfDate:.*'
++ sed -r s/OutOfDate:/OutOfDate#/g
++ awk -F '#' '{print $2}'
+ depsAmain=($(GetJson "var" "$json" "Maintainer"))
++ GetJson var '{"version":5,"type":"multiinfo","resultcount":0,"results":[]}' Maintainer
++ json_verify -q
++ case "$1" in
++ json_reformat
++ tr -d '", '
++ grep -Po 'Maintainer:.*'
++ sed -r s/Maintainer:/Maintainer#/g
++ awk -F '#' '{print $2}'
+ [[ -n invalid signature)) ]]
+ for i in "${!errdepsnover[@]}"
+ [[  invalid signature))  =~  invalid  ]]
+ Note f 'no results found for invalid'
+ case "$1" in
+ echo -e '\e[1;31m::\e[0m no results found for invalid'
:: no results found for invalid
+ for i in "${!errdepsnover[@]}"
+ [[  invalid signature))  =~  signature\)\)  ]]
+ Note f 'no results found for signature))'
+ case "$1" in
+ echo -e '\e[1;31m::\e[0m no results found for signature))'
:: no results found for signature))
+ exit 1
@rmarquis
Copy link
Owner

Thanks for the report. This is the same issue as #267. I'm closing this duplicate now.

@rmarquis rmarquis added this to the 4.8.x - new features milestone Jul 21, 2017
@ItachiSan
Copy link
Contributor Author

Thank you @rmarquis and sorry for the duplicate! 😄

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants