]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - lib/libulog/ulog_login.3
pmap: move the smp_targeted_tlb_shutdown pointer stuff to amd64 pmap.h
[FreeBSD/FreeBSD.git] / lib / libulog / ulog_login.3
1 .\" Copyright (c) 2009 Ed Schouten <ed@FreeBSD.org>
2 .\" All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .Dd October 11, 2010
26 .Dt ULOG_LOGIN 3
27 .Os
28 .Sh NAME
29 .Nm ulog_login ,
30 .Nm ulog_login_pseudo ,
31 .Nm ulog_logout ,
32 .Nm ulog_logout_pseudo
33 .Nd manage user login records
34 .Sh LIBRARY
35 .Lb libulog
36 .Sh SYNOPSIS
37 .In ulog.h
38 .Ft void
39 .Fn ulog_login "const char *line" "const char *user" "const char *host"
40 .Ft void
41 .Fn ulog_login_pseudo "int fd" "const char *host"
42 .Ft void
43 .Fn ulog_logout "const char *line"
44 .Ft void
45 .Fn ulog_logout_pseudo "int fd"
46 .Sh DESCRIPTION
47 The
48 .Fn ulog_login
49 and
50 .Fn ulog_login_pseudo
51 functions register a login session on a TTY.
52 The
53 .Fn ulog_login
54 function adds an entry for TTY
55 .Fa line
56 and username
57 .Fa user .
58 The
59 .Fn ulog_login_pseudo
60 function uses file descriptor to a pseudo-terminal master device
61 .Fa fd
62 to determine the TTY name, while using the username belonging to the
63 real user ID of the calling process.
64 The optional
65 .Fa host
66 argument denotes a remote hostname, in case the login session is
67 provided by a network service.
68 .Pp
69 The
70 .Fn ulog_logout
71 and
72 .Fn ulog_logout_pseudo
73 functions mark the previously registered login session as being
74 terminated.
75 .Pp
76 Because the
77 .Fa line
78 and
79 .Fa user
80 arguments of
81 .Fn ulog_login
82 and
83 .Fn ulog_logout
84 cannot be trusted, these functions require administrative privileges.
85 The
86 .Fn ulog_login_pseudo
87 and
88 .Fn ulog_logout_pseudo
89 functions spawn a privileged process to perform the actual logging.
90 .Sh SEE ALSO
91 .Xr getuid 2 ,
92 .Xr posix_openpt 2 ,
93 .Xr ptsname 3 ,
94 .Xr pututxline 3
95 .Sh HISTORY
96 These functions appeared in
97 .Fx 9.0 .