Bug 252227 - gcl fails with segmentation fault. selinux prevents gcl from performing a text relocation.
Summary: gcl fails with segmentation fault. selinux prevents gcl from performing a te...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: gcl
Version: 7
Hardware: x86_64
OS: Linux
low
urgent
Target Milestone: ---
Assignee: Gérard Milmeister
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-08-14 20:03 UTC by Mark Harig
Modified: 2007-11-30 22:12 UTC (History)
0 users

Fixed In Version: 2.6.7-15.fc7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-08-20 16:03:19 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Mark Harig 2007-08-14 20:03:06 UTC
Description of problem:
gcl fails to start, but instead fails with a segmentation fault.  Shortly
thereafter, the setroubleshoot browser signals that it has a new message about
why selinux prevented gcl from running.

Version-Release number of selected component (if applicable):
  $ rpm -q gcl selinux-policy selinux-policy-targeted
  gcl-2.6.7-14.fc7
  selinux-policy-2.6.4-33.fc7
  selinux-policy-targeted-2.6.4-33.fc7

How reproducible:
Always, i.e., every time I enter 'gcl' at the bash shell prompt.

Steps to Reproduce:
1. Enter 'gcl' at the bash shell prompt.
2.
3.
  
Actual results:
"Segmentation fault"

Expected results:
gcl interpreter should start, followed by the interpreter's prompt.

Additional info:
The setroubleshoot browser provides the following detailed description:

"The /usr/lib/gcl-2.6.7/unixport/saved_ansi_gcl application attempted to load
/usr/lib/gcl-2.6.7/unixport/saved_ansi_gcl which requires text relocation. This
is a potential security problem. Most libraries do not need this permission.
Libraries are sometimes coded incorrectly and request this permission. The
SELinux Memory Protection Tests web page explains how to remove this
requirement. You can configure SELinux temporarily to allow
/usr/lib/gcl-2.6.7/unixport/saved_ansi_gcl to use relocation as a workaround,
until the library is fixed. Please file a bug report against this package."

Comment 1 Gérard Milmeister 2007-08-14 20:21:03 UTC
Try "/sbin/restorecon -r /usr/lib/gcl-2.6.7".

Comment 2 Mark Harig 2007-08-14 20:31:00 UTC
I can do that, but should it be necessary?  (I'm not too knowledgeable about
selinux -- I use the default Fedora settings.)  By comparison, neither sbcl nor
clisp have this problem:

   $ rpm -q sbcl clisp
   sbcl-1.0.6-2.fc7
   clisp-2.41-3.fc7

Both start without problems and without my having created special selinux
settings.  In addition, sbcl and clisp put their libraries in, respectively,

   /usr/lib64/sbcl
   /usr/lib64/clisp

while 'gcl' puts its libraries in /usr/lib/gcl-2.6.7.


Comment 3 Mark Harig 2007-08-14 20:35:59 UTC
This did not fix the problem.  Here is the result (run as 'root'):

# /sbin/restorecon -r /usr/lib/gcl-2.6.7
# echo $?
0
# gcl
Segmentation fault


Comment 4 Gérard Milmeister 2007-08-14 21:25:00 UTC
The post-install script of the gcl package takes care of the selinux business.
I found the problem now, the script uses the wrong path on 64-bit platforms.
I will make a new build ASAP. This will appear in updates-testing. Please try
it from there and report back.

Comment 5 Mark Harig 2007-08-14 22:03:23 UTC
I will attempt to check it today.


Comment 6 Fedora Update System 2007-08-15 19:42:12 UTC
gcl-2.6.7-15.fc7 has been pushed to the Fedora 7 testing repository.  If problems still persist, please make note of it in this bug report.

Comment 7 Mark Harig 2007-08-15 22:04:57 UTC
I have enabled the 'fedora-updates-testing.repo', but 'gcl' is not appearing as
an available package for download.  Is it possible that only the 'i386' version
is available while the 'x86_64' version is not?


Comment 8 Gérard Milmeister 2007-08-16 09:51:27 UTC
It takes a little time for the mirrors to sync, so try again.

Comment 9 Mark Harig 2007-08-16 15:01:51 UTC
I have installed the (x86_64) test version via 'yum install'.  gcl no longer
fails with a segmentation fault.  I started the interpreter, evaluated several
expressions, and exited the interpreter without any errors, and then repeated
that  startup-eval-shutdown sequence several times without seeing any errors. 
There were also no error messages displayed in /var/log/messages or
/var/log/secure, and the setroubleshoot program does not have any new reports.

The problem that I reported appears to have been fixed.  Thank you!

(Note: The x86_64 gcl library files are still installed in '/usr/lib/' instead
of '/usr/lib64'.)


Comment 10 Fedora Update System 2007-08-20 16:03:16 UTC
gcl-2.6.7-15.fc7 has been pushed to the Fedora 7 stable repository.  If problems still persist, please make note of it in this bug report.


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