]> git.saurik.com Git - apple/libc.git/blame - gen/getlastlogx.3
Libc-498.tar.gz
[apple/libc.git] / gen / getlastlogx.3
CommitLineData
224c7076
A
1.\" $NetBSD: getlastlogx.3,v 1.1 2003/08/26 17:37:51 wiz Exp $
2.\"
3.\" Copyright (c) 2003 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Thomas Klausner.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\" notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\" notice, this list of conditions and the following disclaimer in the
16.\" documentation and/or other materials provided with the distribution.
17.\" 3. All advertising materials mentioning features or use of this software
18.\" must display the following acknowledgement:
19.\" This product includes software developed by the NetBSD
20.\" Foundation, Inc. and its contributors.
21.\" 4. Neither the name of The NetBSD Foundation nor the names of its
22.\" contributors may be used to endorse or promote products derived
23.\" from this software without specific prior written permission.
24.\"
25.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
26.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
27.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
29.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35.\" POSSIBILITY OF SUCH DAMAGE.
36.\"
37.Dd Dec 26, 2005
38.Dt GETLASTLOGX 3
39.Os
40.Sh NAME
41.Nm getlastlogx ,
42.Nm getlastlogxbyname ,
43.Nm getutmp ,
44.Nm getutmpx ,
45.Nm utmpxname
46.Nd user accounting database functions
47.Sh SYNOPSIS
48.In utmpx.h
49.Ft struct lastlogx *
50.Fn getlastlogx "uid_t uid" "struct lastlogx *ll"
51.Ft struct lastlogx *
52.Fn getlastlogxbyname "const char *name" "struct lastlogx *ll"
53.Ft void
54.Fn getutmp "const struct utmpx *ux" "struct utmp *u"
55.Ft void
56.Fn getutmpx "const struct utmp *u" "struct utmpx *ux"
57.Ft int
58.Fn utmpxname "const char *fname"
59.Sh DESCRIPTION
60The
61.Fn getlastlogx
62function looks up the entry for the user with user id
63.Fa uid
64and returns it in
65.Fa \&ll .
66If the provided
67.Fa \&ll
68is
69.Dv NULL ,
70the necessary space will be allocated by
71.Fn getlastlogx
72and should be
73.Fn free Ns d
74by the caller.
75The
76.Fn getlastlogxbyname
77function is similar to
78.Fn getlastlogx ,
79except the user name is passed.
80.Pp
81.Fn getutmp
82function fills out the entries in the struct utmp
83.Fa u
84with the data provided in the struct utmpx
85.Fa ux .
86.Fn getutmpx
87does the opposite, filling out the entries in the struct utmpx
88.Fa ux
89with the data provided in the struct utmp
90.Fa u ,
91and initializing all the unknown fields to 0.
92The sole exception is the
93.Fa ut_type
94field, which will be initialized to
95.Dv USER_PROCESS .
96.Pp
97A
98.Ft struct lastlogx
99is defined like this:
100.Bd -literal
101struct lastlogx {
102 struct timeval ll_tv; /* time entry was created */
103 char ll_line[_UTX_LINESIZE]; /* tty name */
104 char ll_host[_UTX_HOSTSIZE]; /* host name */
105};
106.Ed
107.Pp
108The
109.Fn utmpxname
110function sets the default
111.Xr utmpx 5
112database file name to
113.Fa fname .
114.Sh RETURN VALUES
115.Fn getlastlogx
116and
117.Fn getlastlogxbyname
118return the found entry on success, or
119.Dv NULL
120if it could not open the database, could not find an entry matching
121.Fa uid
122or
123.Fa name ,
124or could not allocate the necessary space (in case
125.Fa \&ll
126was
127.Dv NULL ) .
128.Pp
129.Fn utmpxname
130returns 1 on success, or 0 if the supplied file name was too long or
131did not end with
132.Sq x .
133.Sh SEE ALSO
134.Xr endutxent 3 ,
135.Xr utmpx 5
136.Sh HISTORY
137The functions
138.Fn getutmp ,
139.Fn getutmpx ,
140and
141.Fn utmpxname
142first appeared in
143.Tn Solaris .
144.Nm getlastlogx
145first appeared in
146.Nx 2.0 .