Since rpm-4.6, rpm2cpio cannot work with non-local url, ie. commands like: rpm2cpio <non-local-http-or-ftp-url> | cpio -itv no more work. For unprivileged user, "rpm2cpio an-URL" just failed, but under root an extra directory "/%{_tmppath}" is created under the root "/" system dir. The issue is rpm2cpio does not initialize macros properly. (The rpm command itself works with remote urls fine). For tests, try: rpm2cpio http://download.fedora.redhat.com/pub/fedora/linux/releases/11/Fedora/i386/os/Packages/fedora-release-11-1.noarch.rpm >/dev/null with and without root privileges. Both cases fail, and a side-effect -- a directory named as "/%{_tmppath}" -- is created with root privileges. This bug is appeared since 4.6, tested under 4.6.1 and seems still present with 4.7.x
Right, rpm2cpio is initializing the macros but did so only after opening the file whereas url retrieval in rpm >= 4.6 needs the macros loaded. Fixed upstream now.
rpm-4.7.1-3.fc11 has been submitted as an update for Fedora 11. http://admin.fedoraproject.org/updates/rpm-4.7.1-3.fc11
rpm-4.7.1-3.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update rpm'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-10354
rpm-4.7.1-3.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.