[MacPorts] #44353: rpm @ 4.4.9 segfault querying rpm files
#44353: rpm @ 4.4.9 segfault querying rpm files --------------------+-------------------------------- Reporter: ric@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Keywords: | Port: --------------------+-------------------------------- I've tried this with several rpm files that seem fine on Linux, but cause the macports rpm to segfault: System info: macbook pro 15 inch not retina, mid 2012, MacOS 10.9.4, xcode 5.1.1 (5B1008) Actual output from ports rpm $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm Segmentation fault: 11 Expected output (command run on an RHEL6 linux system for reference) $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm warning: opencl-1.2-devel-4.4.0.134-1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID f789186f: NOKEY /opt/intel /opt/intel/opencl-1.2-sdk-4.4.0.134 /opt/intel/opencl-1.2-sdk-4.4.0.134/include /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.hpp /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_platform.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/opencl.h -- Ticket URL: <https://trac.macports.org/ticket/44353> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Changes (by mf2k@…): * owner: macports-tickets@… => afb@… * cc: n3npq@… (added) * port: => rpm Old description:
I've tried this with several rpm files that seem fine on Linux, but cause the macports rpm to segfault: System info: macbook pro 15 inch not retina, mid 2012, MacOS 10.9.4, xcode 5.1.1 (5B1008)
Actual output from ports rpm $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm Segmentation fault: 11
Expected output (command run on an RHEL6 linux system for reference) $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm warning: opencl-1.2-devel-4.4.0.134-1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID f789186f: NOKEY /opt/intel /opt/intel/opencl-1.2-sdk-4.4.0.134 /opt/intel/opencl-1.2-sdk-4.4.0.134/include /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.hpp /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_platform.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/opencl.h
New description: I've tried this with several rpm files that seem fine on Linux, but cause the macports rpm to segfault: System info: macbook pro 15 inch not retina, mid 2012, MacOS 10.9.4, xcode 5.1.1 (5B1008) Actual output from ports rpm {{{ $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm Segmentation fault: 11 }}} Expected output (command run on an RHEL6 linux system for reference) {{{ $ rpm -q -l -p opencl-1.2-devel-4.4.0.134-1.x86_64.rpm warning: opencl-1.2-devel-4.4.0.134-1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID f789186f: NOKEY /opt/intel /opt/intel/opencl-1.2-sdk-4.4.0.134 /opt/intel/opencl-1.2-sdk-4.4.0.134/include /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl.hpp /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_gl_ext.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/cl_platform.h /opt/intel/opencl-1.2-sdk-4.4.0.134/include/CL/opencl.h }}} -- Comment: In the future, please use WikiFormatting, fill in the Port field and Cc the port maintainers ({{{port info --maintainers rpm}}}). -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by afb@…): In general the MacPorts version of rpm is only intended for Darwin packages, and is not guaranteed to be compatible with RHEL6 and RHEL7. You could try a newer version (5.x), but otherwise you need to provide the actual package for anyone to try to help you. Or just use rpm2cpio... -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by ric@…): I've attached the CentOS 5 tzdata rpm which is small and demonstrates the segv. -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by ric@…): further note: md5sum tzdata-2014e-1.el5.x86_64.rpm on originating host: aeba628d7a7d9aeeb0bd8db41c08e3a5 rpm 4.4.2 on CentOS 5 has no problem listing the content of the above rpm. -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by afb@…): Okay, the problem is when the old rpm is trying to open an old sqlite database that hasn't been initialized. {{{ D: Expected size: 806196 = lead(96)+sigs(344)+pad(0)+data(805756) D: Actual size: 806196 D: opening sql db /opt/local/var/lib/rpm/Packages (Packages) mode=0x2 D: stat on Packages nkeys 2 D: opening sql db /opt/local/var/lib/rpm/Pubkeys (Pubkeys) mode=0x2 D: Unable to open database: unable to open database file D: closed sql db Pubkeys Segmentation fault }}} If you create the database first, by importing the required key, there is no segfault with the signed package. {{{ $ /opt/local/bin/gpg --recv-key a8a447dce8562897 gpg: requesting key E8562897 from hkp server keys.gnupg.net gpg: key E8562897: public key "CentOS-5 Key (CentOS 5 Official Signing Key) <centos-5-key@centos.org>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 gpg: imported: 1 $ /opt/local/bin/gpg --export --armor e8562897 > e8562897.asc $ sudo /opt/local/bin/rpm --import e8562897.asc }}} This is similar to the crash seen with the regular database*. I suppose one could backport the lazy db init ? * #12999 Newer versions (since 4.5) don't need to run --initdb any longer. http://rpm5.org/community/rpm-devel/1443.html -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by afb@…): MacPorts didn't/doesn't by default sign the rpm packages that it creates. -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:7> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts