TIOCSCTTY(2const) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | SEE ALSO | COLOPHON

TIOCSCTTY(2const)                                      TIOCSCTTY(2const)

NAME         top

       TIOCSCTTY, TIOCNOTTY - controlling the terminal

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <asm/termbits.h>  /* Definition of TIOC*TTY constants */
       #include <sys/ioctl.h>

       int ioctl(int fd, TIOCSCTTY, int arg);
       int ioctl(int fd, TIOCNOTTY);

DESCRIPTION         top

       TIOCSCTTY
              Make the given terminal the controlling terminal of the
              calling process.  The calling process must be a session
              leader and not have a controlling terminal already.  For
              this case, arg should be specified as zero.

              If this terminal is already the controlling terminal of a
              different session group, then the ioctl fails with EPERM,
              unless the caller has the CAP_SYS_ADMIN capability and arg
              equals 1, in which case the terminal is stolen, and all
              processes that had it as controlling terminal lose it.

       TIOCNOTTY
              If the given terminal was the controlling terminal of the
              calling process, give up this controlling terminal.  If
              the process was session leader, then send SIGHUP and
              SIGCONT to the foreground process group and all processes
              in the current session lose their controlling terminal.

RETURN VALUE         top

       On success, 0 is returned.  On error, -1 is returned, and errno
       is set to indicate the error.

ERRORS         top

       EPERM  Insufficient permission.

SEE ALSO         top

       ioctl(2), ioctl_tty(2)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.9.1.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2024-06-26.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       [email protected]

Linux man-pages 6.9.1          2024-06-13              TIOCSCTTY(2const)

Pages that refer to this page: ioctl_tty(2)