Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 85346 - invalid uids cause overflow in getUname
Summary: invalid uids cause overflow in getUname
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: rpm-build
Version: 8.0
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Jeff Johnson
QA Contact:
Depends On:
Blocks: 84648
TreeView+ depends on / blocked
Reported: 2003-02-28 13:10 UTC by Denys Duchier
Modified: 2007-04-18 16:51 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2003-04-17 15:14:58 UTC

Attachments (Terms of Use)

Description Denys Duchier 2003-02-28 13:10:26 UTC
when a source rpm somehow contains a non-portable uid (instead of root), 
getUname is invoked repeatedly, each time increments uid_used, but then 
getpwuid returns a NULL pointer.  The code correctly checks for the NULL 
pointer, but does not redecrement uid_used in that case.  Thus, if there 
are more than 1024 calls to getUname with this same non-portable uid, the 
unames cache overflows eventhough none of its entries are used. 
I have no idea how the non-portable uid gets into the src rpm in the first 
place, perhaps this is an issue of login vs non-login root shell when creating 
the src rpm.

Comment 1 Jeff Johnson 2003-04-17 15:14:58 UTC
Ah yes, that was borken. Thanks for the analysis.

Fixed in CVS, will be in rpm-4.3 when built.

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