The context related routines, it turns out, are a big, BIG problem. However, the problem is not on the client-side. It's on the server-side.
[snip]
There are a couple other issues. The current interface is not used. Not even the gamma driver does any useful work in its createContext handler (see glint_dri.c, line 825). The same goes for the destroyContext routines.
[snip]
My vote is that the *protocol* for XF86DRICreateContext, XF86DRIDestroyContext, XF86DRIOpenFullScreen[4], and XF86DRICloseFullScreen be removed. That is, the client-side routines should be no-ops (to maintain backwards compatability) and the server-side routines should just return success (again, to maintain backwards compatability). The the best of my knowledge, no driver has ever used the FullScreen functionality. If a driver needs shared, per-context state, it should use its DRM.
The context problems are even bigger than I thought. In order to remove the call to XF86DRICreateContext in dri_util.c, I had to add a call to drmCreateContext. However, it turns out that this DRM call is root-only.
Can somebody please explain to me how it is more secure for the X-server to do this than the DRI client? The only thing I could see is a possible DoS attack (by using up all the DRM contexts), but that same attack is possible via the X-server.
This dog must have already bitten the people doing stand-alone DRI work. How did you get around it?
------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. SourceForge.net hosts over 70,000 Open Source Projects. See the people who have HELPED US provide better services: Click here: http://sourceforge.net/supporters.php _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel
