nVIDIA binary driver audits generated by OpenGL apps

Daniel J Walsh dwalsh at redhat.com
Wed Apr 28 15:40:59 UTC 2004


Andrew Farris wrote:

>I am working toward getting Enforcing mode to work with the nvidia
>binary drivers, and having some difficulties.  I see that there is some
>policy with this intention , but it is not quite adequate yet, as below.
>Some hints how to proceed, or solutions to this would be appreciated.
>Running enforcing with /dev/nvidia* labeled as xserver_misc_device_t:
>
>Apr 26 17:13:59 CirithUngol kernel: audit(1083024839.937:0): avc:
>denied  { read write } for  pid=15200 exe=/usr/X11R6/bin/glxinfo
>name=nvidiactl dev=hdb8 ino=65738 scontext=LordMorgul:user_r:user_t
>tcontext=system_u:object_r:xserver_misc_device_t tclass=chr_file
>
>Apr 26 17:14:04 CirithUngol kernel: audit(1083024844.641:0): avc:
>denied  { read write } for  pid=15209 exe=/usr/X11R6/bin/glxgears
>name=nvidiactl dev=hdb8 ino=65738 scontext=LordMorgul:user_r:user_t
>tcontext=system_u:object_r:xserver_misc_device_t tclass=chr_file
>
>The X server can start up as normal user without any audit of X itself
>startinghen X is started in permissive mode only these audits appear,
>but glxgears and glxinfo work as expected.  These programs, and all my
>other openGL apps, need access to /dev/nvidiactl.
>
>The error message generated at command prompt in enforcing mode is:
>Error: Could not open /dev/nvidiactl because the permissions
>are too resticitive.  Please see the FREQUENTLY ASKED QUESTIONS
>section of /usr/share/doc/NVIDIA_GLX-1.0/README for steps
>to correct.
>
>Although the unix perms of the device nodes are all identical as below:
>crw-rw-rw-  0 0   system_u:object_r:xserver_misc_device_t /dev/nvidiactl
>crw-rw-rw-  1 0 0 195, 255 Apr 17 16:28 /dev/nvidiactl
>
>To relabel the devices I uncommented the definition of
>xserver_misc_device_t from ./types/device.te, and added the following
>line to ./file_contexts/program/xserver.fc (then make reload, followed
>by setfiles on these devices).
>/dev/nvidia.*        system_u:object_r:xserver_misc_device_t
>
>And I rely on these (there are 4) lines in policy.conf after the make (I
>do not understand how these are generated yet).
>allow user_xserver_t xserver_misc_device_t:chr_file { ioctl read getattr
>lock write append };
>
>When running enforcing with the /dev/nvidia* devices labeled as
>dri_device_t (had to try), the same behavior exists, X runs.. but
>glxgears/glxinfo (and GL games) cannot access the nvidiactl device.
>
>  
>
Did setting the context to

xserver_misc_device_t
get it to work?

Dan




More information about the fedora-selinux-list mailing list