Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 685132 - app-portage/portage-utils-9999: qkeyword --matchmaint perl@gentoo.org matches maintainer-needed packages
Summary: app-portage/portage-utils-9999: qkeyword --matchmaint perl@gentoo.org matches...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Third-Party Tools (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Fabian Groffen
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-05 20:38 UTC by Kent Fredric (IRC: kent\n) (RETIRED)
Modified: 2019-05-06 10:12 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2019-05-05 20:38:31 UTC
qkeyword -m perl@gentoo.org -i amd64 -v
app-admin/integrit-4.1-r1 +x86 ~amd64 +ppc 
keyword: Failed to read keywords for app-admin/perl-cleaner-9999
keyword: Failed to read keywords for app-backup/backintime-9999
app-backup/tob-0.26-r2 +x86 ~amd64 ~ppc 
app-cdr/cue2toc-0.4 ~x86 ~x86-fbsd +ppc64 ~hppa ~alpha ~arm ~ia64 ~sparc ~amd64 ~sh ~ppc 
app-cdr/xdvdfs-tools-2.1-r1 +x86 ~amd64 ~ppc 
app-dicts/eblook-1.6.1 +x86 ~amd64 +ppc 
app-dicts/freedict-eng-fra-1.0 +x86 ~hppa +alpha ~mips +sparc ~amd64 +ppc 
app-dicts/freedict-eng-ita-1.0 +x86 ~hppa +alpha ~mips +sparc ~amd64 +ppc 
app-dicts/freedict-eng-swe-1.0 +x86 ~hppa +alpha ~mips +sparc ~amd64 +ppc 
app-dicts/freedict-fra-eng-1.0 +x86 ~hppa +alpha ~mips +sparc ~amd64 +ppc 
app-dicts/freedict-ita-eng-1.0 +x86 ~hppa +alpha ~mips +sparc ~amd64 +ppc 
keyword: Failed to read keywords for app-emulation/docker-gc-9999
keyword: Failed to read keywords for app-emulation/rex-client-9999
app-forensics/galleta-20040505_p1 +x86 ~amd64 ~ppc 
app-forensics/mac-robber-1.02 +x86 ~amd64 ~ppc 
keyword: Failed to read keywords for app-forensics/openscap-9999
app-forensics/pasco-20040505_p1-r1 +x86 ~amd64 ~ppc 
app-forensics/rifiuti-20040505_p1 +x86 ~amd64 ~ppc 
app-laptop/spicctrl-1.9-r1 +x86 ~amd64 
app-misc/cadubi-1.3 +x86 +ppc64 ~amd64 +ppc 
app-misc/glastree-1.04 +x86 ~amd64 +ppc 



cat /usr/portage/app-admin/integrit/metadata.xml 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<!-- maintainer-needed -->
	<upstream>
		<remote-id type="sourceforge">integrit</remote-id>
	</upstream>
</pkgmetadata>

cat /usr/portage/app-backup/tob/metadata.xml 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>


cat /usr/portage/app-cdr/cue2toc/metadata.xml 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<!-- maintainer-needed -->
	<longdescription lang="en">
		cue2toc is a free program for UNIX systems to convert CUE files to cdrdao's
		TOC format. Features include: support for complete set of CUE commands (e.g.
		catalog number, data and audio tracks, ISRC codes, CD-Text, Pre-/Postgaps
		(with zero data or data from file), subindexes etc.), automatic determination
		of session type and conversion of data files by user configurable commands
		based on file name extension matching.
	</longdescription>
	<upstream>
		<remote-id type="sourceforge">cue2toc</remote-id>
	</upstream>
</pkgmetadata>


cat /usr/portage/app-cdr/xdvdfs-tools/metadata.xml 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
  <!-- maintainer-needed -->
  <longdescription>Tools for manipulating Xbox ISO images</longdescription>
</pkgmetadata>


cat /usr/portage/app-dicts/eblook/metadata.xml 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
</pkgmetadata>


....


And eventually hits a SEGV (Can't tell if related)
0x000055555556ed10 in qkeyword_results_cb (pkg_ctx=0x5555562e1100, priv=0x7fffffffaca0) at qkeyword.c:642
642			for (emailw = metadata->email; emailw != NULL; emailw = emailw->next) {



(gdb) bt full
#0  0x000055555556ed10 in qkeyword_results_cb (pkg_ctx=0x5555562e1100, priv=0x7fffffffaca0) at qkeyword.c:642
        keywords = 0x2000
        data = 0x7fffffffaca0
        buf = "app-admin/genmenu-9999\000metadata/cache\000che\000\000\061\000\061\000\000r1\000\367\377\177\000\000B\277\300\367\377\177\000\000\000\000\000\000\000\000\000\000\360\234\377\377\377\177\000\000\000\000\000\000\000\000\000\000\033\302YU", '\000' <repeats 20 times>, "\377\377\377\377\377\377\377\377\000\002[\024̱Q\360\006\000\000\000\000\000\000\000\240\241\377\377\377\177\000\000\220\241\377\377\377\177\000\000\t\000\000\000\000\000\000\000\340\242\377\377\377\177\000\000!\302YUUU\000\000 \244\326\367\377\177\000\000B\277\300\367\377\177\000\000\000\000\000\000\000\000\000\000p"...
        patom = 0x555556308470
        meta = 0x55555621ee20
        metadata = 0x0
        emailw = 0x5555555bea40
        ret = 21845
#1  0x0000555555588e48 in cache_foreach_pkg_int (sroot=0x5555555b7260 "/", portdir=0x5555555bea40 "/var/lib/layman/pentoo", callback=0x55555556eba2 <qkeyword_results_cb>, 
    priv=0x7fffffffaca0, filter=0x0, sort=true, catsortfunc=0x0, pkgsortfunc=0x55555556d953 <qkeyword_vercmp>) at cache.c:662
        ctx = 0x55555621ee20
        cat_ctx = 0x5555563085f0
        pkg_ctx = 0x5555562e1100
        ret = 0
#2  0x0000555555588f37 in cache_foreach_pkg_sorted (sroot=0x5555555b7260 "/", portdir=0x5555555bea40 "/var/lib/layman/pentoo", callback=0x55555556eba2 <qkeyword_results_cb>, 
    priv=0x7fffffffaca0, catsortfunc=0x0, pkgsortfunc=0x55555556d953 <qkeyword_vercmp>) at cache.c:685
No locals.
#3  0x000055555556f279 in qkeyword_traverse (func=0x55555556d9cb <qkeyword_imlate>, priv=0x7fffffffaca0) at qkeyword.c:753
        ret = 1
        n = 1
        overlay = 0x5555555bea40 "/var/lib/layman/pentoo"
        data = 0x7fffffffaca0
#4  0x000055555556f750 in qkeyword_main (argc=6, argv=0x7fffffffcf08) at qkeyword.c:825
        i = -1
        action = 105 'i'
        data = {qatom = 0x0, lastatom = 0x5555562b19a0, qmaint = 0x7fffffffd432 "perl@gentoo.org", keywordsbuf = 0x5555555ba410, keywordsbuflen = 33, arch = 0x7fffffffd445 "amd64", 
          runfunc = 0x55555556d9cb <qkeyword_imlate>}
        pkg = 0x0
        cat = 0x0
        maint = 0x7fffffffd432 "perl@gentoo.org"
        __func__ = "qkeyword_main"
#5  0x0000555555566786 in q_main (argc=6, argv=0x7fffffffcf08) at q.c:90
        i = 0
        install = 0
        p = 0x7fffffffd426 "qkeyword"
        func = 0x55555556f2ba <qkeyword_main>
        __func__ = "q_main"
#6  0x000055555556649b in main (argc=6, argv=0x7fffffffcf08) at main.c:802
        st = {st_dev = 21, st_ino = 20, st_nlink = 1, st_mode = 8592, st_uid = 1000, st_gid = 5, __pad0 = 0, st_rdev = 34833, st_size = 0, st_blksize = 1024, st_blocks = 0, st_atim = {
            tv_sec = 1557087952, tv_nsec = 605966964}, st_mtim = {tv_sec = 1557087952, tv_nsec = 605966964}, st_ctim = {tv_sec = 1557040847, tv_nsec = 605966964}, __glibc_reserved = {0, 
            0, 0}}


print *pkg_ctx
$2 = {name = 0x5555560574a3 "genmenu-9999", slot = 0x0, repo = 0x5555555c10b0 "pentoo", slot_len = 3272818884292212525, repo_len = 3471552286758890608, fd = -1, cat_ctx = 0x555556308430}

print *data
$7 = {qatom = 0x0, lastatom = 0x5555562b19a0, qmaint = 0x7fffffffd432 "perl@gentoo.org", keywordsbuf = 0x5555555ba410, keywordsbuflen = 33, arch = 0x7fffffffd445 "amd64", 
  runfunc = 0x55555556d9cb <qkeyword_imlate>}


print *patom
$8 = {blocker = ATOM_BL_NONE, pfx_op = ATOM_OP_NONE, sfx_op = ATOM_OP_NONE, CATEGORY = 0x555556308511 "app-admin", PN = 0x55555630851b "genmenu", PV = 0x555556308523 "9999", PR_int = 0, 
  letter = 0 '\000', suffixes = 0x555556307230, PVR = 0x5555563084f7 "9999-r0", P = 0x5555563084e0 "genmenu-9999", usedeps = 0x0, SLOT = 0x0, SUBSLOT = 0x0, slotdep = ATOM_SD_NONE, 
  REPO = 0x0}

 print *meta
$9 = {_data = 0x400000003 <error: Cannot access memory at address 0x400000003>, DEPEND = 0x5555555c30c0 "\004", RDEPEND = 0x5555555c07d0 "\320\022\nVUU", 
  SLOT = 0x35 <error: Cannot access memory at address 0x35>, SRC_URI = 0x1 <error: Cannot access memory at address 0x1>, 
  RESTRICT = 0x7ffff7c6ec40 <alphasort64> "H\203\354\030dH\213\004%(", HOMEPAGE = 0x55555556d953 <qkeyword_vercmp> "UH\211\345H\203\354\020H\211}\370H\211u\360H\213E\360H\213", 
  LICENSE = 0x37 <error: Cannot access memory at address 0x37>, DESCRIPTION = 0x555556197cf0 "C?(VUU", KEYWORDS = 0x555556308430 "\343\022\nVUU", 
  INHERITED = 0x55555620a0d0 "\377\377\377\377\005", IUSE = 0x5555555c10b0 "pentoo", CDEPEND = 0x80 <error: Cannot access memory at address 0x80>, 
  PDEPEND = 0x51 <error: Cannot access memory at address 0x51>, PROVIDE = 0x555555921f20 " \263\334UUU", EAPI = 0x5555555b7010 "", 
  PROPERTIES = 0x2d6c726570080040 <error: Cannot access memory at address 0x2d6c726570080040>, 
  DEFINED_PHASES = 0x4c2d656c75646f4d <error: Cannot access memory at address 0x4c2d656c75646f4d>, 
  REQUIRED_USE = 0x646e6f432d64616f <error: Cannot access memory at address 0x646e6f432d64616f>, BDEPEND = 0x2d6c616e6f697469 <error: Cannot access memory at address 0x2d6c616e6f697469>, 
  _eclasses_ = 0x2d302e3034362e30 <error: Cannot access memory at address 0x2d302e3034362e30>, _md5_ = 0x3372 <error: Cannot access memory at address 0x3372>}

print *emailw
$10 = {addr = 0x62696c2f7261762f <error: Cannot access memory at address 0x62696c2f7261762f>, next = 0x2f6e616d79616c2f}



 cat /var/lib/layman/pentoo/app-admin/genmenu/genmenu-9999.ebuild 
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=5

inherit git-r3

DESCRIPTION="a tool for generating freedesktop-compliant menus"
HOMEPAGE="https://github.com/pentoo/genmenu"
EGIT_REPO_URI="https://github.com/pentoo/genmenu.git"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""

#gnome-base/gnome-menus"
DEPEND=">=dev-python/lxml-1.3.6"
RDEPEND="${DEPEND}"

src_install() {
	insinto /usr/
	doins -r "${S}"/src/share
	dosym /usr/share/fern-wifi-cracker/resources/icon.png /usr/share/pixmaps/fern-wifi-cracker.png
	chown -R root:root "${ED}"
	dobin src/bin/genmenu.py src/bin/launch
}

pkg_postinst() {
	einfo
	einfo "The genmenu has been updated."
	einfo "You should run the following command to regenerate the main Pentoo menu for a local user:"
	einfo "E17:  genmenu.py -e"
	einfo "Xfce: genmenu.py -x"
	einfo "KDE:  genmenu.py -k"
	einfo
	einfo "See -h for more options"
}

 ls /var/lib/layman/pentoo/app-admin/genmenu/
genmenu-9999.ebuild
Comment 1 Larry the Git Cow gentoo-dev 2019-05-06 06:41:43 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=baed7caa2b6e56545b5f3c29da7bc13c7658d0a8

commit baed7caa2b6e56545b5f3c29da7bc13c7658d0a8
Author:     Fabian Groffen <grobian@gentoo.org>
AuthorDate: 2019-05-06 06:40:33 +0000
Commit:     Fabian Groffen <grobian@gentoo.org>
CommitDate: 2019-05-06 06:40:33 +0000

    qkeyword: correctly handle missing metadata.xml or email fields
    
    - if metadata.xml is absent, don't crash
    - if metadata.xml didn't contain an email, don't match as result
    
    Bug: https://bugs.gentoo.org/685132
    Signed-off-by: Fabian Groffen <grobian@gentoo.org>

 qkeyword.c | 7 +++++++
 1 file changed, 7 insertions(+)
Comment 2 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2019-05-06 10:12:17 UTC
All good here :)