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 155605

Summary: prelink segfaults when reading corrupted ELF files
Product: [Fedora] Fedora Reporter: Michal Marek <michal.marek>
Component: prelinkAssignee: Jakub Jelinek <jakub>
Status: CLOSED RAWHIDE QA Contact:
Severity: low Docs Contact:
Priority: medium    
Version: 3   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: 0.3.5-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-07-25 22:31:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
patch avoiding the segfault
none
file causing the segfault none

Description Michal Marek 2005-04-21 18:59:17 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050323 Fedora/1.7.6-1.3.2

Description of problem:
After building a custom Python RPM, the daily prelink run segfaulted when prelinking /usr/lib/debug/usr/bin/python.debug. It's nothing critical, since the python.debug file is probably broken anyway, but prelink should print a warning message and continue instead. I wrote a quick patch which just silently ignores it, will attach that.

Version-Release number of selected component (if applicable):
prelink-0.3.3, prelink-0.3.4 from devel too

How reproducible:
Always

Steps to Reproduce:
1. Create a corrupted ELF file (will attach one)
2. run 'prelink /path/to/file' or 'prelink -a'

  

Actual Results:  Segmentation fault (core dumped)


Expected Results:  "File %s is corrupted, not prelinking" or something like that.

Additional info:

Only special configuration is that debug file I'll attach, everything else is a normal FC3 install.

Comment 1 Michal Marek 2005-04-21 19:03:43 UTC
Created attachment 113483 [details]
patch avoiding the segfault

This just avoids the segfault, ideally read_dynamic() should return int
indicating success/error.

Comment 2 Michal Marek 2005-04-21 19:08:53 UTC
Created attachment 113484 [details]
file causing the segfault

Don't know why I got such a file after building my Python RPM,
it looks like an ELF, but it crashes prelink :-(

PS: Sorry for the looong line in the bugreport, didn't realize
bugzilla doesn't break lines for me.

Comment 3 Michal Marek 2005-04-21 19:22:09 UTC
*** Bug 155607 has been marked as a duplicate of this bug. ***

Comment 4 Jakub Jelinek 2005-07-25 22:31:41 UTC
Forgot to close this, it has been fixed in 0.3.5-1.