RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1566985 - [RFE] Support setting root directory in rpm file iterator library (rpmfi)
Summary: [RFE] Support setting root directory in rpm file iterator library (rpmfi)
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: rpm
Version: ---
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: pre-dev-freeze
: ---
Assignee: Packaging Maintenance Team
QA Contact: BaseOS QE Security Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-04-13 09:18 UTC by Matus Marhefka
Modified: 2022-06-10 13:51 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-03-12 08:29:41 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Matus Marhefka 2018-04-13 09:18:04 UTC
Description of problem:
RPM transaction library (rpmts) correctly supports setting root directory using rpmtsSetRootDir() function. This RFE is about extending this feature for rpm file iterator library (rpmfi) so it is also possible to verify files in the specified root directory without doing chroot into that directory.

The rpmfiNew() function currently completely ignores rpmts structure (which might be set to use other root directory):
https://github.com/rpm-software-management/rpm/blob/master/lib/rpmfi.c#L1756


Version-Release number of selected component (if applicable):
rpm-4.11.3-32.el7.x86_64
rpm-libs-4.11.3-32.el7.x86_64
rpm-devel-4.11.3-32.el7.x86_64

Comment 10 Matěj Týč 2022-06-03 14:29:54 UTC
Update of the description:

The Github link that points to the code that will likely require modification needs to reference a certain changeset, so links to the lines link still the same code.
So here is the fixed Github link:

https://github.com/rpm-software-management/rpm/blob/370c58746c3b8c178808aaa95e1acb009fc4a677/lib/rpmfi.c#L1865

The rpmts argument is accepted by rpmfiNew, but it is not passed on.

Comment 11 Panu Matilainen 2022-06-10 13:51:42 UTC
Passing arguments has little to do with it.

The issue is that by offering to handle root directory calculation (always assuming somebody wrote such code) rpm would take responsibility of things like ensuring relative paths dont escape the root, which is a responsibility we rather let the OS handle. Besides, verify in a chroot does not work correctly anyway wrt user/group if and when they differ between the "host" and the root.

In other words, things haven't changed at all since this was closed, and we have no plans to implement such functionality.


Note You need to log in before you can comment on or make changes to this bug.