Man Linux: Main Page and Category List


       grab_vcsa - Linux console vcsa grabber




       The  Linux  console allows text mode video buffer access^. For each tty
       device (/dev/tty0..31) there  exist  two  devices  (/dev/vcs0..31)  and
       (/dev/vcsa0..31).   These  devices are two different representations of
       the content of the console.

       When you login on the Linux console, your tty device is  changed  owner
       to you, so you can read/write it. When you logout it is takes from you.
       This does not happen with the vcs and vcsa  devices,  i.e.  you  cannot
       access the video buffer of your own tty.

       Unfortunately  there  is  a  lot  of  reason to use the text mode video
       buffer. For instance, it is not possible to get access to the full  256
       characters  the  VGA  adapter  can  display without using the text mode
       video buffer (Linux emulates the vt100 character  set  which  does  not
       have  all  VGA  characters). This annoyance severely limits the porting
       possibilities to  Linux  of  software  that  was  written  with  a  VGA
       character set in mind.

       grab_vcsa  is  a  setuid root program that, when called will change the
       owner of the vcs and vcsa devices to you, after a  series  of  security
       checks have been performed.

       It is not necessary to change the permissions back again (this would be
       pointless since a user could  kill  a  imaginary  release_vcsa  program
       before  it can do its work). The permissions are automatically reverted
       on logout.

       grab_vcsa is used by the Free Pascal video unit. The video unit  allows
       programmers  to  develop portable programs accross Dos, Linux, FreeBSD,
       Windows, OS/2 and other operating systems while they can  still  assume
       being able to use the full VGA character set.


       grab_vcsa has the following return codes:

       0      Success

       1      You are not running on the Linux console

       2      Error while statting tty.

       3      Error while executing chown.

       4      Error while executing chmod.

       4      You do not own your own tty.


       Daniel Mantione <>