Full Screen modes

if you call SDL_SetVideoMode() with the flag SDL_FULLSCREEN and the program
is running in x-windows will the user have to be root? I assume that this will
be using DGA?

-Garrett, WPI student majoring in Computer Science.

“He who joyfully marches in rank and file has already earned
my contempt. He has been given a large brain by mistake, since
for him the spinal cord would suffice.” -Albert Einstein

if you call SDL_SetVideoMode() with the flag SDL_FULLSCREEN and the program
is running in x-windows will the user have to be root? I assume that this will
be using DGA?

Yes.

-Sam Lantinga				(slouken at devolution.com)

Lead Programmer, Loki Entertainment Software–
“Any sufficiently advanced bug is indistinguishable from a feature”
– Rich Kulawiec

Yes. To use SDL_FULLSCREEN in X, you need to be root, or the binary
needs to be SUID root (A little more tricky). DGA is potentially
dangerous (They say) so they restrict the access to it.

-KWOn 7 Jul, Garrett B wrote:

if you call SDL_SetVideoMode() with the flag SDL_FULLSCREEN and the program
is running in x-windows will the user have to be root? I assume that this will
be using DGA?

As root using DGA, could you have the ability to access other memory that
wasn’t in the video memory? That would cause some security issues.

-Garrett, WPI student majoring in Computer Science.

“He who joyfully marches in rank and file has already earned
my contempt. He has been given a large brain by mistake, since
for him the spinal cord would suffice.” -Albert EinsteinOn Thu, 08 Jul 1999, you wrote:

Yes. To use SDL_FULLSCREEN in X, you need to be root, or the binary
needs to be SUID root (A little more tricky). DGA is potentially
dangerous (They say) so they restrict the access to it.

Yes. As root, the program can do ANYTHING to the system. Which is why
suid-root programs are so potentially dangerous. Any program that is
designed to run as root has to be VERY well written. Any buffer
overflow can compromise the system. I can’t count the number of times
that various SVGAlib programs have HARD locked my system. Even ones
that came with my distribution.

-KWOn 8 Jul, Garrett B wrote:

As root using DGA, could you have the ability to access other memory that
wasn’t in the video memory? That would cause some security issues.

Well I noticed with setting a fullscreen mode in SDL, if I was root, Id
get the fullscreen, but if I ran the program in a non-root account it would
fallback to a window. Is there much difference when accessing a fullscreen
surface and a window? If not it seems like a simple option to let the user
choose.

-Garrett, WPI student majoring in Computer Science.

“He who joyfully marches in rank and file has already earned
my contempt. He has been given a large brain by mistake, since
for him the spinal cord would suffice.” -Albert EinsteinOn Thu, 08 Jul 1999, you wrote:

On 8 Jul, Garrett B wrote:

As root using DGA, could you have the ability to access other memory that
wasn’t in the video memory? That would cause some security issues.

Yes. As root, the program can do ANYTHING to the system. Which is why
suid-root programs are so potentially dangerous. Any program that is
designed to run as root has to be VERY well written. Any buffer
overflow can compromise the system. I can’t count the number of times
that various SVGAlib programs have HARD locked my system. Even ones
that came with my distribution.

Right, because root has access to to DGA (And therefore full-screen).
Normal (non-root) users only get the window. As for a difference, Sam
could better explain those, since I don’t see much of a difference
(Besides the full-screen and video mode switching). I’ve been told
that it can speed up operations on some X servers, but I’ve not
experienced this myself.

-KWOn 8 Jul, Garrett B wrote:

Well I noticed with setting a fullscreen mode in SDL, if I was root, Id
get the fullscreen, but if I ran the program in a non-root account it would
fallback to a window. Is there much difference when accessing a fullscreen
surface and a window? If not it seems like a simple option to let the user
choose.