Bug 593506 - SELinux is preventing /usr/bin/amdcccle from loading /usr/lib/catalyst/libatiadlxx.so which requires text relocation.
Summary: SELinux is preventing /usr/bin/amdcccle from loading /usr/lib/catalyst/libati...
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 12
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Daniel Walsh
QA Contact: Fedora Extras Quality Assurance
Whiteboard: setroubleshoot_trace_hash:17c3720c077...
Depends On:
TreeView+ depends on / blocked
Reported: 2010-05-19 00:50 UTC by Gleb Sharkunov
Modified: 2010-05-19 12:44 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2010-05-19 12:44:51 UTC
Type: ---

Attachments (Terms of Use)

Description Gleb Sharkunov 2010-05-19 00:50:34 UTC

SELinux is preventing /usr/bin/amdcccle from loading
/usr/lib/catalyst/libatiadlxx.so which requires text relocation.

Detailed Description:

[SELinux is in permissive mode. This access was not denied.]

The amdcccle application attempted to load /usr/lib/catalyst/libatiadlxx.so
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
(http://people.redhat.com/drepper/selinux-mem.html) web page explains how to
remove this requirement. You can configure SELinux temporarily to allow
/usr/lib/catalyst/libatiadlxx.so to use relocation as a workaround, until the
library is fixed. Please file a bug report.

Allowing Access:

If you trust /usr/lib/catalyst/libatiadlxx.so to run correctly, you can change
the file context to textrel_shlib_t. "chcon -t textrel_shlib_t
'/usr/lib/catalyst/libatiadlxx.so'" You must also change the default file
context files on the system in order to preserve them even on a full relabel.
"semanage fcontext -a -t textrel_shlib_t '/usr/lib/catalyst/libatiadlxx.so'"

Fix Command:

chcon -t textrel_shlib_t '/usr/lib/catalyst/libatiadlxx.so'

Additional Information:

Source Context                unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1
Target Context                system_u:object_r:lib_t:s0
Target Objects                /usr/lib/catalyst/libatiadlxx.so [ file ]
Source                        amdcccle
Source Path                   /usr/bin/amdcccle
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           xorg-x11-drv-catalyst-10.4-2.fc12
Target RPM Packages           xorg-x11-drv-catalyst-libs-10.4-2.fc12
Policy RPM                    selinux-policy-3.6.32-114.fc12
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Permissive
Plugin Name                   allow_execmod
Host Name                     (removed)
Platform                      Linux (removed) #1 SMP
                              Fri Apr 30 20:34:53 UTC 2010 i686 athlon
Alert Count                   1
First Seen                    Wed 19 May 2010 03:49:09 AM EEST
Last Seen                     Wed 19 May 2010 03:49:09 AM EEST
Local ID                      d8123141-b12d-4871-a3c1-ebfa20d2e10d
Line Numbers                  

Raw Audit Messages            

node=(removed) type=AVC msg=audit(1274230149.882:25294): avc:  denied  { execmod } for  pid=2270 comm="amdcccle" path="/usr/lib/catalyst/libatiadlxx.so" dev=sda3 ino=262725 scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=system_u:object_r:lib_t:s0 tclass=file

node=(removed) type=SYSCALL msg=audit(1274230149.882:25294): arch=40000003 syscall=125 success=yes exit=0 a0=208c000 a1=2e000 a2=5 a3=bffcaaf0 items=0 ppid=1 pid=2270 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=1 comm="amdcccle" exe="/usr/bin/amdcccle" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null)

Hash String generated from  allow_execmod,amdcccle,unconfined_t,lib_t,file,execmod
audit2allow suggests:

#============= unconfined_t ==============
#!!!! This avc can be allowed using the boolean 'allow_execmod'

allow unconfined_t lib_t:file execmod;

Comment 1 Daniel Walsh 2010-05-19 12:44:51 UTC
The sealert explains how to fix this, or you can turn off the check using

setsebool -P allow_execmod 1

This is a bug in the catalyst package.

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