xref: /freebsd/lib/libutil/login_tty.3 (revision 4b9d6057)
1.\"
2.\" Copyright (c) 1996 Joerg Wunsch
3.\"
4.\" All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25.\" "
26.Dd May 10, 2020
27.Dt LOGIN_TTY 3
28.Os
29.Sh NAME
30.Nm login_tty
31.Nd prepare a tty for a new login session
32.Sh LIBRARY
33.Lb libutil
34.Sh SYNOPSIS
35.In libutil.h
36.Ft int
37.Fn login_tty "int fd"
38.Sh DESCRIPTION
39The function
40.Fn login_tty
41prepares a terminal for a new login session.
42The file descriptor
43.Ar fd
44passed to
45.Fn login_tty
46must be opened for reading and writing on a terminal device.
47It will be
48made the controlling terminal for the calling process, after allocating
49a new session with
50.Xr setsid 2 .
51This terminal device will also be made the standard input, standard output,
52and standard error output of the calling process.
53.Sh RETURN VALUES
54The
55.Fn login_tty
56function returns -1 if it could not make the device referenced by
57.Ar fd
58the controlling terminal of the calling process, and 0 otherwise.
59.Sh SEE ALSO
60.Xr dup2 2 ,
61.Xr ioctl 2 ,
62.Xr setsid 2 ,
63.Xr tty 4
64.Sh HISTORY
65The function
66.Fn login_tty
67first appeared in
68.Bx 4.4 .
69